JP2008129800A - ソフトウエアの改竄検査装置及び方法、コンピュータプログラム - Google Patents
ソフトウエアの改竄検査装置及び方法、コンピュータプログラム Download PDFInfo
- Publication number
- JP2008129800A JP2008129800A JP2006313221A JP2006313221A JP2008129800A JP 2008129800 A JP2008129800 A JP 2008129800A JP 2006313221 A JP2006313221 A JP 2006313221A JP 2006313221 A JP2006313221 A JP 2006313221A JP 2008129800 A JP2008129800 A JP 2008129800A
- Authority
- JP
- Japan
- Prior art keywords
- inspection
- software
- processing
- architecture
- content
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Abstract
【解決手段】負荷監視部1551は、ソフトウエアの所定の処理単位毎に、アーキテクチャ情報ファイル1554の記録情報に基づいて推定した仮想処理時間と実処理時間とを比較し、実処理時間が仮想処理時間よりも十分短い場合に、検査部1552にエミュレーション中の検査を許容する。検査部1552は、ハッシュ管理部1553で管理している固有のハッシュ値を用いてソフトウエアの改竄検査を行う。
【選択図】図4
Description
また、特開2006−203564号公報に記載されているプログラム実行証明方法では、サーバ端末が、予めノード端末に送ったプログラムのハッシュ値と、ノード端末から送られたプログラム及びその実行結果のハッシュ値とを比較し、一致している場合にプログラムはノード端末において正常に実行されたと判定するようにしている。
ハッシュ値はソフトウエアに対応付けされた固定長の数値であり、少しでも改竄されているとハッシュ値は異なるものとなり、同一性の判定が容易である。改竄耐性を強化するために、ハッシュ値を暗号化したり、ハッシュ値の計算手法として「HMAC (Keyed-Hashing for Message Authentication)」を使う場合もある。HMACは、ハッシュ関数と秘密鍵とを用いてメッセージ認証を実現する手法である。
本発明は、このようなソフトウエアの属性に着目し、改竄検査のタイミングをソフトウエアの実行負荷に応じて少なくする改竄検査装置、改竄検査方法及びコンピュータプログラムを提供する。
ネットワーク配信システムの概要を図1に示す。本実施形態によるネットワーク配信システムでは、第2処理装置50で使用されるソフトウエアを、直接又はメモリデバイス60を介して、プログラムサーバ40に集める。ソフトウエアは、コンテンツデータを用いて、音を出す、画像/動画を表示する、表示場面を変化させる等の処理を行うための複数の処理プログラムと、処理プログラムの実行に際して必要となる音データ、画像データ等のコンテンツデータとが混在したものである。
まず、エミュレーションを可能にする第1処理装置10について説明する。第1処理装置10は、例えば図2に示されるように、メインバスN1に、CPUコア101、メインメモリ104、サブCPU111、サブメモリ112、GPU(graphical processor uinit)コア121、SPU(sound processor unit)コア131、メディアデコーダ141、DMAC(Direct Memory Access Controller)151が接続されており、さらに、DMAC152が接続されるサブバスN2に、RTC(Real Time Clock)152、タイマ153、セキュリティチップ154、エミュレータ155、メモリI/O156及び他のI/Oが接続される。VRAM122に描画された画像は、表示部(TFT)123が接続されている。
エミュレーションの元となる第2処理装置50は、例えば図3に示されるハードウエア構成のものである。図2に示した第1処理装置10とは、明らかに異なるアーキテクチャにより構成される。
次に、図2に示した第1処理装置10が有するエミュレータ155について、より詳細に説明する。本実施形態のエミュレータ155を含む第1処理装置10は、CPUコア101又はサブCPU111が、エミュレータ155に組み込まれているプログラムを実行することにより、メモリデバイス20に記録されているソフトウエアの改竄検査をエミュレーション中に行うことができる改竄検査装置として動作する。本実施形態では、第2処理装置50用のソフトウエアを第1処理装置10で使用するエミュレーション並びに改竄検査については、CPUコア101とサブCPU111の少なくとも一方が中心となって実行するものとして説明する。
このようにハッシュ関数及びハッシュ値を用いた検査を「ハッシュチェック」という。ハッシュチェックは、具体的には、以下のようにして行う。
すなわち、ある処理単位におけるソフトウエアに対するハッシュ値を、関数ファイル1556に格納されているハッシュ関数を用いて計算し、この計算したハッシュ値と、ハッシュ値ファイル1557に記録されているハッシュ値とを比較し、同一であれば、改竄がなされていないと判定する。ハッシュ値が同一でなかったときは改竄がなされているおそれがあるので、CPUコア101にアラーム(ALM)を出力して処理の中止等を促す。
エミュレーション中のハッシュチェックは、基本的には、ソフトウエアの読込が生じる際に行われる。例えば、第1処理装置10のアプリケーションからの要求によってエミュレータ155がファイル読込をエミュレートする際、メモリデバイス20から該当ファイル(処理プログラム又はコンテンツデータが記録されたファイル)を読み込み、これを、要求したアプリケーションに、「そのアプリケーションが読み込んだもの」として渡されるが、ハッシュチェックは、そのファイル読込時に行われる。
次に、上記のように構成される第1処理装置10による改竄検査方法の実施の形態例を説明する。図5は改竄検査方法の処理手順説明図であり、図6は、仮想処理の内容と実時間の内容の比較例となる時間関係の比較説明図である。図7は、改竄検査を強制的に行う場合の一例を示した図である。
(1)特定のハードウエアをソフトウエアでエミュレーションしている間は、ハッシュチェックのための間隔が長くなる。
(2)連続領域の読込が行われた場合、ハッシュチェックのための間隔が長くなる。逆に、シークした先頭セクタ付近では、高い確率でハッシュチェックが行われる。
(3)エミュレーションしている仮想処理時間と実処理時間の差分をみて、余裕があるときのみハッシュチェックが行われる。
このようにして、第1処理装置10のパフォーマンスを考慮した改竄検査が可能になる。
また、本実施形態では、エミュレーションの場合を例に挙げて説明したが、エミュレータ以外の一般的なソフトウエアについての改竄検査にも本発明を適用することができる。
また、本実施形態では、ハッシュチェックによって改竄の有無を検査する場合の例を示したが、暗号鍵/復号鍵その他のセキュリティデータを用いて改竄の有無を検査することも可能である。
Claims (10)
- 処理装置に読み込まれて使用されるソフトウエアを前記処理装置とは異なるアーキテクチャのもとでエミュレーションする実行手段と、
前記ソフトウエアに対する改竄の有無を検査する検査手段と、
前記処理装置のアーキテクチャの内容を表すアーキテクチャ情報を保持する保持手段と、
前記ソフトウエアの所定の処理単位毎に、前記保持手段に保持されている前記アーキテクチャ情報に基づいて推定した仮想処理の内容と前記実行手段における実処理の内容とを比較することにより、エミュレーション中の前記検査手段による検査を許容するかどうかを決定する負荷監視手段とを有する、
ソフトウエアの改竄検査装置。 - 前記ソフトウエアは、それ自体で流通可能な可搬性の記録媒体に記録された、前記実行手段が実行可能な少なくとも一つの処理プログラムとコンテンツデータとを含むものであり、
前記負荷監視手段は、前記仮想処理又は前記実処理の内容に関わらず、前記記録媒体から読み込まれるものが処理プログラムかコンテンツデータかによって異なる所定の確率で、前記検査を許容する、
請求項1記載の改竄検査装置。 - 前記負荷監視手段は、前記記録媒体からの読込動作が複数の処理単位にわたって継続するときは、前記コンテンツデータについて割り当てられた確率で、前記検査を許容する、
請求項2記載の改竄検査装置。 - 前記負荷監視手段は、前記実行手段がシークした先頭セクタでは、前記処理プログラムに割り当てられた確率で、前記検査を許容する、
請求項2記載の改竄検査装置。 - 前記負荷監視手段は、前記アーキテクチャ情報に基づいて当該処理単位の仮想処理時間を推定するとともに、推定した仮想処理時間と前記実行手段における実処理時間とを比較し、前記実処理時間が前記仮想処理時間よりも短いことを検出したときに、前記検査を許容する、
請求項1記載の改竄検査装置。 - 前記負荷監視手段は、前記仮想処理時間と前記実処理との差分の時間における前記検査を許容する、
請求項5記載の改竄検査装置。 - 前記検査手段は、自己用に個性化されたハッシュ値及びこのハッシュ値を導出するためのハッシュ関数を保持するとともに、前記ソフトウエアに前記ハッシュ関数を適用して当該ソフトウエアのハッシュ値を導出し、導出したハッシュ値と保持されているハッシュ値とを比較してその同一性の有無を判定することにより前記検査を行う、
請求項1乃至6のいずれかの項記載の改竄検査装置。 - それ自体で流通可能な可搬性の記録媒体に記録されているソフトウエアを実行する実行手段と、
前記ソフトウエアに対する改竄の有無を検査する検査手段と、
前記ソフトウエアの実行が予定される装置のアーキテクチャの内容を表すアーキテクチャ情報を保持する保持手段と、
前記ソフトウエアの所定の処理単位毎に、前記保持手段に保持されている前記アーキテクチャ情報に基づいて推定した仮想処理の内容と前記実行手段における実処理の内容とを比較することにより、前記ソフトウエアの実行環境での前記検査手段による検査を許容できるかどうかを決定する負荷監視手段とを有する、
ソフトウエアの改竄検査装置。 - 第2処理装置に読み込まれて使用されるソフトウエアを、前記第2処理装置とは異なるアーキテクチャの第1処理装置が電子的手段によって取得する過程と、
前記ソフトウエアを取得した第1処理装置が、当該ソフトウエアのエミュレーションを自己のアーキテクチャのもとで実行するとともに、前記ソフトウエアの所定の処理単位毎に、予め保持されている前記第2処理装置のアーキテクチャの内容を表すアーキテクチャ情報に基づいて推定した仮想処理の内容と前記エミュレーションの実処理の内容とを比較することにより、エミュレーション中の検査を許容可能かどうかを決定し、許容できるときに、前記ソフトウエアに対する改竄の有無を検査する過程とを含む、
ソフトウエアの改竄検査方法。 - コンピュータを、処理装置に読み込まれて使用されるソフトウエアを前記処理装置とは異なるアーキテクチャのもとでエミュレーションする実行手段、
前記ソフトウエアに対する改竄の有無を検査する検査手段、
前記処理装置のアーキテクチャの内容を表すアーキテクチャ情報を保持する保持手段、
前記ソフトウエアの所定の処理単位毎に、前記保持手段に保持されている前記アーキテクチャ情報に基づいて推定した仮想処理の内容と前記実行手段における実処理の内容とを比較することにより、エミュレーション中の前記検査手段による検査を許容するかどうかを決定する負荷監視手段、として機能させるためのコンピュータプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006313221A JP4896677B2 (ja) | 2006-11-20 | 2006-11-20 | ソフトウエアの改竄検査装置及び方法、コンピュータプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006313221A JP4896677B2 (ja) | 2006-11-20 | 2006-11-20 | ソフトウエアの改竄検査装置及び方法、コンピュータプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008129800A true JP2008129800A (ja) | 2008-06-05 |
JP4896677B2 JP4896677B2 (ja) | 2012-03-14 |
Family
ID=39555558
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006313221A Active JP4896677B2 (ja) | 2006-11-20 | 2006-11-20 | ソフトウエアの改竄検査装置及び方法、コンピュータプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4896677B2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010009323A (ja) * | 2008-06-26 | 2010-01-14 | Ntt Docomo Inc | イメージ検査装置、os装置及びイメージ検査方法 |
JP2020149605A (ja) * | 2019-03-15 | 2020-09-17 | 日本電気株式会社 | 情報処理装置、情報処理方法、情報処理プログラム、及び情報処理システム |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001265217A (ja) * | 2000-03-17 | 2001-09-28 | Cti Co Ltd | デジタルコンテンツの改ざん監視装置、改ざん監視方法及び記録媒体 |
JP2003288224A (ja) * | 2002-03-28 | 2003-10-10 | Fujitsu Ltd | 処理装置、サーバ、およびプログラム |
JP2004318449A (ja) * | 2003-04-16 | 2004-11-11 | Hitachi Ltd | プログラム実行速度シュミレーション方法 |
JP2006018815A (ja) * | 2004-06-30 | 2006-01-19 | Microsoft Corp | エミュレートされたコンピューティング環境を用いてオペレーティングシステムのライセンス収入を徴収するためのシステムおよび方法 |
JP2006053787A (ja) * | 2004-08-12 | 2006-02-23 | Ntt Docomo Inc | プログラム実行装置及びプログラム実行方法 |
JP2006178936A (ja) * | 2004-12-21 | 2006-07-06 | Microsoft Corp | 仮想マシンまたは強化オペレーティングシステムなどにおけるコンピュータのセキュリティ管理 |
-
2006
- 2006-11-20 JP JP2006313221A patent/JP4896677B2/ja active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001265217A (ja) * | 2000-03-17 | 2001-09-28 | Cti Co Ltd | デジタルコンテンツの改ざん監視装置、改ざん監視方法及び記録媒体 |
JP2003288224A (ja) * | 2002-03-28 | 2003-10-10 | Fujitsu Ltd | 処理装置、サーバ、およびプログラム |
JP2004318449A (ja) * | 2003-04-16 | 2004-11-11 | Hitachi Ltd | プログラム実行速度シュミレーション方法 |
JP2006018815A (ja) * | 2004-06-30 | 2006-01-19 | Microsoft Corp | エミュレートされたコンピューティング環境を用いてオペレーティングシステムのライセンス収入を徴収するためのシステムおよび方法 |
JP2006053787A (ja) * | 2004-08-12 | 2006-02-23 | Ntt Docomo Inc | プログラム実行装置及びプログラム実行方法 |
JP2006178936A (ja) * | 2004-12-21 | 2006-07-06 | Microsoft Corp | 仮想マシンまたは強化オペレーティングシステムなどにおけるコンピュータのセキュリティ管理 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010009323A (ja) * | 2008-06-26 | 2010-01-14 | Ntt Docomo Inc | イメージ検査装置、os装置及びイメージ検査方法 |
JP2020149605A (ja) * | 2019-03-15 | 2020-09-17 | 日本電気株式会社 | 情報処理装置、情報処理方法、情報処理プログラム、及び情報処理システム |
JP7218630B2 (ja) | 2019-03-15 | 2023-02-07 | 日本電気株式会社 | 情報処理装置、情報処理方法、情報処理プログラム、及び情報処理システム |
Also Published As
Publication number | Publication date |
---|---|
JP4896677B2 (ja) | 2012-03-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102693379B (zh) | 保护操作系统配置值 | |
JP4522372B2 (ja) | プロセッサと外部のデバイスとの間にセキュアセッションを実現する方法および装置 | |
RU2589348C2 (ru) | Энтропийные пулы для виртуальных машин | |
US8281362B2 (en) | Verification method, verification program, recording medium, information processor, and integrated circuit | |
WO2018058811A1 (zh) | 虚拟现实场景加载方法及设备 | |
JP2007034875A (ja) | ペリフェラルの使用管理方法、電子システム及びその構成装置 | |
JP2013534001A (ja) | 仮想化を用いた動画コンテンツの保護 | |
CN108664774A (zh) | 一种及时生成水印的方法、装置、存储介质及系统 | |
CN105740661B (zh) | 一种保护应用程序的方法和装置 | |
JP4896677B2 (ja) | ソフトウエアの改竄検査装置及び方法、コンピュータプログラム | |
JP2010039891A (ja) | 情報処理装置、プログラム実行方法、プログラムおよび情報処理システム | |
EP2541456B1 (en) | Method for protecting the digital contents of a solid state memory | |
JP4993146B2 (ja) | フレームバッファに記憶された望まれないコンテンツの表示を阻止するためのシステム、方法、及びコンピュータプログラム | |
KR20120110660A (ko) | 메모리에서 실행되는 컴퓨터 프로그램의 변조 탐지 방법 | |
TWI811560B (zh) | 資源整合系統及資源整合方法 | |
CN116305221B (zh) | 图像处理芯片系统的加密方法及相关装置 | |
CN103699535B (zh) | 网页加载方法及终端设备 | |
CN102279913A (zh) | 内容保护系统 | |
JP4553660B2 (ja) | プログラム実行装置 | |
JP2018526717A (ja) | イメージ制作中のコンテンツテスト | |
JP2010020561A (ja) | 情報処理装置、画像処理装置、ソフトウェア動作テスト方法、ソフトウェア動作テストプログラム、及びそのプログラムを記録した記録媒体 | |
JP5356583B2 (ja) | 半導体記憶装置 | |
CN117332412B (zh) | 一种针对数据安全系统的检测方法、装置及电子设备 | |
CN115296821B (zh) | 一种用于数字藏品管理的数据处理系统 | |
JP2008299930A (ja) | 半導体記憶装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090827 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20100714 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20100818 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20101125 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20110111 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20111018 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20111019 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20111110 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20111220 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20111221 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 4896677 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150106 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |