JP4956292B2 - 情報セキュリティ装置およびカウンタ制御方法 - Google Patents
情報セキュリティ装置およびカウンタ制御方法 Download PDFInfo
- Publication number
- JP4956292B2 JP4956292B2 JP2007166321A JP2007166321A JP4956292B2 JP 4956292 B2 JP4956292 B2 JP 4956292B2 JP 2007166321 A JP2007166321 A JP 2007166321A JP 2007166321 A JP2007166321 A JP 2007166321A JP 4956292 B2 JP4956292 B2 JP 4956292B2
- Authority
- JP
- Japan
- Prior art keywords
- counter
- shared
- program
- information
- group
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3271—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
- H04L9/3273—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response for mutual authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/60—Digital content management, e.g. content distribution
- H04L2209/603—Digital right managament [DRM]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Description
これを背景として、セキュアなコンピュータプラットフォームを開発、普及させることを目的として、Trusted Computing Group(TCG)が設立された。TCGでは、Trusted Platform Module(TPM)と呼ばれるセキュリティコアモジュールを利用し、安全な端末環境を実現している。安全な端末環境を実現するためのTCGの一機能として、非特許文献1は、TPM内で管理されているMonotonic Counterと呼ばれるセキュアなカウンタ仕様がある。このカウンタは、端末内のプログラムや証明書を、古いバージョンのプログラムや証明書に書き変えるロールバック攻撃を防ぐために利用される。
また、特許文献1では、親カウンタと複数の子カウンタを利用したセキュアカウンタの実装方法が開示されている。
TPM Main Part1 Design Principles Specification Version1.2 Revision94 「Virtual Monotonic Counters andCount−Limited Objects using a TPM without Trusted OS(Extended Version)」、Luis F.G.Sarmenta(2006)
そこで、本発明は従来の課題を解決するもので、セキュアモリの使用量を抑えつつ、複数のセキュアモジュール間でツリー構造のカウンタを共有する方法と、共有したセキュアカウンタに対して柔軟な設定が可能なアクセス制御方法を提供することを目的とする。
この構成によると、ツリー構造の中間のノードを共有するだけで、複数のカウンタの追加や削除や無効化といった設定が柔軟になる。さらには、各共有カウンタが、どのプログラムと共有化されているかの管理が容易になる。
この構成によると、カウンタを利用可能なプログラムをプログラム識別情報で管理することが可能となる。
この構成によると、共有カウンタを利用可能なプログラムをプログラム識別情報で管理することが可能となり、共有カウンタへアクセス可能なプログラムの追加や削除やアクセス制限の設定がより柔軟にできる。
また、本発明に係る情報セキュリティ装置は、プログラムを更新するための更新手段を備え、更新手段が、共有カウンタ管理テーブルのアクセス許可情報が不可に設定されているプログラム識別情報に対応するプログラムの更新処理を行うことを特徴とする。
また、本発明に係る情報セキュリティ装置は、セキュアモジュールを備え、セキュアモジュールが、測定手段と、検証手段と、カウンタ制御手段と前記セキュアメモリを含み、耐タンパ化されていることを特徴とする。
また、本発明に係る情報セキュリティ装置は、少なくとも2つ以上の前記セキュアモジュールを含むことを特徴とする。
この構成によると、複数のセキュアモジュール間での共有カウンタを構築することが可能となる。さらには、共有カウンタを利用して、セキュアモジュール間で共有して利用される共有データのバックアップ・リストア攻撃を防ぐことが可能となる。
この構成によると、共有データをより安全に管理することが可能となる。具体的には、DRMアプリケーションにおける権利管理において、悪意のあるユーザが権利消費前の権利をバックアップしておき、権利を消費した後にバックアップしておいた権利消費前の権利をリストアすることで、永久に権利消費が行われないようなバックアップ・リストア攻撃を防止することが可能となる。
この構成によると、本発明に係る情報セキュリティ装置は、安全な実行環境を構築することができ、カウンタの制御もより安全に実行することが可能となる、
また、本発明に係る情報セキュリティ装置は、セキュアモジュールが、Trusted Computing Group(TCG)で仕様化しているMTMで実現されていることを特徴とする。
また、本発明に係るカウンタを制御方法は、少なくとも1つ以上のカウンタから構成される第1のカウンタ群と、少なくとも1つ以上のカウンタから構成される第2のカウンタ群をカウンタ格納手段に格納するステップと、カウンタ格納手段から、第1のカウンタ群、または前記第2のカウンタ群に対するアクセスするステップと、第1のカウンタ群を構成している第1のカウンタと、第2のカウンタ群を構成している第2のカウンタを共有するステップと、共有ステップにて共有したカウンタを読み出すリードステップと、共有ステップにて共有したカウンタの値を増加するインクリメントステップと、共有カウンタへアクセスするプログラムの完全性を検証するステップと、完全性検証ステップの結果、プログラムが改竄されていると判定された場合に前記プログラムが共有カウンタをアクセスを許可とするステップと、完全性検証ステップの結果、プログラムが改竄されていると判定された場合に前記プログラムが共有カウンタをアクセスを不許可とするステップとを含むことを特徴とする。
(実施の形態1)
本発明の実施の形態について、以下に説明する
<端末の構成>
図1は、本実施の形態1における端末10の全体構成図である。
同図に示すように、情報セキュリティ装置10は、CPU20、RAM30、プログラム格納手段40、セキュアモジュール1(50)、セキュアモジュール2(60)、カウンタ格納手段70、共有データ格納手段80とから構成され、バス90を介して互いに接続されている。
RAM30は、揮発性の記憶媒体であって、プログラム格納手段40に格納されているプログラムをロードし、記憶する。さらには、CPU20にて実行されるプログラムのワークメモリとして一時的なデータを記憶する。
セキュアモジュール1(50)は、アプリケーションApp1(41)から利用され、検証手段51、測定手段52、カウンタ制御手段53、暗号手段54、セキュアメモリ55、共有データアクセス手段56から構成され、耐タンパ実装がされているモジュールである。
セキュアモジュール1(50)内の測定手段52は、カウンタ群1(71)の完全性を検証するために利用するハッシュ値を算出する手段であり、具体的には、SHA(Secure Hash Algorithm)1アルゴリズムを用いる。
セキュアモジュール1(50)内のカウンタ制御手段53は、検証手段51の結果に応じて、カウンタ群1(71)のリード処理、インクリメント処理を制御し、それらに必要な情報をカウンタ管理情報に記憶している。ここで、リード処理とはカウンタの値を読み出す処理を、インクリメント処理とはカウンタの値を増加させる処理をいう。
共有データアクセス手段は、App1(41)が共有データへアクセスする際に利用する手段であり、共有データ格納手段80に対するリード・ライト処理や、暗号手段54を利用して共有データの暗復号処理を行う。
セキュアモジュール2(60)内のセキュアメモリ65は、不揮発性で、データの書込みおよび消去可能な記録媒体であり、カウンタ群2の認証ハッシュ値を格納する。認証ハッシュ値は、カウンタ群2の完全性を検証するために利用するハッシュ値である。この認証ハッシュ値の生成方法については、後述するので、ここでは説明を省略する。
セキュアモジュール2(60)内の検証手段61は、測定手段62によって算出されたカウンタ群2(72)のハッシュ値と、認証されたカウンタ群2(72)のハッシュ値を比較し、比較結果をカウンタ制御手段63に通知する。
共有データアクセス手段は、App2(42)が共有データへアクセスする際に利用する手段であり、共有データ格納手段80に対するリード・ライト処理や、共有データの暗号手段64を利用して暗復号処理を行う。
なお、暗号手段(54、64)は、AES暗号、RSA暗号、楕円暗号に限定されるわけではなく、共通鍵暗号方式、公開鍵暗号方式として一般に利用されている暗号方式であればよい。
カウンタ格納手段70は、App1(41)がセキュアモジュール1(50)を介して利用するカウンタ群1(71)と、App2がセキュアモジュール2(60)を介して利用するカウンタ群2(72)とを格納する手段であり、不揮発性で、データ書込み可能な記録媒体である。なお、カウンタ群1(71)とカウンタ群(72)が、それぞれセキュアモジュール1(50)とセキュアモジュール2(50)から利用されるときには、RAM(30)にロードしてから利用してもよい。その場合、カウンタのインクリメント処理等により、RAM(30)上でカウンタ群1(71)、カウンタ群2(72)が更新されれば、更新結果をカウンタ群格納手段70へ反映する。
共有データ格納手段80は、App1(41)とApp2(42)の両アプリケーションが利用する共有データを格納する手段である。共有データ格納手段80へのアクセスは、App1(41)からはセキュアモジュール1(50)の共有データアクセス手段56を介して、App2(42)からはセキュアモジュール2(60)の共有データアクセス手段66を介してアクセスされる。本実施の形態1では、電子マネーや、DRM(Digital Rights Managements)での権利情報などの価値のある情報(以下、バリューと呼ぶ)をセキュアに扱うべき共有データ(セキュアデータ)とし、App1(41)とApp2(42)とが共にバリューを利用して、所望のアプリケーションサービスを実現するものとする。一般にこのようなセキュアデータを管理する場合、セキュアデータをバックアップして、バックアップしておいたデータを端末のメモリにリストア(再書込み)して古いバリューを使い、サービスを不正に受けるというバックアップ・リストア攻撃を防ぐ必要がある。そこで本実施の形態では、共有データを時変鍵で暗号化して管理するものとする。時変鍵とは、時間が経過するごとに、あるタイミングによって鍵の値が変化するものである。時変鍵については、後述する。
図2は、App1(41)がセキュアモジュール1(50)を介して利用するカウンタ群1(71)のツリー構造を示している。
ここで、ルートノードとは親ノードを持たないノードであり、ツリー構造の頂点に位置する。また、中間ノードとは、親ノードと子ノードを持つノードである。また、リーフノードとは、親ノードのみを持つノードである。
なお、本実施の形態では、カウンタ群は、二分木のツリー構造をとっているが、これに限定されるわけではなく、ツリー構造を有していればよい。
また、本実施の形態では、カウンタ群をツリー構造で実現しているが、ツリー構造に限定されるわけではなく、例えば、カウンタ値だけを持つ配列であってもよい。
図3は、カウンタ群1(71)のリード処理、インクリメント処理を制御するために、セキュアモジュール1(50)内のカウンタ制御手段53が保持しているカウンタ管理テーブル300である。カウンタ管理テーブ300は、ツリーのルートアドレス301、ツリー構造情報(N分木)302、カウンタ個数303、カウンタ値アドレス管理テーブル304から構成される。カウンタアドレス管理テーブル306は、さらにカウンタID306と、カウンタアドレス307からなる。図3は、図2に示したカウンタ群1(71)のカウンタ管理テーブルの例であり、ツリーのルートアドレス301が「0x70004000」、ツリー構造情報(N分木)302が、2分木を示す「2」、カウンタ個数303が「4」、カウンタID306「C100」がアドレス「0x8000000」に、「C101」がアドレス「0x8000004」に、「C102」がアドレス「0x8000008」に、「C103」がアドレス「0x800000C」に格納されていることを示している。カウンタ管理テーブル305を参照することで、カウンタ群1(71)のリード処理、インクリメント処理が可能となる。
続いて、カウンタ管理テーブル(300、306)を参照して、App1(41)カウンタ群1(71)のカウンタのリード処理について図4を用いて説明する。図4は、カウンタのリード処理のステップ処理である。
まず、App1(41)が、セキュアモジュール1(50)のカウンタ制御手段53に対して、カウンタのリード要求を出す。リード要求を受け付けたカウンタ制御手段53は、リード対象のカウンタ値に対して、測定手段52へハッシュ値計算を要求する(ステップS401)。具体的には、App1(41)がリード対象となるカウンタIDを指定して、カウンタ制御手段53に対してカウンタのリード要求を出す。
次に、測定手段52は、前のステップにて計算したハッシュ値とその兄弟にあたるハッシュ値とを連結した値のハッシュ値を生成し、ツリー構造のノード同士が双方向リストであることを利用し、1つ上の階層のノードへ参照先を移す(ステップS403)。
ステップS405の比較判定の結果が、YES(算出ハッシュ値と認証ハッシュ値が等しい)と判断されたなら、カウンタ制御手段は、カウンタをリードする(ステップS407)。
<カウンタインクリメント処理>
続いて、図5、図6を用いて、カウンタ管理テーブル300を参照して、App1(41)カウンタ群1(71)のカウンタのインクリメント処理について説明する。図5のステップS501からS505までは、図4のステップS401からS405と処理が同じであるため説明を省略する。異なるのは、ステップS505の判定の結果が、図4では、リードの許可/不許可であったのに対し、図5では、インクリメント許可/不許可である点のみである。インクリメントが許可されると、ステップS507にてカウンタのインクリメント処理がされる。
まず、カウンタ制御手段53は、図5のステップS507にてインクリメントされたカウンタ値に対して、測定手段52へハッシュ値計算を要求する(ステップS508)。
次に、測定手段52は、前のステップにて計算したハッシュ値とその兄弟にあたるハッシュ値とを連結した値のハッシュ値を生成し、ツリー構造のノード同士が双方向リストであることを利用し、1つ上の階層のノードへ参照先を移す(ステップS510)。
<共有カウンタ作成>
図7は、セキュアモジュール1(50)で管理されている、App1(41)が利用するカウンタ群1(71)と、セキュアモジュール2(60)で管理されているApp2(42)が利用するカウンタ群2(72)との間で、App1(41)とApp2(42)間でカウンタを共有するフロー図である。
次に、App2(42)が、App1(41)を認証する(ステップS702)。認証方法は、予め各Appに対して正当なAppであることを証明した証明書を関連付けておき、App2(42)がApp1(41)の証明書を検証する方法であるとする。具体的にはPKI(Public Key Infrastructure)で定めれた方法を用いるため、説明は省略する。なお、アプリケーション同士を認証しあう方法であれば特にこれに限定されない。
一方、ステップS703の検証の結果、App1(41)が正当でないと判断された場合は、エラー結果をApp2(42)に返し、カウンタ共有処理を終了する。
App1(41)が正当であると判断された場合、セキュアモジュール2(60)のカウンタ制御手段63は、カウンタ群2(72)に存在するカウンタを、App1(41)と共有するカウンタとして選択し、選択されたカウンタ情報(カウンタID/カウンタアドレス)に署名をつける(ステップS704)。具体的には、セキュアモジュール2(60)は、セキュアモジュール2(60)用に生成されたRSA鍵ペアの秘密鍵を有しており、暗号手段64を利用しRSA署名生成する。なお、署名方法は、これに限定されず、ディジタル署名方式であれば他の方式でもよい。
次に、App1(41)は、署名が付与された共有カウンタ情報の検証をセキュアモジュール1(50)に依頼する(ステップS707)。
次に、セキュアモジュール1(50)内のカウンタ制御手段53は、暗号手段54を利用して、署名検証する(ステップS708)。具体的には、セキュアモジュール1(50)は、セキュアモジュール2(60)用に生成されたRSA鍵ペアの公開鍵を有しており、暗号手段54を利用しRSA署名生成する。なお、署名方法は、これに限定されず、、ディジタル署名方式で他の方式でもよい。
署名が正しいと判断された場合、セキュアモジュール1(50)のカウンタ制御手段53が、カウンタ制御手段53が管理しているカウンタ管理テーブル300に共有カウンタ情報を設定する。これにより、カウンタ群1(71)を構成するツリー構造に共有カウンタがノードとして追加される。さらに、カウンタ群1(71)は、共有カウンタがノードとして追加されたので、カウンタ群1のツリー構造の中間ノードとルートノードのハッシュ値を再計算する。再計算されたルートノードのハッシュ値は、セキュアメモリ55に、カウンタ群1(71)の認証ハッシュ値として格納される(ステップS710)。
最後に、セキュアモジュール2(60)のカウンタ制御手段63が、カウンタ制御手段63が管理しているカウンタ管理テーブル300に共有カウンタ情報を設定する(ステップS714)。
<共有カウンタを有するカウンタ群ツリー>
図8は、カウンタ群1(71)とカウンタ群2(72)の間で、複数のカウンタを共有したツリー構造を示した例である。
この図の場合は、App1(41)が利用し、セキュアモジュール1(50)で管理されるカウンタ群1(71)は、カウンタ(C100、C101、C102、C103)と、中間ノード(h100、h101、h102、h103、h10、h11)と、ルートノード(h1)から構成されるツリー構造となる。一方、App2(42)が利用し、セキュアモジュール2(60)で管理されるカウンタ群2(72)は、カウンタ(C102、C103、C202、C203)と、中間ノードであるハッシュ値(h102、h103、h202、h203、h11、h21)と、ルートのハッシュ値(h2)からなるツリー構造となる。共有カウンタ(800)は、C102とC103である。
図9は、図8の場合の共有カウンタを、セキュアモジュール2(60)のカウンタ制御手段300が管理する共有カウンタテーブルを示している。
共有カウンタテーブル900は、ノードID901、ノードアドレス902、共有カウンタ利用アプリID903からなる。ノードID901は、カウンタ群の各ノードを識別情報である。ノードアドレス902は、カウンタ群のノードがメモリ上のどこに記憶されているかを示すアドレス情報である。また、共有カウンタ利用アプリID903は、ノードID901が示すノードに対する利用可能なアプリケーションの識別情報である。
図9(a)は、共有カウンタである「C102」と「C103」が共有カウンタ管理テーブル900として登録されている例である。この場合、共有カウンタC102が、アドレス「0x80000000」に存在し、共有カウンタC102が、アドレス「0x80000004」に存在し、それらは、App1(41)とApp2(42)で共有されていることを示している。図9(a)のようなデータ構造を用いて管理すると、各カウンタごとにそのカウンタを共有するアプリケーションを指定できるので、きめ細かな共有の制御ができる。
図8、図9では、2つのカウンタ群との間で、共有する例を説明したが、2つのカウンタ群に限定されることなく、複数のカウンタ群で共有してもよい。
図10は、3つのカウンタ群であるカウンタ群1(1012)、カウンタ群2(1022)、カウンタ群3(1032)間でカウンタを共有する例を示している。
カウンタ群1(1012)は、カウンタ(C100、C101、SC100、SC101)と中間ノード(N100、N101、SN100、SN101)とルートノード(N1)からなるツリー構造を有している。
また、カウンタ群3(1032)は、カウンタ(SC100、SC101、SC110、SC111、C300、C301)と中間ノード(SN100、SN101、SN110、SN111、N300、N301、SN10、SN11、N30)とルートノード(N3)からなるツリー構造を有している。
共有カウンタ群1040は、SN10,SN100、SN101、SC100、SC101からなるツリーであって、App1(1010)、App2(1020)、App3(1030)間で共有されるカウンタ群である。
<セキュアモジュール1,2,3の共有カウンタテーブル>
図11は、図10に示した共有カウンタを、各セキュアモジュール(1011、1012、1032)がどのような共有カウンタ管理テーブルで管理するかを示した図である。
なお、本実施の形態では、共有カウンタを利用するアプリケーションIDを利用して、
共有カウンタの管理を行っているが、これに限定されない。例えば、セキュアモジュールに対してセキュアモジュールの識別情報であるセキュアモジュールIDを利用して共有カウンタを管理してもよい。
また、本実施の形態では、カウンタ群格納手段に格納するカウンタ群を、平文の状態でおいているが、これに限定されるわけではない。例えば、図示していないが、各セキュアモジュールに対して、公開鍵暗号の鍵ペアを生成し、各セキュアモジュールが管理しているカウンタ群に対して、公開鍵で署名した形で保存してもよい。また署名でなく、AES暗号などの共通鍵暗号方式で暗号化して保存するようにしてもよい。さらには、カウンタ群のツリー構造におけるリーフノードであるカウンタ値に対してだけ、署名を付与してもよく、また、カウンタ群のツリー構造におけるリーフノードであるカウンタ値に対してだけ、暗号化してもよい。このようにすることで、カウンタ群に対する改竄をより困難にすることが可能となる。具体的には、セキュアモジュールがTPMで実現されているならば、非特許文献2で開示している方法を利用してもよい。詳細は、非特許文献2に記載されているので、説明を省略する。
<マルチステークホルダーモデルにおける共有データ利用サービスシステム>
続いて、共有カウンタを利用して、共有データのバックアップ・リストア攻撃を防ぐ実装方法について説明する。ここで、バックアップ・リストア攻撃とは、ある時点のデータをバックアップしておき、そのデータを再度メモリに書き戻して不正を行う攻撃である。バックアップ・リストア攻撃の対象となる具体的なデータとして、電子マネーのような価値のある情報(以降、バリューと呼ぶ)がある。特に、プリペイド型電子マネーは、ユーザが事前に現金を支払い、支払った金額に相当する情報が、バリューとして端末に書き込まれる。ユーザは、このバリューを消費することで、特定の商品やサービスを購入することが可能となる。バックアップ・リストア攻撃とは、消費前のバリューのデータをバックアップしておき、端末内のバリューを消費して特定の商品やサービスを購入した後、消費したバリューを復活させるために、バックアップしておいたバリューを再度、端末内に書き込む攻撃である。このような処理を繰り返すことで、不正ユーザは、永続的にバリューを使い続けることが可能になってしまう。また、電子マネーのようなバリューだけでなく、音楽コンテンツや映像コンテンツに対する再生回数や再生期限などの権利情報も同様にバックアップ・リストア攻撃の対象となる。
端末1200は、ネットワーク1260経由でサービス1提供サーバー1240と、サービス2提供サーバー1250に接続する。
端末1200は、サービス1アプリ1211とサービス2アプリ1221を有し、両アプリケーションは、共有データ格納手段1230に記憶されているバリュー1231を消費し、サービス1提供サーバー1240とサービス2提供サーバー1250からサービスを受ける。
本実施の形態では、共有データを時変鍵で暗号化することで、バックアップ・リストア攻撃に対処する。ここで時変鍵とは、時間の経過するごとに鍵の値が変化する暗号鍵を指す。以下、時変鍵の生成および利用方法について説明する。
図13は、時変鍵を利用するための準備の処理を示したフローチャートである。
次に、ステップS1301の相互認証の結果を判定する(ステップS1302)。
相互認証の結果が「認証NG」であれば、時変鍵準備処理エラーとし、終了する。
一方、相互認証結果が「認証OK」であれば、ステップS1303へ処理を移す。
なお、時変鍵生成用の共有鍵の生成およびセキュアモジュールへの時変鍵生成用の共有鍵のセキュアメモリへのセット処理は、共有カウンタを利用するアプリケーション間で、一度行われれば良い。また、これに限定されることなく、共有データにアクセスする度に、毎回行っても良い。
<時変鍵を用いた共有データの暗復号処理>
続いて、図14と図15を用いて、時変鍵による共有データの暗復号処理について説明する。
まず、サービス1アプリ1211が、セキュアモジュール1(1212)に対して共有データ暗号化要求をする(ステップS1401)。
次に、セキュアモジュール1(1212)が、共有カウンタリード処理をする(ステップS1402)。カウンタリード処理は、図4で説明した処理であるので、説明を省略する。
次に、暗号化対象の共有データをリードする(ステップS1404、S1405)。
次に、リードした共有データを、ステップS1403で生成した時変鍵1で暗号化する(ステップS1406)。
サービスアプリ1(1211)は、書き込み完了通知(ステップS1408、S1409)を受信し、共有データの暗号化処理は終了する。
続いて、ステップS1410からS1424にて、時変鍵1で暗号化された共有データの復号ステップについて説明する。
次に、セキュアモジュール2(1222)が、共有カウンタリード処理をする(ステップS1411)。カウンタリード処理は、図4で説明した処理であるので、説明を省略する。
次に、復号対象の共有データを読み込み(ステップS1413、S1414)、ステップS1412で生成した時変鍵1で共有データを復号する(ステップS1415)。
次に、共有カウンタをインクリメントする(ステップS1417)。共有カウンタのインクリメント処理は、図5、6で説明した処理と同じであるので、説明を省略する。
次に、ステップS1418で生成した時変鍵2で、更新された共有データを暗号化する(ステップS1419)。
次に、サービス2アプリ1221は、書き込み完了通知を受け取る(ステップS1421、S1422)。
次に、サービス2アプリ1221は、セキュアモジュール2(1222)が管理している共有カウンタ管理テーブルのアプリIDを参照することで、インクリメントした共有カウンタを利用している共有アプリを特定し、その共有アプリに共有カウンタを更新したことを通知する。ここでは、サービス2アプリ1221が、サービス1アプリ1211に対して、共有カウンタを更新したことを通知する(ステップS1423)。
セキュアモジュール1(1212)が管理する共有カウンタ値以外のノードは、共有カウンタがインクリメントされる前の情報となっているので、セキュアモジュール1(1212)が管理するツリー構造を有するカウンタ群の各ノードの更新処理と、認証ハッシュ値の更新処理を行う(ステップS1425)。
なお、本実施の形態では、共有データを電子マネーのようなバリューとしたが、これに限定されるものでなく、音楽や映像などのデジタルコンテンツの権利情報、住所録、個人情報などのプライバシー情報なども考えられる。
(実施の形態2)
本実施の形態2では、ステークホルダーのアプリケーションの改竄検出時や更新時の共有カウンタのアクセス制御方法について説明する
<更新システム>
図16は、端末1600内のステークホルダーのアプリケーションを更新するための更新システムを示したものである。
各ステークホルダーのアプリケーションには、アプリケーション識別子やバージョンが関連づけられており、端末1600は、端末内のステークホルダー環境情報(アプリケーション識別子やバージョン情報)を、更新サーバーへ通知し、適切な更新プログラムをダウンロードする。
<端末の全体構成>
図17は、実施の形態2における端末1600の全体構成図である。端末1600の構成要素としては、実施の形態1の図1で説明したものとほとんど同じであるので、図1と比べて新規な構成要素のみについて説明する。
通信I/F1791は、端末1600と外部の端末とのデータの送受信を行うインターフェースである。本実施の形態では、通信I/F1719を通して、更新サーバー1601とのデータの送受信を行う。
<共有カウンタのアクセス可否設定>
続いて、図18を用いてAppの改竄チェック処理と共有カウンタのアクセス可否設定処理について説明する。
次に、セキュアモジュールの検証手段が、セキュアメモリ内の認証ハッシュ値と、ステップS1801で算出したハッシュ値を比較して、改竄チェックを行う(ステップS1802)。
このように、改竄チェック後に、共有カウンタへのアクセス許可/不許可設定を与えることで、改竄のあった不正なAppからの共有カウンタのアクセスを防止することが可能となる。また、改竄チェックのタイミングについては、端末起動(ブート)時であってもよいし、実行時に定期的なタイミングや、特定の処理をトリガーにして改竄チェックを行ってもよい。
図19は、セキュアモジュールがAppの改竄チェック後の共有カウンタテーブルの例である。具体的には、共有カウンタが実施の形態1の図8の状態で、セキュアモジュール2(1760)が、図18のフローに基づきApp2(1742)の改竄チェックを行い、App2(1742)が改竄されていると判定された後のカウンタ制御手段1663が管理している共有カウンタテーブルを表している。共有カウンタ管理テーブル(1910、1920)は、図9と同じ構成要素については説明を省略する。図19では、アクセス許可情報(1914、1924)が新項目として追加されている。
図19(a)は、図9(a)に対応しており、App2(1742)の改竄チェックの結果、App2(1742)が改竄されていると判定され、App2(1742)が共有カウンタ「C102」「C103」へのアクセスが禁止されている状態を示している。図19(b)は、図9(b)に対応しており、App2(1742)の改竄チェックの結果、App2(1742)が改竄されていると判定され、App2(1742)が共有カウンタ「C102」「C103」へのアクセスが禁止されている状態を示している。
図20は、更新手段1790によるアプリケーションのネットワーク経由による更新フロー図である。
まず、更新手段1790が、セキュアモジュールに対して更新要否の確認を通知する(ステップS2001)。
次に、更新サーバー1601は、受信したアプリIDに対応する更新プログラムと、その更新プログラムの証明書を端末1600に送信する(ステップS2007)。ここで証明書は図示していないが、証明書には、更新プログラムのハッシュ値を含み、更新プログラムの完全性を検証する際に利用する。
次に、更新手段1790は、セキュアジュールに、受信した証明書をセキュアメモリ格納するように要求する(ステップS2009)。
次に、セキュアモジュールは、証明書をセキュアメモリに格納する(ステップS2009)。
以上のフローにより、セキュアモジュールを利用するアプリケーションを、ネットワーク経由で更新することが可能となる。
なお、本実施の形態では、共有カウンタ管理テーブル内のアクセス許可情報(1914、1924)にアクセス不許可となっているアプリケーションを参照したことを契機に、ネットワーク経由で更新サーバー1601に対して更新プログラム1602のダウンロード要求を出しているが、更新プログラム1602のダウンロード要求のタイミングは、これに限定されない。更新サーバー1601からメッセージの受信時や、端末起動時であってもよい。また、アプリケーション実行時に、定期的なタイミングにより、アプリケーションに対する改竄検出を行って、改竄されていると判定されたら、更新プログラム1602のダウンロード要求を出すようにしても良い。
なお、本発明を上記実施の形態に基づいて説明してきたが、本発明は、上記の実施の形態に限定されないのはもちろんである。以下のような場合も本発明に含まれる。
(1)上記の各装置は、具体的には、マイクロプロセッサ、ROM、RAM、ハードディスクユニット、ディスプレイユニット、キーボード、マウスなどから構成されるコンピュータシステムである。前記RAMまたはハードディスクユニットには、コンピュータプログラムが記憶されている。前記マイクロプロセッサが、前記コンピュータプログラムにしたがって動作することにより、各装置は、その機能を達成する。ここでコンピュータプログラムは、所定の機能を達成するために、コンピュータに対する指令を示す命令コードが複数個組み合わされて構成されたものである。なお、各装置は、マイクロプロセッサ、ROM、RAM、ハードディスクユニット、ディスプレイユニット、キーボード、マウスなどの全てを含むコンピュータシステムには限らず、これらの一部から構成されているコンピュータシステムであってもよい。
また、ここでは、システムLSIとしたが、集積度の違いにより、IC、LSI、スーパーLSI、ウルトラLSIと呼称されることもある。また、集積回路化の手法はLSIに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサーを利用しても良い。
(3)上記の各装置を構成する構成要素の一部または全部は、各装置に脱着可能なICカードまたは単体のモジュールから構成されているとしてもよい。前記ICカードまたは前記モジュールは、マイクロプロセッサ、ROM、RAMなどから構成されるコンピュータシステムである。前記ICカードまたは前記モジュールは、上記の超多機能LSIを含むとしてもよい。マイクロプロセッサが、コンピュータプログラムにしたがって動作することにより、前記ICカードまたは前記モジュールは、その機能を達成する。このICカードまたはこのモジュールは、耐タンパ性を有するとしてもよい。
また、本発明は、前記コンピュータプログラムまたは前記デジタル信号をコンピュータ読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、CD−ROM、MO、DVD、DVD−ROM、DVD−RAM、BD(Blu−ray Disc)、半導体メモリなどに記録したものとしてもよい。また、これらの記録媒体に記録されている前記デジタル信号であるとしてもよい。
また、本発明は、マイクロプロセッサとメモリを備えたコンピュータシステムであって、前記メモリは、上記コンピュータプログラムを記憶しており、前記マイクロプロセッサは、前記コンピュータプログラムにしたがって動作するとしてもよい。
(5)上記実施の形態及び上記変形例をそれぞれ組み合わせるとしてもよい。
20、1720 CPU
30、1730 RAM
40、1740 プログラム格納手段
41、1010、1741 App1
42、1020、1742 App2
1030 App3
50 、1011、1212、1750 セキュアモジュール1
60 、1021、1222、1760 セキュアモジュール2
1031 セキュアモジュール3
51、61、1751、1761 検証手段
52、62、1752、1762 測定手段
53、63、1753、1763 カウンタ制御手段
54、64、1754、1764 暗号手段
55、65、1755、1765 セキュアメモリ
56、66、1756、1766 共有データアクセス手段
70、1770 カウンタ格納手段
71、1771 カウンタ群1
72、1772 カウンタ群2
80、1230、1780 共有データ格納手段
90、1790 バス
200 認証ハッシュ値
300 カウンタ管理テーブル
301 ツリーのルートアドレス
302 ツリー構造情報
303 カウンタ個数
304、305 カウンタ値アドレス管理テーブル
306 カウンタID
307 カウンタアドレス
800 共有カウンタ群
900、910、1110、1120、1130、1910、1920 共有カウンタ管理テーブル
901、911、1111、1121、1131、1911、1921 ノードID
902、912 1112、1122、1132、1912、1922 ノードアドレス
903、913 1113、1123、1133、1913、1923 アプリID
1200、1600 端末
1210、1220 ステークホルダー環境
1211 サービス1アプリ
1221 サービス2アプリ
1231 バリュー
1240 サービス1提供サーバー
1250 サービス2提供サーバー
1260、1603 ネットワーク
1601 更新サーバー
1602 更新プログラム
1790 更新手段
1791 通信I/F
1914、1924 アクセス許可情報
Claims (12)
- 第1のプログラムと第2のプログラムを格納するプログラム格納手段と、
前記第1のプログラムが利用する少なくとも1つ以上のカウンタから構成される第1カウンタ群と、
前記第2のプログラムが利用する少なくとも1つ以上のカウンタから構成される第2のカウンタ群と、
前記第1のカウンタ群と前記第2のカウンタ群を格納するカウンタ格納手段と、
前記第1のカウンタ群の完全性を示すための情報である第1のカウンタ認証情報と、
前記第2のカウンタ群の完全性を示すための情報である第2のカウンタ認証情報と、前記第1のカウンタ群のカウンタ認証情報、または、前記第2のカウンタ群のカウンタ認証情報を格納するセキュアメモリと、
前記第1のカウンタ群の完全性を検証するために、前記第1のカウンタ認証情報と比較される値である第1のカウンタ算出情報、または、前記第2のカウンタ群の完全性を検証するために、前記第2のカウンタ認証情報と比較される値である第2のカウンタ算出情報を算出する測定手段と、
前記測定手段にて算出された前記第1のカウンタ算出情報と前記第1のカウンタ認証情報との比較、または、前記第2のカウンタ算出情報と前記第2のカウンタ認証情報との比較する検証手段と、
前記検証手段の比較結果によって、前記第1のプログラムからの前記第1のカウンタ群へのアクセス、または、前記第2のプログラムからの前記第2のカウンタ群へのアクセスを制御するカウンタ制御手段と、
前記第1のカウンタ群を構成する少なくとも1つ以上のカウンタが、前記第2のカウンタ群を構成するカウンタであり、前記第2のカウンタ群を構成する少なくとも1つ以上のカウンタが、前記第1のカウンタ群を構成するカウンタである、少なくとも1つ以上の共有カウンタ
を備えることを特徴とする情報セキュリティ処理装置。 - 前記情報セキュリティ処理装置は、さらに、
前記第1のカウンタ群と前記第2のカウンタ群がそれぞれ、親ノードに、子ノードが格納しているデータを連結したデータに対する完全性を示すための情報であるハッシュ値を配置し、リーフノードに、カウンタの値を配置するツリー構造
を備えることを特徴とする請求項1に記載の情報セキュリティ装置。 - 前記情報セキュリティ処理装置は、さらに、
前記カウンタ制御手段が、カウンタ管理テーブルを備え、
前記カウンタ管理テーブルは、前記カウンタ群1、または、カウンタ群2を構成するノードを識別するノード識別情報と、前記ノードにアクセス可能なプログラムを識別するためのプログラム識別情報を含むことを
を特徴とする請求項2に記載の情報セキュリティ装置。 - 前記情報セキュリティ装置は、さらに、
前記カウンタ管理テーブルに、前記共有カウンタに関連するノード識別情報と、前記共有カウンタにアクセス可能なプログラムを識別するためのプログラム識別情報を含むこと
を特徴とする請求項3記載の情報セキュリティ装置。 - 前記情報セキュリティ装置は、さらに、
前記カウンタ管理テーブルが、前記共有カウンタへアクセス可能なプログラムを識別するためのプログラム識別情報と前記共有カウンタへのアクセス可否情報とを対応づけて記憶しており、
前記セキュアメモリが、前記共有カウンタを利用するプログラムの完全性を検証するためのプログラム認証情報を記憶し、
前記測定手段が、前記プログラムの完全性を検証するために前記プログラム認証情報と比較されるプログラム算出情報を算出し、
前記検証手段が、前記プログラム算出情報と、前記プログラム認証情報を比較し、
前記カウンタ制御手段が、前記検証手段から、前記比較の結果が等しいという結果情報を受信した時に、前記測定手段および前記検証手段により完全性を検証の対象であるプログラムの前記プログラム識別情報に対応する前記アクセス許可情報を、アクセス可に設定し、
前記検証手段から、前記比較の結果が等しくないという結果を受信した時に、前記測定手段および前記検証手段により完全性を検証の対象であるプログラムの前記プログラム識別情報に対応する前記アクセス許可情報を、アクセス不可に設定すること
を特徴とする請求項4に記載の情報セキュリティ装置。 - 前記情報セキュリティ装置は、さらに、
前記プログラムを更新するための更新手段を備え、
前記更新手段が、前記共有カウンタ管理テーブルの前記アクセス許可情報が不可に設定されている前記プログラム識別情報に対応するプログラムの更新処理を行う
ことを特徴とする請求項5に記載の情報セキュリティ装置。 - 前記情報セキュリティ装置は、さらに、
セキュアモジュールを備え、
前記セキュアモジュールが、前記測定手段と、前記検証手段と、前記カウンタ制御手段と前記セキュアメモリを含み、耐タンパ化されている
ことを特徴とする請求項6に記載の情報セキュリティ装置。 - 前記情報セキュリティ装置は、さらに、
少なくとも2つ以上の前記セキュアモジュールを含むこと
を特徴とする請求項7に記載の情報セキュリティ装置。 - 前記情報セキュリティ装置は、さらに、
前記セキュアモジュールが鍵生成手段と暗号化手段を備え、
前記セキュアモジュールが共有して利用する共有データと、
前記共有データを格納する共有データ格納手段とを備え、
前記鍵生成手段が、前記共有カウンタを利用して共有データ暗号鍵を生成し、前記共有データを前記共有データ暗号鍵で暗復号処理する
ことを特徴とする請求項8に記載の情報セキュリティ装置。 - 前記情報セキュリティ装置は、さらに、
前記セキュアモジュールが、Trusted Computing Group(TCG)で仕様化しているTPMで実現されていることを
を特徴とする請求項9に記載の情報セキュリティ装置。 - 前記情報セキュリティ装置は、さらに、
前記セキュアモジュールが、Trusted Computing Group(TCG)で仕様化しているMTMで実現されていること
を特徴とする請求項9に記載の情報セキュリティ装置。 - カウンタを制御するカウンタ制御方法であって、
少なくとも1つ以上のカウンタから構成される第1のカウンタ群と、少なくとも1つ以上のカウンタから構成される第2のカウンタ群をカウンタ格納手段に格納するステップと、
前記カウンタ格納手段から、前記第1のカウンタ群、または前記第2のカウンタ群に対して、アクセスするステップと、
前記第1のカウンタ群を構成している第1のカウンタと、前記第2のカウンタ群を構成している第2のカウンタを共有するステップと、
前記共有ステップにて共有したカウンタを読み出すリードステップと、
前記共有ステップにて共有したカウンタの値を増加するインクリメントステップと、
前記共有カウンタへアクセスするプログラムの完全性を検証するステップと、
前記完全性検証ステップの結果、プログラムが改竄されていると判定された場合に前記プログラムが共有カウンタをアクセスを許可とするステップと、
前記完全性検証ステップの結果、プログラムが改竄されていると判定された場合に前記プログラムが共有カウンタをアクセスを不許可とするステップと
を含むことを特徴とするカウンタ制御方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007166321A JP4956292B2 (ja) | 2007-06-25 | 2007-06-25 | 情報セキュリティ装置およびカウンタ制御方法 |
US12/146,269 US20090019551A1 (en) | 2007-06-25 | 2008-06-25 | Information security device and counter control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007166321A JP4956292B2 (ja) | 2007-06-25 | 2007-06-25 | 情報セキュリティ装置およびカウンタ制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009003855A JP2009003855A (ja) | 2009-01-08 |
JP4956292B2 true JP4956292B2 (ja) | 2012-06-20 |
Family
ID=40254242
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007166321A Active JP4956292B2 (ja) | 2007-06-25 | 2007-06-25 | 情報セキュリティ装置およびカウンタ制御方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20090019551A1 (ja) |
JP (1) | JP4956292B2 (ja) |
Families Citing this family (43)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3798874A1 (en) | 2003-08-26 | 2021-03-31 | Panasonic Intellectual Property Corporation of America | Program execution device |
US20100083006A1 (en) * | 2007-05-24 | 2010-04-01 | Panasonic Corporation | Memory controller, nonvolatile memory device, nonvolatile memory system, and access device |
JP5314016B2 (ja) * | 2008-06-23 | 2013-10-16 | パナソニック株式会社 | 情報処理装置、暗号鍵の管理方法、コンピュータプログラム及び集積回路 |
US9720782B2 (en) * | 2008-12-08 | 2017-08-01 | Microsoft Technology Licensing, Llc | Authenticating a backup image with bifurcated storage |
US8869289B2 (en) * | 2009-01-28 | 2014-10-21 | Microsoft Corporation | Software application verification |
US8826042B2 (en) * | 2009-04-14 | 2014-09-02 | Megachips Corporation | Memory controller, memory control apparatus, memory device, memory information protection system, control method for memory control apparatus, and control method for memory device |
JP5749257B2 (ja) * | 2009-06-26 | 2015-07-15 | トラステッド ロジック | データ検証方法 |
EP2543215A2 (en) | 2010-03-05 | 2013-01-09 | InterDigital Patent Holdings, Inc. | Method and apparatus for providing security to devices |
WO2011149962A1 (en) | 2010-05-24 | 2011-12-01 | The Trustees Of Columbia University In The City Of New York | Mutant ngal proteins and uses thereof |
JP5159849B2 (ja) * | 2010-09-24 | 2013-03-13 | 株式会社東芝 | メモリ管理装置及びメモリ管理方法 |
DE102010054446A1 (de) * | 2010-12-14 | 2012-06-14 | Giesecke & Devrient Gmbh | Portabler Datenträger mit Fehlbedienungszähler |
EP2503482A1 (en) * | 2011-03-23 | 2012-09-26 | ST-Ericsson SA | Electronic device with flash memory component |
KR101962445B1 (ko) * | 2011-08-30 | 2019-03-26 | 삼성전자 주식회사 | 터치 스크린을 갖는 휴대 단말기 및 그의 사용자 인터페이스 제공 방법 |
WO2013089728A1 (en) * | 2011-12-15 | 2013-06-20 | Intel Corporation | Method, device, and system for securely sharing media content from a source device |
US9609456B2 (en) | 2012-05-14 | 2017-03-28 | Qualcomm Incorporated | Methods, devices, and systems for communicating behavioral analysis information |
US9690635B2 (en) | 2012-05-14 | 2017-06-27 | Qualcomm Incorporated | Communicating behavior information in a mobile computing device |
US9324034B2 (en) | 2012-05-14 | 2016-04-26 | Qualcomm Incorporated | On-device real-time behavior analyzer |
US9202047B2 (en) | 2012-05-14 | 2015-12-01 | Qualcomm Incorporated | System, apparatus, and method for adaptive observation of mobile device behavior |
US20140026228A1 (en) * | 2012-07-23 | 2014-01-23 | Kabushiki Kaisha Toshiba | Information processing apparatus and control method |
US9319897B2 (en) | 2012-08-15 | 2016-04-19 | Qualcomm Incorporated | Secure behavior analysis over trusted execution environment |
US9330257B2 (en) | 2012-08-15 | 2016-05-03 | Qualcomm Incorporated | Adaptive observation of behavioral features on a mobile device |
US9495537B2 (en) | 2012-08-15 | 2016-11-15 | Qualcomm Incorporated | Adaptive observation of behavioral features on a mobile device |
US9747440B2 (en) | 2012-08-15 | 2017-08-29 | Qualcomm Incorporated | On-line behavioral analysis engine in mobile device with multiple analyzer model providers |
US9135446B2 (en) * | 2012-09-28 | 2015-09-15 | Intel Corporation | Systems and methods to provide secure storage |
US8819455B2 (en) * | 2012-10-05 | 2014-08-26 | Intel Corporation | Parallelized counter tree walk for low overhead memory replay protection |
EP2925337B1 (en) | 2012-11-21 | 2019-07-03 | The Trustees of Columbia University in the City of New York | Mutant ngal proteins and uses thereof |
US10089582B2 (en) | 2013-01-02 | 2018-10-02 | Qualcomm Incorporated | Using normalized confidence values for classifying mobile device behaviors |
US9684870B2 (en) | 2013-01-02 | 2017-06-20 | Qualcomm Incorporated | Methods and systems of using boosted decision stumps and joint feature selection and culling algorithms for the efficient classification of mobile device behaviors |
US9686023B2 (en) | 2013-01-02 | 2017-06-20 | Qualcomm Incorporated | Methods and systems of dynamically generating and using device-specific and device-state-specific classifier models for the efficient classification of mobile device behaviors |
US9742559B2 (en) * | 2013-01-22 | 2017-08-22 | Qualcomm Incorporated | Inter-module authentication for securing application execution integrity within a computing device |
US9491187B2 (en) | 2013-02-15 | 2016-11-08 | Qualcomm Incorporated | APIs for obtaining device-specific behavior classifier models from the cloud |
US9448888B2 (en) | 2013-11-15 | 2016-09-20 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Preventing a rollback attack in a computing system that includes a primary memory bank and a backup memory bank |
US9460312B2 (en) | 2014-03-11 | 2016-10-04 | Qualcomm Incorporated | Data integrity protection from rollback attacks for use with systems employing message authentication code tags |
US10185842B2 (en) * | 2015-03-18 | 2019-01-22 | Intel Corporation | Cache and data organization for memory protection |
US9798900B2 (en) * | 2015-03-26 | 2017-10-24 | Intel Corporation | Flexible counter system for memory protection |
US10193696B2 (en) * | 2015-06-02 | 2019-01-29 | ALTR Solutions, Inc. | Using a tree structure to segment and distribute records across one or more decentralized, acylic graphs of cryptographic hash pointers |
US10528485B2 (en) | 2016-09-30 | 2020-01-07 | Intel Corporation | Method and apparatus for sharing security metadata memory space |
US10540297B2 (en) | 2017-08-03 | 2020-01-21 | Arm Limited | Memory organization for security and reliability |
CN110945509B (zh) * | 2017-08-03 | 2023-08-11 | Arm有限公司 | 用于控制对受保护存储器区域中数据的访问的设备和方法 |
US10733313B2 (en) | 2018-02-09 | 2020-08-04 | Arm Limited | Counter integrity tree for memory security |
US10778661B2 (en) * | 2018-04-27 | 2020-09-15 | Micron Technology, Inc. | Secure distribution of secret key using a monotonic counter |
US11516013B2 (en) * | 2018-06-28 | 2022-11-29 | Intel Corporation | Accelerator for encrypting or decrypting confidential data with additional authentication data |
GB2579849B (en) | 2018-12-18 | 2021-08-25 | Advanced Risc Mach Ltd | Integrity tree for memory integrity checking |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4625081A (en) * | 1982-11-30 | 1986-11-25 | Lotito Lawrence A | Automated telephone voice service system |
JPH0318935A (ja) * | 1989-06-15 | 1991-01-28 | Hitachi Ltd | データリストに対するアクセスの直列化方式 |
US5649102A (en) * | 1993-11-26 | 1997-07-15 | Hitachi, Ltd. | Distributed shared data management system for controlling structured shared data and for serializing access to shared data |
FR2825869B1 (fr) * | 2001-06-08 | 2003-10-03 | France Telecom | Procede d'authentification entre un objet de telecommunication portable et une borne d'acces public |
US6715085B2 (en) * | 2002-04-18 | 2004-03-30 | International Business Machines Corporation | Initializing, maintaining, updating and recovering secure operation within an integrated system employing a data access control function |
US7421579B2 (en) * | 2002-06-28 | 2008-09-02 | Microsoft Corporation | Multiplexing a secure counter to implement second level secure counters |
US7322042B2 (en) * | 2003-02-07 | 2008-01-22 | Broadon Communications Corp. | Secure and backward-compatible processor and secure software execution thereon |
US7228432B2 (en) * | 2003-09-11 | 2007-06-05 | Angelo Michael F | Method and apparatus for providing security for a computer system |
US7171519B2 (en) * | 2004-02-27 | 2007-01-30 | International Business Machines Corporation | System, method and program for assessing the activity level of a database management system |
JP4562464B2 (ja) * | 2004-09-07 | 2010-10-13 | 富士通株式会社 | 情報処理装置 |
US20060059363A1 (en) * | 2004-09-16 | 2006-03-16 | Mese John C | Method for controlling access to a computerized device |
JP4640770B2 (ja) * | 2004-10-15 | 2011-03-02 | 株式会社日立製作所 | 外部の装置に接続される制御装置 |
US7210166B2 (en) * | 2004-10-16 | 2007-04-24 | Lenovo (Singapore) Pte. Ltd. | Method and system for secure, one-time password override during password-protected system boot |
US8468361B2 (en) * | 2005-09-21 | 2013-06-18 | Broadcom Corporation | System and method for securely provisioning and generating one-time-passwords in a remote device |
US7624242B2 (en) * | 2006-03-31 | 2009-11-24 | Intel Corporation | Operating system agnostic sharing of proteced memory using memory identifiers |
JP5038396B2 (ja) * | 2006-04-21 | 2012-10-03 | インターデイジタル テクノロジー コーポレーション | トラステッドコンピューティングの完全性測定の通知を実行する装置および方法 |
US7945789B2 (en) * | 2006-09-12 | 2011-05-17 | International Business Machines Corporation | System and method for securely restoring a program context from a shared memory |
US7865663B1 (en) * | 2007-02-16 | 2011-01-04 | Vmware, Inc. | SCSI protocol emulation for virtual storage device stored on NAS device |
-
2007
- 2007-06-25 JP JP2007166321A patent/JP4956292B2/ja active Active
-
2008
- 2008-06-25 US US12/146,269 patent/US20090019551A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
US20090019551A1 (en) | 2009-01-15 |
JP2009003855A (ja) | 2009-01-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4956292B2 (ja) | 情報セキュリティ装置およびカウンタ制御方法 | |
US10489562B2 (en) | Modular software protection | |
JP5314016B2 (ja) | 情報処理装置、暗号鍵の管理方法、コンピュータプログラム及び集積回路 | |
US10547604B2 (en) | Information recording apparatus with shadow boot program for authentication with a server | |
TWI676116B (zh) | 安全儲存系統以及用於安全儲存的方法 | |
US7934049B2 (en) | Methods used in a secure yet flexible system architecture for secure devices with flash mass storage memory | |
CN110287654B (zh) | 使用硬件信任根的媒体客户端装置鉴权 | |
US9239925B2 (en) | Processor security | |
WO2020192406A1 (zh) | 数据存储、验证方法及装置 | |
JP4891324B2 (ja) | 大容量フラッシュメモリを備える高信頼性デバイスのための、セキュアでありながらフレキシブルなシステムアーキテクチャ | |
EP1542112A1 (en) | Open type general-purpose attack-resistant cpu, and application system thereof | |
US20070055881A1 (en) | Method for securely exchanging public key certificates in an electronic device | |
JP2005260676A (ja) | セキュリティ装置、情報処理装置、セキュリティ装置の制御方法、情報処理装置の制御方法、該制御方法を実行させるための装置実行可能なプログラムおよびチケット・システム | |
TW201516733A (zh) | 用以核對uefi認證變量變化之系統及方法 | |
JP2004260834A (ja) | 委託された取り消し権限による取り消しリストに基づく、デジタル著作権マネージメントシステムにおける、証明書の取り消しおよび他のプリンシパルの除外 | |
JP2007512787A (ja) | トラステッド・モバイル・プラットフォーム・アーキテクチャ | |
US11228421B1 (en) | Secure secrets to mitigate against attacks on cryptographic systems | |
JP2005032130A (ja) | データ管理装置、およびデータ管理方法、並びにコンピュータ・プログラム | |
WO2018184353A1 (zh) | 应用程序安全认证的方法、终端及存储介质 | |
JPWO2009157133A1 (ja) | 情報処理装置、情報処理方法、これらを実現するコンピュータプログラム及び集積回路 | |
CN105283921A (zh) | 非易失性存储器的操作 | |
Nyman et al. | Citizen electronic identities using TPM 2.0 | |
US11838282B2 (en) | Information recording apparatus with server-based user authentication for accessing a locked operating system storage | |
TW200820076A (en) | Portable mass storage with virtual machine activation | |
CN110914826B (zh) | 用于分布式数据映射的系统和方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100329 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20111208 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20111213 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120124 |
|
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: 20120221 |
|
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: 20120316 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4956292 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150323 Year of fee payment: 3 |