JP2010507328A - セキュアデバイス認証システム及び方法 - Google Patents

セキュアデバイス認証システム及び方法 Download PDF

Info

Publication number
JP2010507328A
JP2010507328A JP2009533299A JP2009533299A JP2010507328A JP 2010507328 A JP2010507328 A JP 2010507328A JP 2009533299 A JP2009533299 A JP 2009533299A JP 2009533299 A JP2009533299 A JP 2009533299A JP 2010507328 A JP2010507328 A JP 2010507328A
Authority
JP
Japan
Prior art keywords
hash
block
hash value
key
data
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
Application number
JP2009533299A
Other languages
English (en)
Other versions
JP5388855B2 (ja
Inventor
プリンスン,ジョン
スリニバサン,プラミラ
アンダーソン,クレイグ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
BroadOn Communications Corp
Original Assignee
BroadOn Communications Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by BroadOn Communications Corp filed Critical BroadOn Communications Corp
Publication of JP2010507328A publication Critical patent/JP2010507328A/ja
Application granted granted Critical
Publication of JP5388855B2 publication Critical patent/JP5388855B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3236Cryptographic 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 cryptographic hash functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • G11B20/00217Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source
    • G11B20/00253Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source wherein the key is stored on the record carrier
    • G11B20/00333Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source wherein the key is stored on the record carrier the key being stored in header data, e.g. in sector headers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • G11B20/00485Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier
    • G11B20/00492Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier wherein content or user data is encrypted
    • G11B20/00507Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier wherein content or user data is encrypted wherein consecutive physical data units of the record carrier are encrypted with separate encryption keys, e.g. the key changes on a cluster or sector basis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • H04L9/0897Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/321Cryptographic 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 involving a third party or a trusted authority
    • H04L9/3213Cryptographic 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 involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/60Digital content management, e.g. content distribution
    • H04L2209/605Copy protection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3263Cryptographic 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 involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • H04L9/3265Cryptographic 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 involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements using certificate chains, trees or paths; Hierarchical trust model

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Technology Law (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Storage Device Security (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

ブロックベースドメディアのセキュリティと認証のための技術は、保護鍵の使用を含み、認証と暗号プリミティブを提供する。本技術に従ったシステムは、保護鍵付きのセキュリティカーネルを有するセキュアデバイスを備えても良い。ディスクドライブ・セキュリティ機構は、データの認証や秘密性をサポートしたり、更にセキュリティカーネルやチケットサービス・モジュール(例えば、フラッシュのような他の記憶装置によって使用されたり、これを使用しない共有サービス)を用いたチケット有効化をサポートしても良い。

Description

今や、認証やその他のセキュリティ問題は、理論上及び実用上、広範囲の研究・開発の分野となっている。1つの分野は、DVDまたはそれに匹敵するテクノロジーでのデータの認証であり、それはCDや新しいDVDテクノロジーを含むかは不明だが、DVDテクノロジー間の類似性ゆえに通常DVDテクノロジーの全域に適用可能なものとなっている。DVDやCD、更にその他の自由に配給可能なメディアディスクを以て、その認証は特に強固でなければならない(例えば、暗号法の使用)。
ディスクベースのメディアは通常、ブロックベースドデバイスである。それ故、ブロックデータへのアクセス時間や使用されるどんな暗号アルゴリズムの演算時間も、ディスクベースのメディアを使用するシステムの仕様を満足しなければならない。更に、コンテンツは秘密保持のためにしばしば暗号化される場合がある。また、セキュアデバイスの秘密保持やディスクベース・メディアのための認証技術に対するその他の考慮すべき事項には、その技術が読取専用媒体をサポートすべきこと、(各ディスクに特注又は固有のデータを要求せずに)ディスクの大量生産をサポートすべきこと、そして認証のためにディスク上に格納される付加データは妥当なオーバーヘッドを課すだけであるべきことが含まれる。
これらの要求事項を満たすべく幾つかの取り組みが提案されたが、秘密保持や認証技術における多くのソリューションと同様に、そこには改善の余地がある。例えば、公開鍵暗号に基づいたブロック署名(例えば、RSA署名)を付けることも可能だろうが、読み込まれるデータのあらゆるブロックはRSA照合演算が必要となるために、この取り組みは比較的遅い処理となる。RSAは、公開鍵暗号化のためのアルゴリズムである。それは、暗号化と同様に署名に適切と思われた最初のアルゴリズムであった。RSAは十分に長い鍵があたえられ、セキュアである(技術的に安全性が保証された)と思われている。更に、比較的遅いことに加えて、ブロック毎に行われるRSA署名のサイズは比較的高いオーバーヘッドを課すことにもなるであろう。
別の例としては、ディスクのカスタム防護エリアに書き込まれたブロック毎にSHAハッシュ(又は、その同等の物)を付けることも可能であるが、これはカスタムディスクの製造が必要となる。更に別の例として、各ブロックに対しHMAC(又は同等の物)などの秘密鍵ベースのメッセージ認証コードを付けることも可能だろうが、この場合、総てのディスクに、HMACが同じでなければならず、これにより単一の秘密鍵機構となり、所望のセキュリティレベルを提供できない可能性がある。別の例としては、階層のメンバーを読み込むために、ブロックアクセス毎にブロックデバイスの複数のシーク(multiple seeks)が必要となる階層的署名アプローチを使用することも可能だろうが、この処理は待ち時間が長くなってしまう可能性がある。
上述したこれら関連技術の例や制限事項は、あくまで説明に役立つものとして例証したものであって排他的ではない。関連技術の他の制限事項は、当該技術者が本願明細書を読み、図面を検討することにより明らかになるであろう。
以下の実施形態とその特徴は、あくまで例証的であって範囲を制限しないことを意図したシステム、ツール、および方法に関連して記載、図示される。種々の実施形態では、上述した問題の1つ又はそれ以上が低減又は解消され、一方では他の実施形態がその他の改善に向けられる。
ブロックベースドメディアのセキュリティと認証のための技術は、保護鍵の使用を含み、認証と暗号プリミティブを提供する。本技術に従ったシステムは、保護鍵付きのセキュリティカーネルを有するセキュアデバイスを含んでも良い。ディスクドライブ・セキュリティ機構は、データ認証や秘密性をサポートしたり、更にセキュリティカーネルやチケットサービス・モジュール(例えば、フラッシュのような他の記憶装置によって使用されたり、これを使用しない共有サービス)を用いたチケット有効化をサポートしても良い。実装の形態によっては、セキュリティカーネル、ディスクドライブ・セキュリティ機構、及びチケットサービス・モジュールは、3つの異なった実行空間で動作する可能性もあり、それに非限定的な例として、例えば光学ディスクを含む様々な入出力・記憶装置により一般的に使用可能である。
非限定的な実施形態では、ブロックベースドメディアは読み取り専用であるが、その技術は追記型(WORM)、書き込み可能型、或いは他のブロックベースドメディアなどに適用可能であるかもしれない。またその技術は、他の記憶媒体、暗号鍵を引き出すための代替法を導く他のライセンシング機構、及び/又は他の移送メディア(例えば、インターネットのパケットベースのダウンロード)に適用可能であるかもしれない。
本発明の実施形態を図面に示す。しかしながら、ここに示した実施形態と図面は、本発明を制限するものというよりむしろ説明するためのものであって、本発明の例を提供するものである。
階層的ハッシュ技術に関連する二分木構造の例を示す図である。 階層的ハッシュ技術に関連する非二分木構造の例を示す図である。 32KBブロックの例を示す図である。 図1乃至図3を参照して説明した技術の実装の形態に適したコンピュータ・システムを示す図である。 図1乃至図3を参照して説明した技術の実装の形態に適したセキュアシステムの例を示す図である。 セキュアなブロックベースドメディアアクセスの方法の例のフローチャートである。 セキュアなブロックベースドメディアアクセスの方法の例のフローチャートである。 セキュアなブロックベースドメディアアクセスの別の方法を示すフローチャート700である。 セキュアなブロックベースドメディアアクセスの別の方法を示すフローチャート700である。 セキュアなブロックベースドメディアアクセスの別の方法を示すフローチャート700である。
以下の説明では、本発明の実施形態の十分な理解を与えるために幾つかの特定の具体的な構成が提示される。しかし、当業者であれば、1つ以上のこれら特定の具体的な構成がなくとも、あるいは他の構成部などとの組み合わせにより、本発明を実施することが可能であることが理解されるであろう。また別の例では、様々な実施形態における本発明の側面を覆い隠すことがないように、周知の具体的構成は、図示または詳細に説明されていない。
図1は、階層的ハッシュ技術に関連する二分木構造100の例を示している。本願明細書で援用されるものは、1982年1月5日にマークル(Merkle)に対し発行された「デジタル署名提供法(“Method of Providing Digital Signatures”)」と題する米国特許第4,309,569号である。一群のデータブロック{Y1, …Yk, …Yn}、(1<=k<=n)が認証されることになる。図1の例ではn=8である。ブロックYkは、Ykと一群の値H(i, j, Y)を用いることで認証される。伝達されたブロックYkと、これに対応する一群の値H(i, j, Y)はYkの信頼性を確立するために個々に使用できる。ここで、H(i, j, Y)は以下のように定義される。
H(i, i, Y)=F(Yi)
H(i, j, Y)=F(H(i, (i+j-1)/2, Y), H((i+j+1)/2, j, Y))
但し、F(Yi)はSHA-1などの一方向関数である。従って、H(i, j, Y)は、Yi, Yi+1, ...Yjの一方向関数、H(1, n, Y)は、Y1〜Ynの一方向関数である。即ち、レシーバーはYkとHの一群の値を選択的に認証することが可能である。
二分木構造100のルート値H(1、8、Y)を信用するためには、例えばその値に対する公開鍵ベースの暗号署名(例えば、RSA署名)を獲得できなければならない。署名は、信頼できるルート鍵まで適切に証明書の連鎖を検証することで、署名を有効にすることが可能となる。しかしながら、何らかの適用可能な公知の(又は手頃な)セキュリティ機構を、信用構築のために使用できるであろう。
図1の例では、Y5を認証するために、信頼のあるH(1, 8, Y)を持ち、かつH(6, 6, Y)、H(7, 8, Y)、及びH(1, 4, Y)を受けとることが必要である。H(5, 6, Y)とH(5, 8, Y)は導き出すことが可能である。説明のために、これらのボックスは図1で陰影をつけられており、導き出された値を示すボックスは破線を有し、H(5, 5, Y)は検証ターゲットであって太線によって囲まれたブロックで表されており、ルート値H(1, 8, Y)は破線と実線との双方によって囲まれ、H(1, 8, Y)自体が受信されるものであると共に導き出されるものでもあることを示している。認証を成功させるためには、H(1, 8, Y)の受信値と導き出された値(received and derived values)は一致していなければならない。陰影のないボックスに関連した値は、Y5を認証するために既知である必要はない。
図1に示す例において、検証ターゲットH(5, 5, Y)、及び受信値(received values)の最初の値H(6, 6, Y)は、共に、上述したH(i, j, k)の定義を用いて、H(5, 6, Y)を導き出すのに使用できる。又、導き出された値(derived value) H(5, 6, Y)、及び受信値の2番目の値H(7, 8, Y)は、共に、H(5, 8, Y)を導き出すのに使用できる。更に、導き出された値H(5, 8, Y)、及び受信値の3番目の値H(1, 4, Y)は、共に、ルート値H(1, 8, Y)を導き出すのに使用できる。また、H(1, 8, Y)は4番目の受信値でもあった。H(1, 8, Y)の導き出された値と受信値が一致したならば、その時は4番目の受信値が信頼できることと仮定した上でH(5, 5, Y)が認証されることになる。
二分木構造100の異なったレベルに属するH( )値のグループは、階層の夫々のレベルによって表示することができる。例えば:
H3: = H(1, 8, Y)
H2: = {H(l, 4, Y), H(5, 8, Y)}からなる値
H1: = {H(1, 2, Y), H(3, 4, Y), H(5, 6, Y), …}からなる値
H0: = {H(1, 1, Y), H(2, 2, Y), H(3, 3, Y), …}からなる値
従って、H0ハッシュはデータブロックY、Yなどのハッシュや、二分木構造100の葉節点(leaf nodes)を言及している。ツリーの構造は、階層におけるレベルの数やツリー構造の各節点(node)の子の数によって定義しても良い。
図1を参照して説明した技術は、他の非二分木構造まで拡張することができる。構造の選択にあたっては、それらに限定されるものではないが、例えば:結果として生じるデータブロックの大きさやブロック認証に必要な認証データ;デバイスからの所望データ読み取り速度を満たすための一方向ハッシュ関数(例えば、SHA-1)の計算の数;シーク(seek)を最小限にしつつ、データを読み込むことの副作用として、又は認証データのための読み取りオーバーヘッドを最小限にする他の方法により、利用可能な認証データを持つことの必要性;ツリーによってカバーされなければならない最大データサイズ、などによって決めるようにしても良い。
図2は階層的ハッシュ技術に関連する非二分木構造200を示す。図2の例に選ばれるツリーの構造は、例えばDVDディスクなどのブロックベースドメディアデバイスのための上記の要件を満たすものであり、デバイスの上において、データブロックY1、Y2などと共に値H0, H1…の配列(placement)を導くものとなる。
図2の例において、H0ハッシュがH(1, 1, Y)、H(2, 2, Y)などといったように選ばれ、各H0ハッシュが1個の1Kデータブロックをカバーするようになっている。データブロックサイズは、ここでは1Kバイトになるように選ばれているが、どんな適当なサイズでも良い。
図2の例では、非二分木構造200のH1ハッシュがH(1, 31, Y)、H(32, 62, Y)などといったように選ばれる。即ち、図2の例では、各H1は、31ブロックのデータをカバーする。その他の実施例としては、31ブロックのデータというよりはむしろ、どんな適当な数のブロックも使用可能である。31ブロックのデータは、それに限定されるものではないが、図3の例によって示されたデータブロックに準拠したものである。
図3は32KBブロック300の例を示している。32KBブロック300は、ハッシュブロック302と31個の1KBデータブロック304を含む。ハッシュブロックは、後述するところのハッシュとパディング(padding)を含む。実装の形態によっては、31個の1KBデータブロック304は、ハッシュブロック302によって先行されるように、またはハッシュブロック302に挟まれるようにして、例えばDVDディスク上の32KBブロック300内に一緒に格納される場合もある。
再び図2の例を参照するに、H2ハッシュは、H(1, 31×8, Y)、H(31×8+1, 31×2×8, Y)などといったように選ばれる。即ち、各H2ハッシュは、31×8ブロックのデータをカバーする。これは、各H2節点(node)が、レベルH1において、8個の子を有していることを意味する。本例では被乗数は“8”だが、どんな数も選択可能である。被乗数を増やすことは、(相殺するアクション(counterbalancing action)が取られない限りにおいては)レベルH3の節点(ノード)数を減少させる効果があり、被乗数を減らすことは、その反対の効果をもたらすことになる。
H3ハッシュが、H(1, 31×8×8, Y)、H(31×8×8+1, 31×2×8×8, Y)などといったように選択される。即ち、各H3ハッシュは、31×8×8個のブロックデータをカバーする。これは各H3節点(node)が、レベルH2において、8個の子を有していることを意味する。本例では被乗数は“8”だが、どんな数も選択可能である。非限定的実施形態においては、H3ハッシュの数は、認証機構でカバーされる最大サイズのデータをカバーするように選ばれることもある。例えば、4182個のハッシュを9.4G実装品で使用したり、768個のハッシュを1.5G実装品で使用したりしても良い。図2の例では、非二分木構造200は、本例で示されるパラメータと共に如何なるサイズのブロックベースドメディアデバイスにも一般化できるようにn個のハッシュを備える。
最終的なH4ハッシュ(ツリー階層の根の部分)は署名された値であって、コンテンツデータの公開が認可されたセキュアサーバーにおいて、公知または手頃な公開鍵署名法を使用することによって署名される。コンテンツのサイズは任意であっても、或いは任意でなくても良い。階層構造の値を演算するために、追加コンテンツブロックやハッシュ値がランダムなバイトとして当てがわれるようにしても良い。図2を参照して説明した技術は、DVDブロックに使用可能であり、或いは他のアプリケーションへと適用(拡張)することが可能である。
再度、図3を参照するに、本例ではハッシュブロック302は、31個のH0ハッシュ/パディング310、8個のH1ハッシュ/パディング312、及び8個のH2ハッシュ/パディング314に細分される。
ディスクヘッダなどのヘッダ(図示せず)は、通常、32KBブロック300に関連するブロックベースドメディアデバイスの最初のアクセスエリアに含まれることになる。一実施形態において、ヘッダに含まれた内容は、ブロックベースドメディアデバイス上の全ブロックに適用可能となる。これで殆どの目的に対し十分ではあるが、ヘッダは、先頭に付け加えたり、後ろに付け加えたり、さもなければデータのブロックに含められたりしてもよい。非限定的実施形態において、ヘッダはH4ハッシュとこれに関連するH3ハッシュを含んでいる(例えば、図2参照)。又、別の実施形態として、関連するH3を8個のH2ハッシュから導き出すことが出来るし、H3自体を提供する必要もないが、その際には全ブロックベースドデバイスからのデータアクセスが必要になるかもしれない。
非限定的実施形態において、ヘッダは、少なくとも最終的なハッシュ(例えばH4)、コンテンツ識別、及び任意の鍵を含む“チケット”と呼ばれる署名データ構造を含んでも良い。例えばこのチケットは、あくまで例であってこれに限定されないがRSAなどの公開鍵署名法を使用するコンテンツ発行サーバーによって署名されるようにしても良い。非限定的実施形態では、チケットに、コンテンツに権利を付与する他の権利マネージメントデータや、別のライセンス供与サーバーによる署名を含ませるようにしても良い。ヘッダは更に、証明書チェーンや取消しリストなど、署名の有効化を補助する補助データ構造を含んでも良い。コンテンツに適用可能な権利を減らす或いは拡張するために、権利マネージメントライセンスは、代替手段によって供給された他の権利マネージメントライセンスと併せて使用されてもよい。
ヘッダに続き、ハッシュブロック310、312、314と31個の1KBデータブロック304を挟んでも良い。図3の例では、1ブロックが32KBで、最初の1KBブロックはハッシュブロック302として留保される。一実施形態では、ハッシュブロック302は、ヘッダがプレロード(先行読み込み)されると仮定して、31個の1KBデータブロック304を有効化するのに必要な全認証データを含んでも良い。31個の1KBデータブロック304にはコンテンツを含ませても良い。如何なる適用可能な公知(又は手頃な)ハッシュアルゴリズムが使用されても良い。例えば、ハッシュサイズが20バイトのSHA1であるならば十分であろう。
一実施形態では、総てのデータブロックが(例えば、AES暗号を使用する形で)、コンテンツのコピー防止を確実にするために暗号化される。別の実施形態としては、いくつかのデータブロックを暗号化しない場合もある。非限定的実施形態としては、ハッシュブロック302からスタートする形で、データが復号化される。ハッシュの復号化にあたっては、如何なる公知の、又は手頃な技術も使用可能である。例えば、一定の既知数を、ハッシュブロック302の始まりを復号化するために初期化ベクトルとして選択しても良いし、H2ハッシュの一部をデータブロック復号化用の初期化ベクトルとして使用しても良い。チケット有効化工程の副産物として復号化鍵を獲得しても良い(例えば図5参照)。
図4は、図1乃至図3を参照して上述した技術の実施に適するコンピュータ・システム400を示している。コンピュータ・システム400は、コンピュータ402、I/Oデバイス404、及びディスプレイデバイス406を含む。コンピュータ402は、プロセッサ408、通信インターフェース410、メモリ412、ディスプレイコントローラ414、不揮発性記憶装置416、及びI/Oコントローラ418を含む。コンピュータ402は、I/Oデバイス404やディスプレイデバイス406に接続する形でも、あるいはそれらを含む形でも良い。
コンピュータ402は、モデムやネットワークインターフェースを含んでもよい通信インターフェース410を介し、外部システムと接続する。通信インターフェース410は、コンピュータ・システム400の一部かコンピュータ402の一部として考えることができる。通信インターフェース410は、アナログ・モデム、ISDNモデム、ケーブルモデム、トークン・リング・インタフェース、衛星通信インターフェース(例えば、“ダイレクトPC”)、又は1つのコンピュータ・システムを他のコンピュータ・システムに接続する他のインターフェースのいずれでも良い。従来のコンピュータは通常、一種の通信インターフェースを備えるが、インターフェースを含まないコンピュータを作成することで、通信インターフェース410を厳密な意味で任意的なものとすることができる。
プロセッサ408は、それに限定されない一例として、インテル社のペンティアム(登録商標)マイクロプロセッサやモトローラ社のパワーPCマイクロプロセッサなどの従来マイクロプロセッサを具備しても良い。プロセッサ408は、総ての従来型コンピュータにとって重要な部品と言えるが、ここで説明した技術を実施するためには、適用可能な如何なる公知の(又は手頃な)プロセッサを使用することも可能である。メモリ412は、バス420によって、プロセッサ408に接続される。メモリ412(以下、“主記憶装置(primary memory)”と呼ぶこともある)は、ダイナミック・ランダムアクセス・メモリ(DRAM)を備えたり、またスタティック・ラム(SRAM)を備えたりすることも可能である。バス220は、プロセッサ408をメモリ412に接続したり、又不揮発性記憶装置416にも、ディスプレイコントローラ414にも、更にI/Oコントローラ418にも接続したりすることができる。
I/Oデバイス404は、キーボード、ディスクドライブ、プリンタ、スキャナ、及びマウスか他のポインティング・デバイスを含む他の入出力装置を含むことができる。説明のため、これらI/Oデバイスの少なくとも1つを、DVDプレーヤーのようなブロックベースドメディアデバイスと仮定する。ディスプレイコントローラ414は、公知の又は手頃な方法で、ディスプレイデバイス406上のディスプレイを制御しても良く、ディスプレイデバイス406は、例えば、ブラウン管(CRT)だったり、液晶ディスプレイ(LCD)だったりする。
ディスプレイコントローラ414とI/Oコントローラ418はデバイスドライバを具備しても良い。デバイスドライバは、ハードウェアデバイスとの相互作用を可能にするべく開発された特定のコンピュータ・ソフトウェアである。通常、これは、デバイスと通信するためのインターフェースを構成し、ハードウェアが接続されるバスや通信サブシステムを介し、デバイスへの命令送信及び/又はデバイスからのデータ受信を実行する一方、必要不可欠なものはOSとソフトウェアアプリケーションと相互作用する。
デバイスドライバは、OS特有でもあるハードウェア依存型コンピュータ・プログラムを含んでもよい。そのコンピュータ・プログラムにより、別のプログラム(通常OS、アプリケーションソフトウェアパッケージ、又はOSカーネル上で動くコンピュータ・プログラム)は、透過的にハードウェアデバイスと相互作用することができ、同コンピュータ・プログラムは通常、ニーズと調和した如何なる必要な非同期・時間依存型ハードウェアにも必要不可欠な割り込み処理を提供する。
往々にして不揮発性記憶装置416(以下、“補助記憶装置(secondary memory)”と呼ぶこともある)は、磁気ハードディスクだったり、光ディスクだったり、或いは大量データ用の他の種類の記憶装置だったりする。このデータのいくつかはしばしば、コンピュータ402でソフトウェアを実行している間に、ダイレクトメモリアクセス工程によってメモリ412に書き込まれる。不揮発性記憶装置416は、ブロックベースドメディアデバイスを含むものでも良い。“機械可読メディア”や“コンピュータ可読メディア”という用語は、プロセッサ408によってアクセス可能であって、データ信号を符号化する搬送波を包含する如何なる公知の(又は手頃な)記憶装置をも含んでいる。
コンピュータ・システム400は、異なったアーキテクチャを持っている多くの実行可能なコンピュータ・システムの一例である。例えば、インテルマイクロプロセッサをベースとするパーソナルコンピュータは往々にして複数のバスを有し、その1つは周辺機器へのI/Oバスであったり、プロセッサ408とメモリ412を直接接続するもの(しばしば“メモリバス”と呼ばれる)であったりする。これらのバスは、バスプロトコルが異なることによって必要とされる如何なる変換(translation)を実行できるブリッジコンポーネントを介して接続される。
ネットワーク・コンピュータは、ここで提供した教示に関連して使用可能な別のタイプのコンピュータ・システムである。通常、ネットワーク・コンピュータはハードディスクや他の大容量記憶装置を備えておらず、実行可能プログラムは、プロセッサ408による実行のために、ネットワーク接続からメモリ412に取り込まれる。当該技術では既知のウェブテレビシステムも又、1つのコンピュータ・システムと考えることもできるが、ある入力や出力装置のように図4に示した特徴の幾つかを欠く可能性がある。通常、一般的なコンピュータ・システムは、少なくともプロセッサ、メモリ、メモリをプロセッサに接続するバスを具備することになる。
オペレーティングシステム(OS)でコンピュータ・システム400を制御しても良い。OSは、全部ではないが殆どのコンピュータ・システムに使用されるソフトウェアプログラムであって、コンピュータのハードウェア及びソフトウェア・リソースを管理している。通常、OSは、メモリを制御して割り当てをしたり、システムの要求に優先順位を付けたり、入出力装置を制御したり、ネットワーキングを補助したり、ファイルを管理するといったような基本タスクを実行するものである。パーソナルコンピュータ用オペレーティングシステムの例としては、マイクロソフト社のウインドウズ(登録商標)、リナックス、マックOS(登録商標)などがある。OSとアプリケーション・ソフトウエアとの間の線引きは往々にしてかなり難しい。幸いにも、何らかのリーズナブルな線引きで十分であるため、本願で説明した技術を理解するのにこの線引きは不要である。
最も低いレベルのOSとしては、その(OSの)カーネルであっても良い。通常、カーネルは、システムブートや、スタートアップする際にメモリに取り込まれるソフトウェアの第1の層(first layer)である。カーネルにより、他のシステムやアプリケーション・プログラムに対する様々な共通コアサービスへのアクセスを提供する。
ここに使用されたように、コンピュータメモリ中のデータ・ビットにおける操作のアルゴリズム的記述と象徴(symbolic representations)は、当業者に対し最も効果的に技術を伝えるものと思われる。アルゴリズムという用語は、ここで使用するとき、また一般に使用されるとき、所望の結果を導き出す動作 (operations)の首尾一貫したシーケンス(self-consistent sequence)と考えられる。この動作は、物理量の物理的な操作(manipulations)を必要とするものである。必ずしも必要ではないが、通常、こうした量は、格納、転送、結合、比較、及び他の操作を行うことができる電気、または磁気の信号の形を取る。時には、主に一般的な使用のために、こうした信号をビット(bits)、値(values)、要素(elements)、記号(symbols)、文字(characters)、項(terms)、数字(numbers)などと呼ぶのが便利であることがわかっている。
しかしながら、これら、及びこれらと同様の用語はすべて、適切な物理量に関連付けられ、単にこうした量に適用される手頃なラベル(labels)にすぎないことを心に留めておくべきである。特に明記しない限り、または下記の記述から明らかであるように、“処理する(processing)”、“演算する(computing)”、“計算する(calculating)”、“決定する(determining)”、“表示する(displaying)”などの用語は、コンピュータ・システムのレジスタおよびメモリ内の物理的な(電子)量として表されるデータを操作し、コンピュータ・システムのメモリまたはレジスタ、または他のこうした情報記憶装置、送信装置または表示装置内の同じように物理(電子)量として表される他のデータに変換するコンピュータの動作および処理(process)を指す。
ここで説明した技術を実施するための装置は、要求された目的のためにそれ専用に構成しても良く、又コンピュータに格納されたコンピュータ・プログラムによって選択的に起動(activated)されたり再構成(reconfigured)されたりする汎用コンピュータから成るものでも良い。そのようなコンピュータ・プログラムは、それらに限定されるものではないが例えば、リードオンリメモリ(ROM)、ランダムアクセスメモリ(RAM)、EPROM、EEPROM、磁気又は光学カード、フレキシブルディスクを含む如何なるタイプのディスク、光ディスク、CD-ROM、DVD、光磁気ディスク、或いは電子的な指示(instructions)を格納するのに適した如何なる公知の(又は手頃な)の媒体のような、コンピュータ可読記憶媒体に格納されても良い。
ここに提示されたアルゴリズムとディスプレイは本来、如何なる特定コンピュータ・アーキテクチャにも関連するものではない。この技術は、高いレベル(例えば、C/C++)であろうと低レベル(例えば、アセンブリ言語)だろうと、又インタープリタ型(例えば、Perl)だろうと、コンパイラ型(例えば、C/C++)だろうと、バイトコード(例えば、Java(登録商標))からコンパイルされるジャストインタイム(JIT)であろうと、如何なる公知の(又は手頃な)プログラミング言語を使用して実施されても良い。どんな公知の(又は手頃な)コンピュータでも、アーキテクチャに関係なく、コンパイルされた機械コードか、さもなければ何らかの言語からコンピュータ・アーキテクチャと互換性がある機械コードへとアセンブルされた機械コードを実行することが可能でなければならない。
図5は、図1乃至図3を参照して上述した技術を実施するのに適していたセキュアシステム500の一例を示している。代表的なセキュアシステム500は、ゲーム機、メディアプレーヤー、埋め込み型(embedded)セキュアデバイス、セキュアプロセッサ付き“従来型”PC、或いはセキュアプロセッサを備える他のコンピュータ・システムを備えても良い。
図5の例においてセキュアシステム500は、セキュアプロセッサ502、OS504、ブロックベースドメディアドライバ506、ブロックベースドメディアデバイス508、プロテクト・メモリ510、及びチケットサービス512を含む。図5の例ではOS504は、鍵ストア516、暗号化/復号化エンジン517、及びセキュリティAPI518を順に含むセキュリティカーネル514を有する。上述したこれら部品の1つ又はそれ以上、或いはその一部を、プロテクト・メモリ510又は保護されていないメモリ(図示せず)に属させるようにしても良いことを留意すべきである。
さらに留意すべきは、慣例だけによって、セキュリティカーネル514が、OS504に属するように表現されていることである。実際にOS504の一部であってもなくても良く、OSの外側に存在することも、或いはOSを含まないシステム上に存在することも可能である。説明を簡単にする目的で、OS504は認証可能であることが前提である。実施形態では、ブロックベースドメディアドライバ506、及び/又は、チケットサービス512は、OS504の一部であっても良い。認証付きのブロックベースドメディアドライバ506とチケットサービス512を読み込むこと(loading)が、セキュリティを向上できるという理由で、これは望ましいかもしれない。従って、そのような実施形態では、OS504は認証付きで読み込まれ、ブロックベースドメディアドライバ506とチケットサービス512を含むことになる。
説明の簡略化のために、プロテクト・メモリは単一メモリとして示される。しかしながら、このプロテクト・メモリは、保護された主記憶装置、保護された補助記憶装置、及び/又は、シークレットメモリを含んでも良い。メモリが保護されるのを確実とするためには、公知の(又は手頃な)機構が適所にあることが前提である。主記憶装置と補助記憶装置との間、及び/又は、揮発性記憶装置と不揮発性記憶装置との間のインタープレイ(interplay)は、公知であるため、様々な種類のメモリと記憶装置の間の区別は図5に関しては示されていない。
チケットサービス512は、例えば“デジタルライセンス有効化サービス”として考えられても良く、また非限定的な実施形態では、ライセンス有効化に関連する公知の(又は手頃な)手順を含んでもよい。例えば、チケットサービス512は、デジタルライセンスを有効にするための手順、PKI有効化手順などを含んでも良い。図5の例では、チケットサービス512は、ブロックベースドメディアデバイス508上でチケットを有効化することができる。この動作において、ブロックベースドメディアドライバ506は、ブロックベースドメディアデバイス508からチケットを獲得する。次いで、ブロックベースドメディアドライバ506は、チケットサービス512へのチケットを供給し、同サービスはチケット有効化を進行させる。チケットが有効である場合、ブロックベースドメディアドライバ506は、チケットに関連したブロックを復号化することが許される。
一実施形態では、セキュリティカーネル514が、起動時点において読み込み(loaded)されてもよい。別の実施形態では、セキュリティカーネルの一部が、起動時点において読み込みされ、残りが後で読み込みされても良い。この技術の一例は、Srinivasanらによって、2003年2月7日に出願された“信頼性や下位互換性のあるプロセッサ、及びその上でのセキュアソフトウェア実行”というタイトルの出願番号:10/360,827号に記載され、同技術がここで援用される。セキュアな方法(技術的に安全性が保証された方法、in a secure manner)で、セキュリティカーネル514を読み込みするべく、如何なる公知の(又は手頃な)技術も使用可能である。
鍵ストア516は、鍵のための格納場所群からなる。鍵を格納するのに使用されるデータ構造は重要な意味をもつものではないが、鍵ストア516は、鍵の一配列と思われても良い。鍵を格納するために、適用可能な如何なる公知の(又は、手頃な)構造も使用可能である。非限定的な実施形態では、鍵ストア516は、静的な(static)鍵を以て初期化されるが、可変鍵(variable keys)は初期化されない(或いは、セキュアでない値に初期化される)。例えば、幾つかの鍵ストア位置(key store locations)は、認証されたセキュリティカーネル514の読み込み(loading)の一部としての信頼値(例えば信頼ルート鍵)で予備充填(pre-filled)される。
一実施形態において、暗号化/復号化エンジン517は、暗号化と復号化の両方が可能である。例えば、かかる動作において、アプリケーションは、セキュリティAPI518に、アプリケーションが暗号化に使用できるというキーハンドルを要求するかもしれない。暗号化/復号化エンジン517を、キーハンドルを使用してデータを暗号化するのに使用しても良い。好都合なことには、セキュリティAPI518は、キーハンドルを平文で提供するが、鍵そのものは決してセキュリティカーネル514から離れることはない。
セキュリティAPI518は、鍵を明らかにすることなく(すなわち、鍵がセキュリティカーネル514を離れないか、或いは暗号化される場合にだけに限って鍵がセキュリティカーネル514を去るような状態で)、鍵ストア516内の鍵を使用した動作を実行することができる。セキュリティAPI518は、鍵ストア516で鍵(そして潜在的には、他のセキュリティ材料)を作成(create)し、投入(populate)し、使用するためのサービスを含んでも良い。また、一実施形態では、セキュリティAPI518は、また、秘密鍵とデバイスプライベート鍵を含む、内部の秘密と不揮発性データへのアクセスを与える。実装の形態によっては、セキュリティAPI518は、ハードウェア加速を使用することでAES及びSHAオペレ−ションをサポートするようにしても良い。
図5の例では、ブロックベースドメディアドライバ506は、ブロックベースドメディアデバイス508からの読み出しを行いながら、以下のセキュリティオペレーションを実行するように構成しても良い。
1)秘密鍵を使用して、ブロックベースドメディアデバイス508を復号化すること、及び
2)ブロックベースドメディアデバイス508上の認証データを使用して、ブロックベースドメディアデバイス508上のコンテンツを認証すること(認証が失敗した場合、読み出しは失敗する)
図5の例では、これらのセキュリティオペレーションを実行するために、ブロックベースドメディアドライバ506は、システム500内の他のセキュアサービス、例えばチケットサービス512やセキュリティAPI518などを利用しても良い。一実施形態では、これらモジュールの夫々が、システムセキュリティのための個々の実行スペースにおいて実行する。データブロックを有効化するために、ブロックベースドメディアドライバ506は、データブロック・ヘッダを読み出し、ヘッダのデータを使ってチケットを有効にするためにチケットサービス512を用いる。ブロック復号化をサポートするために、チケットは、暗号化された鍵を含んでも良い。チケットサービス512は、セキュリティカーネル514(例えば、暗号化/復号化エンジン517)におけるサービスを利用して、鍵を復号化する。
一実施形態では、暗号化/復号化エンジン517は、この復号化を実行するために、鍵ストア518からの秘密共通鍵を使用する。別の実施形態では、チケットサービス512は、フラッシュかネットワーク(図示せず)から得られたデバイス個別チケット(device personalized ticket)を使用して、コンテンツに対する幾つかの権利を有効にして、その後に鍵を戻すことも可能である。いずれにしても、このプロセスは、ブロックベースドメディアドライバ506に戻り、ブロックを復号化する際に使用する鍵にリファレンスを与える。この鍵リファレンスは、ブロックベースドメディアドライバ506によって使用され、鍵に関連するブロックを復号化するセキュリティAPI516に次の呼び出しをする。
復号化の後に、ブロックベースドメディアドライバ506は、セキュリティAPI516(又は、ハッシュ演算エンジンへの他のインターフェース)に対し呼び出しをかけ、チケットに関連する階層的ハッシュツリーを有効にする(例えば、図3参照)。セキュリティAPI516は、チケットの中にあるものに対するルートハッシュを有効化する。有効化が成功したことを前提に、チケットに関連するコンテンツは使用可能なものにされる。非限定的な実施形態では、復号化と認証の順番はさほど重要でなく、入れ替えできるものである。
矢印520〜536を以て、システム500のデータフローの例が例示を目的として供される。ブロックベースドメディアドライバ506においてブロック・ヘッダを受けることは、ブロックベースドメディアデバイス508からブロックベースドメディアドライバ506へのヘッダアクセス矢印520によって表わされている。データブロック・ヘッダは恐らくは、アクセスして読み出し可能となるために矢印520は双方向となる。
チケットを含むデータブロック・ヘッダからチケットサービス512へのデータ送信は、認証データ矢印522によって表わされている。チケットは、暗号化された鍵を含んでも良い。鍵の復号化のためにセキュリティAPI516に要求を送ることは、鍵復号化要求矢印524によって表されている。現在鍵ストア518に格納されている復号化された鍵へのリファレンスの戻しは、鍵へのリファレンス矢印526によって表わされる。チケットの有効化に成功した後、チケットサービスは、ブロック復号化の際にドライバが使用した鍵へのリファレンスと共に、チケット有効化データをブロックベースドメディアドライバ506に送ることになる。チケットサービス512からブロックベースドメディアドライバ506へのデータ送りは、チケット有効化矢印528として示されている。
データブロックアクセス矢印530は、ブロックベースドメディアドライバ506によるブロックベースドメディアデバイス508からのブロック読み出しを示している。データアクセスは、ヘッダ(520)の受信と同時に行っても、或いは時を一致させずに行っても良い。アクセスされたブロックは、チケット有効化データ(528)を使用して復号化され、ブロック復号化要求矢印532はかかる要求を表している。ハッシュツリー有効化矢印534は、1ブロックのコンテンツのその後の有効化を表している。
一実施形態として、あるレベルのハッシュ(例えば、図2のレベルH3参照)をヘッダに供給することも可能である。そのような実施形態では、第1ハッシュツリー有効化シーケンスは、ハッシュの計算や、このハッシュのヘッダに提供された関連値との比較を含んでも良い。別の実施形態では、あるハッシュ演算時間を節約出来るかもしれない将来のレファレンスのために(for future reference)、階層的ハッシュツリーの部分値が、ハッシュされてもよい。
図6A及び図6Bは、セキュアなブロックベースドメディアアクセスの方法の一例としてのフローチャート600を示している。この方法、及び他の方法は、連続的に並べられたモジュールの形で表現される。しかしながら、これらの方法における各モジュールは、並べ替えされたり、並列実行のために適当に並べられたりしても良い。図6Aの例において、フローチャート600は、モジュール602でスタートし、ここではブロックベースドメディアヘッダが読み込まれる。図6Aの例において、フローチャート600は、モジュール604に進み、ここでチケットの有効化が行われ、復号鍵へのリファレンスが得られる。
図6Aの例で、フローチャート600は、決定ポイント606に進み、チケットが有効であるか否かが判定される。チケットが有効でない場合(606−Nの場合)、プロセスは中止になり、フローチャート600は終了することになる。他方、チケットが有効である場合(606−Yの場合)、フローチャート600は、モジュール608に進み、H3ハッシュのハッシュを、チケットの中にあるルートハッシュ値と比較する。この比較は例えばセキュリティー・サービスで実行しても良い。
図6Aの例で、フローチャート600は、決定ポイント610に進み、チケットが有効であるか否かが判定される。その比較(モジュール608)で一致している場合には、チケットが有効であると仮定される。チケットが有効でないと判定されたならば(610−Nの場合)、プロセスは中止になり、フローチャート600は終了する。他方、チケットが有効である場合(610−Yの場合)、フローチャート600は、モジュール612に進み、H3ハッシュ群のH3ハッシュ値が格納され、読み出し要求(read request)が待機状態にされる。H3ハッシュ値は、例えばセキュアDRAMに格納されても良い。
図6Aの例では、フローチャート600は、モジュール614に進み、ここではコンテンツを解読するための鍵へのリファレンスが獲得される。コンテンツ解読のための鍵へのリファレンスは、リファレンス獲得のためチケットサービス(ヘッダ情報を伴う)に呼び出しをかけることで獲得するようにしても良い。図6Aの例では、フローチャート600は、モジュール616に進み、読み出し要求のハッシュサブブロックとデータサブブロックの所在確認が行われる(located)。図6Aの例では、フローチャート600は、更にモジュール618に進み、前記ハッシュサブブロックとデータサブブロックが復号化される。図6Bの例では、フローチャート600は、モジュール620に進み、ここでデータサブブロックのハッシュが計算される。
図6Bの例では、フローチャート600は、モジュール622に進み、データサブブロックのハッシュがレベルH0ハッシュ群の対応するH0ハッシュ値と比較される(例えば、図3参照)。図6Bの例では、フローチャート600は、決定ポイント624に進み、ここで上記比較が有効な結果(valid result)をもたらしたか否かが判定される。比較結果が有効でない場合(モジュール624−N)、その時、フローチャート600ではブロックベースドメディアデバイスからの読み出し要求を中止する。他方、上記比較結果が有効である場合(モジュール624−Y)、フローチャート600は、モジュール626に進み、レベルH0のハッシュ値を含む、H0ハッシュ群のハッシュH1’が計算される。
図6Bの例では、フローチャート600は、モジュール628に進み、H1’がレベルH1ハッシュ群の対応するH1ハッシュ値と比較される(例えば、図3参照)。図6Bの例では、フローチャート600は、決定ポイント630に進み、ここで上記比較が有効な結果をもたらしたか否かが判定される。比較結果が有効でない場合(モジュール630−N)、その時、フローチャート600ではブロックベースドメディアデバイスからの読み出し要求を中止する。他方、上記比較結果が有効である場合(モジュール630−Y)、フローチャート600は、モジュール632に進み、レベルH1のハッシュ値を含む、H1ハッシュ群のハッシュH2’が計算される。
図6Bの例では、フローチャート600は、モジュール634に進み、H2’がレベルH2ハッシュ群の対応するH2ハッシュ値と比較される(例えば、図3参照)。図6Bの例では、フローチャート600は、決定ポイント636に進み、ここで上記比較が有効な結果をもたらしたか否かが判定される。比較結果が有効でない場合(モジュール636−N)、その時、フローチャート600ではブロックベースドメディアデバイスからの読み出し要求を中止する。他方、上記比較結果が有効である場合(モジュール636−Y)、フローチャート600は、モジュール638に進み、レベルH2のハッシュ値を含む、H2ハッシュ群のハッシュH3’が計算される。
図6Bの例では、フローチャート600は、モジュール640に進み、H3’が対応して格納されたH3ハッシュ値(612)と比較される(例えば、図3参照)。図6Bの例では、フローチャート600は、決定ポイント642に進み、ここで上記比較が有効な結果をもたらしたか否かが判定される。比較結果が有効でない場合(モジュール642−N)、その時、フローチャート600ではブロックベースドメディアデバイスからの読み出し要求を中止する。他方、上記比較結果が有効である場合(モジュール642−Y)、フローチャート600は、モジュール644に進み、ブロック読み出し要求が果たされる。
図7A、7B及び図7Cは、セキュアなブロックベースドメディアアクセスの別の方法を説明するためのフローチャート700を示している。図7Aの例では、フローチャート700は、ブロックベースドメディアデバイスのヘッダにアクセスするモジュール702でスタートする。次に、フローチャート700は、モジュール704に進み、ヘッダに含まれるデータ構造を認証する。それに限定されない例としてデータ構造は、チケットやイーチケット(eTicket)、或いは実際に、ここに記載する意図した目的のために機能する如何なる他のデータ構造でも良い。
図7Aの例で、フローチャート700は、モジュール706に進み、ヘッダに含まれるハッシュ値群をセキュアに格納する(技術的に安全性が保証された状態で格納する、securely storing)。それに限定されない例として、これらのハッシュ値は、図2のH3ハッシュと同様なものでも良い。如何なる数のハッシュ値が、ヘッダ(例えば、H0、Hl、H2、H3、H4)に供されても良い。しかしながら、ハッシュサブブロックに供されないヘッダだけを含むことが望ましいかもしれない(例えば図3参照)。
図7Aの例で、フローチャート700は、モジュール708に進み、将来のレファレンスのために(for future reference)、階層的ハッシュツリーをキャッシュする(caching)。少なくとも1つの実施形態では、階層的ハッシュツリーをキャッシュするということは、データブロック検証プロセスの間の速度を幾分改善できる結果をもたらすことができる。しかしながら、階層的ハッシュツリーをキャッシュせずに続行する理由が存在するかもしれず、これはこの技術の有効性を損なわないはずである。
図7Aの例で、フローチャート700は、モジュール710に進み、データ構造から、階層的ハッシュツリーの第1のルートハッシュを獲得する。データ構造はハッシュ値群とは独立して認証(704)されているために、結果としては更なるセキュリティをもたらすことができる。
図7Aの例で、フローチャート700は、モジュール712に進み、ハッシュ値群から第2のルートハッシュを演算する。このハッシュ値はセキュアなもの(技術的に安全性が保証されたもの)かどうかわからないが、ヘッダがブロックベースドメディアデバイスからアクセスされているため、それらは恐らくはブロックベースドメディアデバイスからのものである。
図7Aの例で、フローチャート700は、モジュール714に進み、第1のルートハッシュを第2のルートハッシュと比較する。なお、データ構造に含まれていた第1のルートハッシュは、既に認証されており(704)、第2のルートハッシュはブロックベースドメディアデバイスのヘッダに供されたハッシュ群から導かれたものである。
図7Aの例で、フローチャート700は、決定ポイント716へと進み、第1のルートハッシュと第2のルートハッシュが一致しているか否かが判定される。第1のルートハッシュと第2のルートハッシュが一致していない場合(モジュール716−N)、その時、ヘッダが拒絶される(さらにフローチャート700も終了する)。他方、第1のルートハッシュと第2のルートハッシュが一致している場合(モジュール716−Y)、フローチャート700は、任意的なモジュール718に進み、ヘッダ以外のソースからの権利マネージメントチケットを有効にする。
図7Bの例で、特定の実装形態には可能でないかもしれないし、或いはこの付加的レベルのセキュリティが不要であると思われる可能性があるため、モジュール718は任意で行ってもよいし行わなくてもよい。ヘッダ以外のソースからの権利マネージメントチケットが使用されているなら、その際、権利マネージメントチケット使用方法は、モジュール704、710、714に関して説明されたものと同様である。説明のために、この任意のモジュールが使用されるなら、有効化(validation)が成功した状態にある(それ故、ヘッダが拒絶されない)と推測される。
図7Bの例で、フローチャート700は、モジュール720に進み、ここでデータ構造から暗号化された鍵を入手する。最初、そのデータ構造が認証され(704)、鍵がデータ構造から抽出される際に暗号化されるため、この鍵は特にセキュアなもの(技術的に安全性が保証されたもの)である。
図7Bの例で、フローチャート700は、モジュール722に進み、ここで暗号化された鍵をセキュアに(技術的に安全性が保証された状態で)復号化する。“セキュアに復号化する”ということで、鍵がセキュアカーネルで復号化されることが前提となる。セキュアカーネルのそれに整合できるどんなセキュリティレベルも適当なものとなるであろう。しかしながら、セキュアカーネルによって提供されたセキュリティと同等であるなら、そのような多くのセキュリティ機構は、単に、何か他のものとして改名されたセキュアカーネルであっても良い。それにもかかわらず、十分にセキュアな機構が公知又は手頃なものであるならば、ここに説明された技術が適用可能であるかもしれない。
図7Bの例で、フローチャート700は、モジュール724に進み、鍵をセキュアに格納する。“セキュアに格納すること”ということで、鍵は、セキュアカーネルに格納されるか、又はセキュアプロセッサによってアクセスされるセキュアカーネルに関連するメモリに格納されることが前提となる。又、セキュアカーネルのそれに整合できるどんなセキュリティレベルも適当なものとなるであろう。
図7Bの例で、フローチャート700は、モジュール726に進み、鍵へのリファレンスを平文で提供する。それに限定されない例により、ブロックベースドメディアドライバは鍵へのリファレンスを受けるようにしても良い。その際、ブロックベースドメディアドライバは、鍵へのリファレンスを、例えば鍵アクセスのためにリファレンスを使用できるセキュアカーネルに戻すように発信しても良い。このようにして、鍵はセキュアカーネルに残ることができ、リファレンスだけが平文状態になる。
図7Bの例で、フローチャート700は、モジュール728に進み、セキュア復号化エンジンに鍵のリファレンスを供する。“セキュア復号化エンジンであること”ということで、復号化エンジンはセキュアカーネルの一部、または同等の物であることが前提となる。これにより鍵の、平文状態での使用さえも回避される。
図7Bの例で、フローチャート700は、モジュール730に進み、ここでデータブロックを復号化する。データブロックは、セキュアに復号化される。その後、フローチャート700は、任意でモジュール732に進み、データブロックのサブブロックが復号化される。このレベルのセキュリティが不必要なものかどうか分らないし、システムの性能をいたずらに低減させるかもしれないので(多分、僅かだが)、この処理は任意で行っても良いし行わなくても良い。
図7Cの例では、フローチャート700は、モジュール734に進み、サブブロックから認証データを読み込み、続くモジュール736では、この認証データにおいて、階層的ハッシュツリーの第1のレベルに関連する第1のハッシュ値群を識別する(identifying)。第1のレベルは図2のH0に対応するかもしれない。レベルの数は本例方法の一部でない実施詳細である。
図7Cの例で、フローチャート700は、モジュール738に進み、第1ハッシュ値を決定するべくデータブロックの暗号学的ハッシュを演算し、続くモジュール740では、第1ハッシュ値を、第1のハッシュ値群の対応値と比較する。
図7Cの例で、フローチャート700は、決定ポイント742に進み、第1ハッシュ値と、第1のハッシュ値群の対応値とが一致しているか否か判定される。第1ハッシュ値と、第1のハッシュ値群の対応値とが一致していない場合(モジュール742−N)、データブロック読み出し要求は拒絶される(そして、フローチャート700は終了する)。他方、第1ハッシュ値と、第1のハッシュ値群の対応値とが一致している場合(モジュール742−Y)、その際、フローチャート700は、モジュール744に進み、ここで適宜ハッシュを演算して、比較する。演算と比較の反復回数は恐らく階層的ハッシュツリーのレベル数に依存し、それは実装の形態によって変化する。
図7Cの例で、フローチャート700は、決定ポイント746に進み、ハッシュ比較のすべてが一致という結果になるか否かが判定される。ハッシュ比較のすべてが一致という結果にならないと判定された場合(モジュール746−N)、データブロック読み出し要求は拒絶される(そして、フローチャート700は終了する)。他方、ハッシュ比較のすべてが一致という結果になったと判定された場合(モジュール746−Y)、データブロックが戻される(そして、フローチャート700は終了する)。推定するに、アクセス前にこれを参照した当業者には明白であるように、これらモジュールの幾つかは、その後のデータブロックアクセスのために繰り返される必要はないだろう。
ここで使用されたように、用語“コンテンツ”は、メモリに格納可能な如何なるデータをも広く含むことを意図する。
ここで使用されたように、用語“実施形態”は、それに限定されない一例として説明を行うための実施例を意味している。
当業者であれば前述した実施例と実施形態は、代表的なものであり、本発明の範囲を限定するものでないことが理解されるであろう。当業者が明細書を考慮し、図面を検討したときに自明な置き換え、増強、均等物やそれらへの改良が、本発明の要旨と範囲に含まれることを意図している。したがって、添付された特許請求の範囲は、本発明の要旨と範囲内にあるこのような総ての変更、置き換え、均等物を含むことを意図している。
100 二分木構造
200 非二分木構造
300 32KBブロック
302 ハッシュブロック
304 1KBデータブロック
310 H0ハッシュ/パディング
312 H1ハッシュ/パディング
314 H2ハッシュ/パディング
400 コンピュータ・システム
402 コンピュータ
404 I/Oデバイス
406 ディスプレイデバイス
408 プロセッサ
410 通信インターフェース
412 メモリ
414 ディスプレイコントローラ
416 不揮発性記憶装置
418 I/Oコントローラ
500 セキュアシステム
502 セキュアプロセッサ
504 OS(オペレーティングシステム)
506 ブロックベースドメディアドライバ
508 ブロックベースドメディアデバイス
510 プロテクト・メモリ
512 チケットサービス
514 セキュリティカーネル
516 鍵ストア
517 暗号化/復号化エンジン
518 セキュリティAPI
520 ヘッダアクセス矢印
522 認証データ矢印
524 鍵復号化要求矢印
526 鍵へのリファレンス矢印
528 チケット有効化矢印
530 データブロックアクセス矢印
532 ブロック復号化要求矢印
534 ハッシュツリー有効化矢印

Claims (21)

  1. データ構造とハッシュ値群とを含むヘッダにアクセスし、
    前記データ構造から、階層的ハッシュツリーの第1のルートハッシュを獲得し、
    前記ハッシュ値群から第2のルートハッシュを演算し、
    前記第1のルートハッシュを、前記第2のルートハッシュと比較し、
    第1のルートハッシュと第2のルートハッシュとが一致する場合に、
    前記データ構造から、暗号化された鍵を獲得し、
    前記暗号化された鍵をセキュアに復号化し、
    前記鍵が平文の形で送付されないように、前記鍵をセキュアに格納し、
    前記鍵にリファレンスを提供し、
    前記データブロックを前記鍵への前記リファレンスで復号化し、
    前記データブロックに関連するサブブロックから認証データを読み込み、
    前記認証データにおいて、前記階層的ハッシュツリーの第1のレベルに関連する第1のハッシュ値群を識別し、
    第1ハッシュ値を決定するために、前記データブロックの暗号学的ハッシュを演算し、
    前記第1ハッシュ値を、前記第1ハッシュ値群における対応値と比較し、
    前記第1ハッシュ値と、前記第1ハッシュ値群の前記対応値が一致しない場合に、ブロックデータの要求を拒絶することを特徴とする方法。
  2. 前記データ構造は署名された公開鍵であることを特徴とする請求項1に記載の方法。
  3. 更に、前記データ構造を認証することを特徴とする請求項1に記載の方法。
  4. 更に、ヘッダに含まれた前記ハッシュ値群をセキュアに格納することを特徴とする請求項1に記載の方法。
  5. 更に、前記階層的ハッシュツリーをキャッシュすることを特徴とする請求項1に記載の方法。
  6. 更に、前記第1のルートハッシュと前記第2のルートハッシュが一致していないならば、前記ヘッダを拒絶することを特徴とする請求項1に記載の方法。
  7. 更に、前記ヘッダ以外のソースから権利マネージメントチケットを有効にすることを特徴とする請求項1に記載の方法。
  8. 前記鍵への前記リファレンスは、平文で提供されることを特徴とする請求項1に記載の方法。
  9. 前記鍵への前記リファレンスでデータブロックを復号化する処理は、更に
    セキュア復号化エンジンに対し前記鍵へのリファレンスを提供し、
    前記鍵が平文で送付されないように、前記データブロックを復号化することを特徴とする請求項1に記載の方法。
  10. 更に、少なくとも前記サブブロックの一部を復号化することを特徴とする請求項1に記載の方法。
  11. 更に、各ハッシュブロックにおいて、
    計算で求められたハッシュを適切なロケーションに挿入し、
    前記ハッシュブロックのハッシュを演算することを特徴とする請求項1に記載の方法。
  12. 前記第1ハッシュ値が、前記第1のハッシュ値群の前記対応値と一致する場合、
    前記第1のハッシュ値群に対応する第2ハッシュ値を演算し、
    前記認証データにおいて、前記階層的ハッシュツリーの第2のレベルに関連する第2のハッシュ値群を識別し、
    前記第2ハッシュ値を、前記第2のハッシュ値群における対応値と比較し、
    前記第2ハッシュ値と、前記第2のハッシュ値群の前記対応値とが一致していない場合に、前記ブロックデータの要求を拒絶することを特徴とする請求項1に記載の方法。
  13. 前記第2ハッシュ値が、前記第2のハッシュ値群の前記対応値と一致する場合、
    前記第2のハッシュ値群に対応する第3ハッシュ値を演算し、
    前記認証データにおいて、前記階層的ハッシュツリーの第3のレベルに関連する第3のハッシュ値群を識別し、
    前記第3ハッシュ値を、前記第3のハッシュ値群における対応値と比較し、
    前記第3ハッシュ値と、前記第3のハッシュ値群の前記対応値とが一致していない場合に、前記ブロックデータの要求を拒絶することを特徴とする請求項12に記載の方法。
  14. 前記第3ハッシュ値が、前記第3のハッシュ値群の前記対応値と一致し、前記ヘッダのハッシュ値群が第4のハッシュ値群であり、前記第4ハッシュ値群が前記階層的ハッシュツリーの第4のレベルに関連する場合、
    前記第3のハッシュ値群に対応する第4ハッシュ値を演算し、
    前記階層的ハッシュツリーの第4のレベルに関連する第4のハッシュ値群を提供し、
    前記第4ハッシュ値を、前記第4のハッシュ値群における対応値と比較し、
    前記第4ハッシュ値と、前記第4のハッシュ値群の前記対応値とが一致していない場合に、前記ブロックデータの要求を拒絶し、
    前記第4ハッシュ値と、前記第4のハッシュ値群の前記対応値とが一致している場合に、前記ブロックデータを戻すことを特徴とする請求項13に記載の方法。
  15. セキュリティAPIに接続されたブロックベースドメディアドライバであって、その動作において、ブロックベースドメディアデバイスに関連するヘッダにアクセスし、前記ヘッダから認証データを抽出するような前記ブロックベースドメディアドライバと、
    前記セキュリティAPIと前記ブロックベースドメディアドライバに接続されるチケットサービスであって、その動作において、前記ブロックベースドメディアドライバからの前記認証データを受け取り、前記セキュリティAPIに鍵復号化要求を送るような前記チケットサービスと、
    前記セキュリティAPI、暗号化/復号化エンジン、及び前記セキュリティAPIにアクセス可能な鍵ストアを含むセキュリティカーネルであって、その動作において、前記暗号化/復号化エンジンが鍵を復号化し、前記鍵は前記鍵ストアに格納され、前記セキュリティAPIは前記チケットサービスに、前記鍵に対するリファレンスを戻すような前記セキュリティカーネルとを備えるシステムであって、
    動作において、前記チケッサービスは、前記認証データを有効化し、前記ブロックベースドメディアドライバに、前記鍵に対する前記リファレンスを戻し、
    動作において、前記ブロックベースドメディアドライバは、前記ブロックベースドメディアデバイスのデータブロックにアクセスし、前記セキュリティAPIにブロック復号化要求を送り、前記セキュリティカーネルは、前記ブロックを復号化し、前記データブロックに関連する階層的ハッシュツリーを有効化することを特徴とするシステム。
  16. 更に、ブロックベースドメディアデバイスを更に備え、前記ブロックベースドメディアデバイスに関連するヘッダが、ルートハッシュ値と複数のルートの子のハッシュ値を含んでいることを特徴とする請求項15に記載のシステム。
  17. 更に、ブロックベースドメディアデバイスを更に備え、前記データブロックの各々は、ハッシュサブブロックと、複数のコンテンツデータブロックを含むことを特徴とする請求項15に記載のシステム。
  18. ブロックベースドメディアと共にセキュアコンテンツ配信のための手段を有するシステムであって、
    セキュア鍵ストア手段と、
    ブロックベースドメディアデバイスのヘッダから暗号化された鍵にアクセスするための手段と、
    前記暗号化された鍵をセキュアに復号化するための手段と、
    前記鍵ストアに前記鍵をセキュアに格納する手段と、
    前記ブロックベースドメディアデバイスのデータブロックをセキュアに復号化するために、前記鍵にリファレンスを与えるための手段と、
    前記ブロックベースドメディアデバイスと前記ブロックベースドメディアデバイスの各データブロックに関連するハッシュ値を提供するための手段とを備えることを特徴とするシステム。
  19. 前記ヘッダのハッシュ値が拒絶された場合に、前記ブロックベースドメディアデバイスへのアクセスを中止するための手段を更に備えることを特徴とする請求項18に記載のシステム。
  20. 前記データブロックのハッシュ値が拒絶された場合に、前記データブロックへのアクセスを中止するための手段を更に備えることを特徴とする請求項18に記載のシステム。
  21. データ構造とハッシュ値群とを含むヘッダにアクセスし、
    前記データ構造から階層的なハッシュツリーの第1のルートハッシュを獲得し、
    前記ハッシュ値群から第2のルートハッシュを演算し、
    前記第1のルートハッシュを、前記第2のルートハッシュと比較し、
    前記第1のルートハッシュと、第2ルートハッシュ値とが一致する場合に、
    前記データ構造から、暗号化された鍵を獲得し、
    前記暗号化された鍵を、セキュアに復号化し、
    前記鍵が平文の形で送付されないように、前記鍵をセキュアに格納し、
    前記鍵にリファレンスを提供し、
    暗号化されたデータブロックに関連するサブブロックから認証データを読み込み、
    前記認証データにおいて、前記階層的ハッシュツリーの第1のレベルに関連する第1のハッシュ値群を識別し、
    第1ハッシュ値を決定するために、前記暗号化されたデータブロックの暗号学的ハッシュを演算し、
    前記第1ハッシュ値を、前記第1ハッシュ値群における対応値と比較し、
    前記第1ハッシュ値と、前記第1ハッシュ値群の前記対応値が一致しない場合に、ブロックデータの要求を拒絶し、
    前記鍵に対するリファレンスで、前記暗号化されたデータブロックを復号化することを特徴とする方法。
JP2009533299A 2006-10-16 2007-09-12 セキュアデバイス認証システム及び方法 Active JP5388855B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US85215106P 2006-10-16 2006-10-16
US60/852,151 2006-10-16
US11/586,446 US7624276B2 (en) 2006-10-16 2006-10-24 Secure device authentication system and method
US11/586,446 2006-10-24
PCT/US2007/019862 WO2008048403A2 (en) 2006-10-16 2007-09-12 Secure device authentication system and method

Publications (2)

Publication Number Publication Date
JP2010507328A true JP2010507328A (ja) 2010-03-04
JP5388855B2 JP5388855B2 (ja) 2014-01-15

Family

ID=39304393

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009533299A Active JP5388855B2 (ja) 2006-10-16 2007-09-12 セキュアデバイス認証システム及び方法

Country Status (4)

Country Link
US (2) US7624276B2 (ja)
EP (1) EP2080311B1 (ja)
JP (1) JP5388855B2 (ja)
WO (1) WO2008048403A2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012530983A (ja) * 2009-06-26 2012-12-06 トラステッド ロジック データ検証方法
JP2015046909A (ja) * 2010-03-05 2015-03-12 インターデイジタル パテント ホールディングス インコーポレイテッド 機器にセキュリティを提供する方法および装置
JP2022506633A (ja) * 2018-11-09 2022-01-17 ホアウェイ・テクノロジーズ・カンパニー・リミテッド 無線アップグレード方法および関連装置

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7757075B2 (en) * 2002-11-15 2010-07-13 Microsoft Corporation State reference
US20100017627A1 (en) 2003-02-07 2010-01-21 Broadon Communications Corp. Ensuring authenticity in a closed content distribution system
US20070255580A1 (en) * 2004-06-22 2007-11-01 Ebooks Corporation Limited Lending System and Method
US8019988B2 (en) * 2005-08-22 2011-09-13 The State Of Oregon Acting By And Through The State Board Of Higher Education On Behalf Of The University Of Oregon Security protocols for hybrid peer-to-peer file sharing networks
EP2033350A2 (en) 2006-05-02 2009-03-11 Broadon Communications Corp. Content management system and method
US8356178B2 (en) * 2006-11-13 2013-01-15 Seagate Technology Llc Method and apparatus for authenticated data storage
US8332635B2 (en) * 2007-05-29 2012-12-11 International Business Machines Corporation Updateable secure kernel extensions
US7886162B2 (en) * 2007-05-29 2011-02-08 International Business Machines Corporation Cryptographic secure program overlays
US8433927B2 (en) * 2007-05-29 2013-04-30 International Business Machines Corporation Cryptographically-enabled privileged mode execution
US8422674B2 (en) * 2007-05-29 2013-04-16 International Business Machines Corporation Application-specific secret generation
US8429643B2 (en) * 2007-09-05 2013-04-23 Microsoft Corporation Secure upgrade of firmware update in constrained memory
US8332636B2 (en) * 2007-10-02 2012-12-11 International Business Machines Corporation Secure policy differentiation by secure kernel design
US8176018B1 (en) * 2008-04-30 2012-05-08 Netapp, Inc. Incremental file system differencing
JPWO2010001544A1 (ja) * 2008-07-01 2011-12-15 パナソニック株式会社 ドライブ装置、コンテンツ再生装置、記録装置、データ読み出し方法、プログラム、記録媒体、および集積回路
US9195846B2 (en) * 2008-10-01 2015-11-24 Hewlett-Packard Development Company, L.P. Access grants
US8386835B2 (en) * 2010-05-17 2013-02-26 Oracle International Corporation System and method for end-to-end data integrity in a network file system
FR2965431B1 (fr) * 2010-09-28 2013-01-04 Mouchi Haddad Systeme d'echange de donnees entre au moins un emetteur et un recepteur
US8522201B2 (en) * 2010-11-09 2013-08-27 Qualcomm Incorporated Methods and apparatus for sub-asset modification
US9083534B2 (en) * 2011-01-07 2015-07-14 Mastercard International Incorporated Method and system for propagating a client identity
US9292530B2 (en) 2011-06-14 2016-03-22 Netapp, Inc. Object-level identification of duplicate data in a storage system
US9043292B2 (en) 2011-06-14 2015-05-26 Netapp, Inc. Hierarchical identification and mapping of duplicate data in a storage system
US8645691B2 (en) * 2012-01-13 2014-02-04 Combined Conditional Access Development And Support, Llc System and method for securing data while minimizing bandwidth
US8627097B2 (en) 2012-03-27 2014-01-07 Igt System and method enabling parallel processing of hash functions using authentication checkpoint hashes
US8793506B2 (en) * 2012-08-31 2014-07-29 Intel Corporation Mechanism for facilitating encryption-free integrity protection of storage data at computing systems
US9355279B1 (en) 2013-03-29 2016-05-31 Secturion Systems, Inc. Multi-tenancy architecture
US9374344B1 (en) * 2013-03-29 2016-06-21 Secturion Systems, Inc. Secure end-to-end communication system
US9317718B1 (en) 2013-03-29 2016-04-19 Secturion Systems, Inc. Security device with programmable systolic-matrix cryptographic module and programmable input/output interface
US9524399B1 (en) 2013-04-01 2016-12-20 Secturion Systems, Inc. Multi-level independent security architecture
US10263783B2 (en) * 2013-08-23 2019-04-16 Nec Corporation Method and system for authenticating a data stream
CN105556526B (zh) * 2013-09-30 2018-10-30 安提特软件有限责任公司 提供分层威胁智能的非暂时性机器可读介质、系统和方法
US9553855B2 (en) 2014-02-14 2017-01-24 Red Hat, Inc. Storing a key to an encrypted file in kernel memory
US10303887B2 (en) 2015-09-14 2019-05-28 T0.Com, Inc. Data verification methods and systems using a hash tree, such as a time-centric merkle hash tree
US11283774B2 (en) 2015-09-17 2022-03-22 Secturion Systems, Inc. Cloud storage using encryption gateway with certificate authority identification
US10708236B2 (en) 2015-10-26 2020-07-07 Secturion Systems, Inc. Multi-independent level secure (MILS) storage encryption
WO2019010228A1 (en) 2017-07-03 2019-01-10 Medici Ventures, Inc. DECENTRALIZED NEGOTIATION SYSTEM FOR FAIR ORDERING AND MATCHING OF TRANSACTIONS RECEIVED AT MULTIPLE NETWORK NODE AND CORRELATED BY MULTIPLE NETWORK NODES IN A DECENTRALIZED NEGOTIATION SYSTEM
WO2019070227A1 (en) * 2017-10-02 2019-04-11 Hewlett-Packard Development Company, L.P. DEVICE AUTHENTICATION
CN112925956B (zh) * 2021-03-25 2022-03-08 广西师范大学 一种物联网大规模时序数据访问控制方法

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10214233A (ja) * 1996-04-15 1998-08-11 Toshiba Corp 情報処理装置、情報処理システム、情報処理方法、プログラム記憶装置、及び鍵の判定方法及び判定装置
JP2000156676A (ja) * 1998-09-24 2000-06-06 Samsung Electronics Co Ltd デジタルコンテント用の安全配布システム
JP2000349751A (ja) * 1999-03-30 2000-12-15 Sony Corp 情報処理装置および方法、認証方法、並びにプログラム格納媒体
JP2001217822A (ja) * 2000-01-31 2001-08-10 Toshiba Corp 暗号化記録装置
WO2002080448A1 (fr) * 2001-03-29 2002-10-10 Sony Corporation Appareil de traitement de l'information
JP2004048676A (ja) * 2002-04-18 2004-02-12 Internatl Business Mach Corp <Ibm> 受信側に対して同期送信するために暗号化済みコンテンツにタイトル鍵を添付する方法、システム、およびプログラム
JP2004240959A (ja) * 2003-01-14 2004-08-26 Matsushita Electric Ind Co Ltd コンテンツ再生装置、ライセンス発行サーバ及びコンテンツ再生システム
JP2005032130A (ja) * 2003-07-10 2005-02-03 Sony Corp データ管理装置、およびデータ管理方法、並びにコンピュータ・プログラム
JP2005526451A (ja) * 2002-05-22 2005-09-02 トムソン ライセンシング ソシエテ アノニム 特にdvb/mpegデジタルストリームのための署名装置、認証装置、プロセス及び対応するプロダクト
JP2007512787A (ja) * 2003-12-11 2007-05-17 インテル・コーポレーション トラステッド・モバイル・プラットフォーム・アーキテクチャ
JP2007515837A (ja) * 2003-11-21 2007-06-14 エリコス ピッツォス データ管理処理およびデータ配送処理において完全性および信頼を提供する方法およびシステム

Family Cites Families (191)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5184830A (en) * 1989-01-10 1993-02-09 Nintendo Company Limited Compact hand-held video game system
FI111789B (fi) * 1989-01-10 2003-09-15 Nintendo Co Ltd Elektroninen pelilaite, jossa on mahdollisuus pseudostereofoniseen äänen kehittämiseen
KR0149503B1 (ko) * 1989-04-20 1999-05-15 야마우찌 히로시 메모리 카트리지
US5715398A (en) * 1989-06-16 1998-02-03 R.R. Donnelley & Sons Company System for distributing items from an origin to a plurality of destinations
US5347579A (en) 1989-07-05 1994-09-13 Blandford Robert R Personal computer diary
GB2239810B (en) * 1990-01-10 1994-06-22 Leung Yiu Choi Computer game control apparatus
US5261069A (en) 1990-08-13 1993-11-09 Hewlett-Packard Company Method of maintaining consistency of cached data in a database system
US5577209A (en) 1991-07-11 1996-11-19 Itt Corporation Apparatus and method for providing multi-level security for communication among computers and terminals on a network
US5367698A (en) 1991-10-31 1994-11-22 Epoch Systems, Inc. Network file migration system
US5404505A (en) * 1991-11-01 1995-04-04 Finisar Corporation System for scheduling transmission of indexed and requested database tiers on demand at varying repetition rates
US6026452A (en) * 1997-02-26 2000-02-15 Pitts; William Michael Network distributed site cache RAM claimed as up/down stream request/reply channel for storing anticipated data and meta data
US5400402A (en) * 1993-06-07 1995-03-21 Garfinkle; Norton System for limiting use of down-loaded video-on-demand data
US5590199A (en) * 1993-10-12 1996-12-31 The Mitre Corporation Electronic information network user authentication and authorization system
US5528513A (en) * 1993-11-04 1996-06-18 Digital Equipment Corp. Scheduling and admission control policy for a continuous media server
ATE202439T1 (de) 1994-01-13 2001-07-15 Certco Inc Verschlüsselungseinrichtung und verfahren mit möglichkeit zur gesicherten zentralen schlüsselablage
US5539828A (en) 1994-05-31 1996-07-23 Intel Corporation Apparatus and method for providing secured communications
US5586264A (en) 1994-09-08 1996-12-17 Ibm Corporation Video optimized media streamer with cache management
US5610839A (en) * 1994-10-07 1997-03-11 Itt Corporation Communications management system architecture
US5715403A (en) * 1994-11-23 1998-02-03 Xerox Corporation System for controlling the distribution and use of digital works having attached usage rights where the usage rights are defined by a usage rights grammar
US5638443A (en) * 1994-11-23 1997-06-10 Xerox Corporation System for controlling the distribution and use of composite digital works
JPH08263438A (ja) * 1994-11-23 1996-10-11 Xerox Corp ディジタルワークの配給及び使用制御システム並びにディジタルワークへのアクセス制御方法
US6571279B1 (en) * 1997-12-05 2003-05-27 Pinpoint Incorporated Location enhanced information delivery system
US5654746A (en) 1994-12-01 1997-08-05 Scientific-Atlanta, Inc. Secure authorization and control method and apparatus for a game delivery service
US5729279A (en) 1995-01-26 1998-03-17 Spectravision, Inc. Video distribution system
US6157721A (en) 1996-08-12 2000-12-05 Intertrust Technologies Corp. Systems and methods using cryptography to protect secure computing environments
US6948070B1 (en) 1995-02-13 2005-09-20 Intertrust Technologies Corporation Systems and methods for secure transaction management and electronic rights protection
US7069451B1 (en) 1995-02-13 2006-06-27 Intertrust Technologies Corp. Systems and methods for secure transaction management and electronic rights protection
CN101303717B (zh) 1995-02-13 2015-04-29 英特特拉斯特技术公司 用于安全交易管理和电子权利保护的系统和方法
US5892900A (en) * 1996-08-30 1999-04-06 Intertrust Technologies Corp. Systems and methods for secure transaction management and electronic rights protection
US5867223A (en) * 1995-07-17 1999-02-02 Gateway 2000, Inc. System for assigning multichannel audio signals to independent wireless audio output devices
US5786587A (en) 1995-08-10 1998-07-28 American Bank Note Holographics, Inc. Enhancement of chip card security
US5815662A (en) * 1995-08-15 1998-09-29 Ong; Lance Predictive memory caching for media-on-demand systems
US5765152A (en) * 1995-10-13 1998-06-09 Trustees Of Dartmouth College System and method for managing copyrighted electronic media
US5829046A (en) 1995-10-27 1998-10-27 Emc Corporation On-line tape backup using an integrated cached disk array
US5903723A (en) * 1995-12-21 1999-05-11 Intel Corporation Method and apparatus for transmitting electronic mail attachments with attachment references
US5781901A (en) * 1995-12-21 1998-07-14 Intel Corporation Transmitting electronic mail attachment over a network using a e-mail page
CA2242596C (en) * 1996-01-11 2012-06-19 Mrj, Inc. System for controlling access and distribution of digital property
JPH09261617A (ja) * 1996-01-19 1997-10-03 Matsushita Electric Ind Co Ltd オンデマンド通信システム
DE69729495T2 (de) * 1996-03-08 2004-10-28 Matsushita Electric Industrial Co., Ltd., Kadoma Bildinformationsverarbeitungssystem und Mikroprozessor für die geschützte Reproduktion von audiovisuellen Daten
DE19610010A1 (de) * 1996-03-14 1997-09-18 Sel Alcatel Ag Einrichtung und Dienst zur Übertragung von Videobilddaten sowie Einrichtung zur Übertragung von Anforderungssignalen
US5905860A (en) * 1996-03-15 1999-05-18 Novell, Inc. Fault tolerant electronic licensing system
JPH09284746A (ja) * 1996-04-19 1997-10-31 Sony Corp 双方向情報伝送システムおよび双方向情報伝送方法
US5809242A (en) * 1996-04-19 1998-09-15 Juno Online Services, L.P. Electronic mail system for displaying advertisement at local computer received from remote system while the local computer is off-line the remote system
US6219708B1 (en) * 1996-05-30 2001-04-17 Multi-Tech Systems, Inc. System for network resource management
US5928327A (en) * 1996-08-08 1999-07-27 Wang; Pong-Sheng System and process for delivering digital data on demand
US6032200A (en) * 1996-09-30 2000-02-29 Apple Computer, Inc. Process scheduling for streaming data through scheduling of disk jobs and network jobs and the relationship of the scheduling between these types of jobs
US5937066A (en) * 1996-10-02 1999-08-10 International Business Machines Corporation Two-phase cryptographic key recovery system
US5909491A (en) 1996-11-06 1999-06-01 Nokia Mobile Phones Limited Method for sending a secure message in a telecommunications system
US6016348A (en) * 1996-11-27 2000-01-18 Thomson Consumer Electronics, Inc. Decoding system and data format for processing and storing encrypted broadcast, cable or satellite video data
US6185625B1 (en) * 1996-12-20 2001-02-06 Intel Corporation Scaling proxy server sending to the client a graphical user interface for establishing object encoding preferences after receiving the client's request for the object
US6049821A (en) * 1997-01-24 2000-04-11 Motorola, Inc. Proxy host computer and method for accessing and retrieving information between a browser and a proxy
US7062500B1 (en) 1997-02-25 2006-06-13 Intertrust Technologies Corp. Techniques for defining, using and manipulating rights management data structures
ATE345645T1 (de) 1997-03-21 2006-12-15 Canal Plus Technologies Rundfunk- und empfangssystem und bedingtes zugangssystem dafür
US6557104B2 (en) * 1997-05-02 2003-04-29 Phoenix Technologies Ltd. Method and apparatus for secure processing of cryptographic keys
US5983227A (en) 1997-06-12 1999-11-09 Yahoo, Inc. Dynamic page generator
US6219680B1 (en) * 1997-06-19 2001-04-17 International Business Machines Corporation System and method for building a web site for use in E-commerce with user specific pricing
US5993627A (en) * 1997-06-24 1999-11-30 Large Scale Biology Corporation Automated system for two-dimensional electrophoresis
IL121230A (en) 1997-07-03 2004-05-12 Nds Ltd Intelligent electronic program guide
US6038601A (en) * 1997-07-21 2000-03-14 Tibco, Inc. Method and apparatus for storing and delivering documents on the internet
FR2766942B1 (fr) 1997-07-31 1999-10-01 Gemplus Card Int Lecteur de carte a puce avec microcontroleur et composant de securite
US6278782B1 (en) 1997-09-16 2001-08-21 Safenet, Inc. Method of implementing a key recovery system
US6085193A (en) * 1997-09-29 2000-07-04 International Business Machines Corporation Method and system for dynamically prefetching information via a server hierarchy
JPH11120048A (ja) * 1997-10-20 1999-04-30 Fujitsu Ltd クライアント/サーバ分散システムにおけるデータキャッシング装置及び方法並びにデータキャッシングプログラムを記録した媒体
US6594682B2 (en) * 1997-10-28 2003-07-15 Microsoft Corporation Client-side system for scheduling delivery of web content and locally managing the web content
US7092914B1 (en) 1997-11-06 2006-08-15 Intertrust Technologies Corporation Methods for matching, selecting, narrowcasting, and/or classifying based on rights management and/or other information
US6289452B1 (en) * 1997-11-07 2001-09-11 Cybersource Corporation Method and system for delivering digital products electronically
US6167441A (en) 1997-11-21 2000-12-26 International Business Machines Corporation Customization of web pages based on requester type
AU2583099A (en) * 1998-02-04 1999-08-23 Sun Microsystems, Inc. Method and apparatus for efficient authentication and integrity checking using hierarchical hashing
EP0944256A1 (en) 1998-03-19 1999-09-22 Hitachi Europe Limited Copy protection apparatus and method
US6170014B1 (en) * 1998-03-25 2001-01-02 Community Learning And Information Network Computer architecture for managing courseware in a shared use operating environment
US5890900A (en) * 1998-04-22 1999-04-06 Ultradent Products, Inc. Dental wedge with non-slip head
US6141756A (en) 1998-04-27 2000-10-31 Motorola, Inc. Apparatus and method of reading a program into a processor
US6148340A (en) 1998-04-30 2000-11-14 International Business Machines Corporation Method and system for differencing container files
US6256637B1 (en) * 1998-05-05 2001-07-03 Gemstone Systems, Inc. Transactional virtual machine architecture
US6195433B1 (en) 1998-05-08 2001-02-27 Certicom Corp. Private key validity and validation
US6389460B1 (en) * 1998-05-13 2002-05-14 Compaq Computer Corporation Method and apparatus for efficient storage and retrieval of objects in and from an object storage device
US6052720A (en) * 1998-05-14 2000-04-18 Sun Microsystems, Inc. Generic schema for storing configuration information on a server computer
WO1999059058A1 (fr) * 1998-05-14 1999-11-18 Sega Enterprises, Ltd. Processeur d'informations, procede de traitement d'informations, support d'enregistrement d'informations et systeme de traitement d'informations
US6427238B1 (en) * 1998-05-29 2002-07-30 Opentv, Inc. Module manager for interactive television system
US6330566B1 (en) 1998-06-22 2001-12-11 Microsoft Corporation Apparatus and method for optimizing client-state data storage
JP4634547B2 (ja) 1998-06-30 2011-02-16 株式会社東芝 リアルタイム情報配信方法
US6751729B1 (en) 1998-07-24 2004-06-15 Spatial Adventures, Inc. Automated operation and security system for virtual private networks
US6226618B1 (en) * 1998-08-13 2001-05-01 International Business Machines Corporation Electronic content delivery system
US6826593B1 (en) 1998-09-01 2004-11-30 Lucent Technologies Inc. Computer implemented method and apparatus for fulfilling a request for information content with a user-selectable version of a file containing that information content
GB2341523B (en) 1998-09-12 2003-10-29 Ibm Apparatus and method for establishing communication in a computer network
US6412011B1 (en) * 1998-09-14 2002-06-25 At&T Corp. Method and apparatus to enhance a multicast information stream in a communication network
US6292899B1 (en) * 1998-09-23 2001-09-18 Mcbride Randall C. Volatile key apparatus for safeguarding confidential data stored in a computer system memory
US6563517B1 (en) 1998-10-02 2003-05-13 International Business Machines Corp. Automatic data quality adjustment to reduce response time in browsing
CN1224909C (zh) 1998-10-16 2005-10-26 松下电器产业株式会社 数字作品保护系统
US7174457B1 (en) 1999-03-10 2007-02-06 Microsoft Corporation System and method for authenticating an operating system to a central processing unit, providing the CPU/OS with secure storage, and authenticating the CPU/OS to a third party
US6338050B1 (en) * 1998-11-16 2002-01-08 Trade Access, Inc. System and method for providing and updating user supplied context for a negotiations system
US6574605B1 (en) * 1998-11-17 2003-06-03 Citibank, N.A. Method and system for strategic services enterprise workload management
US6014558A (en) 1998-12-28 2000-01-11 Northern Telecom Limited Variable rate optional security measures method and apparatus for wireless communications network
US6377972B1 (en) * 1999-01-19 2002-04-23 Lucent Technologies Inc. High quality streaming multimedia
US6892238B2 (en) 1999-01-27 2005-05-10 International Business Machines Corporation Aggregating and analyzing information about content requested in an e-commerce web environment to determine conversion rates
US6412008B1 (en) * 1999-01-28 2002-06-25 International Business Machines Corporation System and method for cooperative client/server customization of web pages
US6321209B1 (en) 1999-02-18 2001-11-20 Wired Solutions, Llc System and method for providing a dynamic advertising content window within a window based content manifestation environment provided in a browser
US6691312B1 (en) * 1999-03-19 2004-02-10 University Of Massachusetts Multicasting video
US7225333B2 (en) * 1999-03-27 2007-05-29 Microsoft Corporation Secure processor architecture for use with a digital rights management (DRM) system on a computing device
US6470378B1 (en) 1999-03-31 2002-10-22 Intel Corporation Dynamic content customization in a clientserver environment
JP3471654B2 (ja) * 1999-04-06 2003-12-02 富士通株式会社 ライセンスサーバ、著作権者システム、利用者システム、システム、記録媒体およびコンテンツ利用制御方法
US6920567B1 (en) * 1999-04-07 2005-07-19 Viatech Technologies Inc. System and embedded license control mechanism for the creation and distribution of digital content files and enforcement of licensed use of the digital content files
US6697948B1 (en) * 1999-05-05 2004-02-24 Michael O. Rabin Methods and apparatus for protecting information
US6654388B1 (en) 1999-05-26 2003-11-25 Larscom Incorporated Method and apparatus for automatically determining allocation of voice and data channels on T1/E1 line
US6500070B1 (en) 1999-05-28 2002-12-31 Nintendo Co., Ltd. Combined game system of portable and video game machines
US6704797B1 (en) * 1999-06-10 2004-03-09 International Business Machines Corporation Method and system for distributing image-based content on the internet
US6446113B1 (en) 1999-07-19 2002-09-03 Groove Networks, Inc. Method and apparatus for activity-based collaboration by a computer system equipped with a dynamics manager
US6526581B1 (en) * 1999-08-03 2003-02-25 Ucentric Holdings, Llc Multi-service in-home network with an open interface
US6371854B1 (en) * 1999-08-20 2002-04-16 Ninetendo Co., Ltd. Combined game system
EP1124350A1 (en) 1999-08-20 2001-08-16 Sony Corporation Information transmission system and method, drive device and access method, information recording medium, device and method for producing recording medium
CN1296846C (zh) * 1999-08-27 2007-01-24 索尼公司 信息发送系统、发送装置和发送方法与信息接收系统、接收装置和接收方法
US6760324B1 (en) 1999-09-10 2004-07-06 Array Telecom Corporation Method, system, and computer program product for providing voice over the internet communication
CA2322113A1 (en) 1999-10-04 2001-04-04 Pitney Bowes Inc. System and method for managing user permissions for accessing functionality of multiple software applications
US6993557B1 (en) * 1999-10-25 2006-01-31 Broadon Communications Corp. Creation of customized web pages for use in a system of dynamic trading of knowledge, goods and services
US6928551B1 (en) * 1999-10-29 2005-08-09 Lockheed Martin Corporation Method and apparatus for selectively denying access to encoded data
US6675350B1 (en) * 1999-11-04 2004-01-06 International Business Machines Corporation System for collecting and displaying summary information from disparate sources
US6397186B1 (en) 1999-12-22 2002-05-28 Ambush Interactive, Inc. Hands-free, voice-operated remote control transmitter
JP2001209583A (ja) * 2000-01-26 2001-08-03 Sony Corp データ記録再生器およびセーブデータ処理方法、並びにプログラム提供媒体
JP2001209586A (ja) 2000-01-26 2001-08-03 Toshiba Corp コンピュータにおけるコンテンツ管理装置及びコンテンツ管理方法
US6606644B1 (en) * 2000-02-24 2003-08-12 International Business Machines Corporation System and technique for dynamic information gathering and targeted advertising in a web based model using a live information selection and analysis tool
US7043641B1 (en) 2000-03-08 2006-05-09 Igt Encryption in a secure computerized gaming system
US6901386B1 (en) * 2000-03-31 2005-05-31 Intel Corporation Electronic asset lending library method and apparatus
JP2002011250A (ja) * 2000-04-25 2002-01-15 Nintendo Co Ltd ゲームシステムおよび携帯ゲーム機
US20020016818A1 (en) * 2000-05-11 2002-02-07 Shekhar Kirani System and methodology for optimizing delivery of email attachments for disparate devices
US7024394B1 (en) 2000-07-07 2006-04-04 International Business Machines Corporation System and method for protecting user logoff from web business transactions
JP2002024178A (ja) 2000-07-11 2002-01-25 Web I Inc コンテンツ認証システム、コンテンツ認証方法及び記録媒体
US20020059384A1 (en) * 2000-07-13 2002-05-16 Koninklijke Philips Electronics N.V. Substituting URL for attachment in forwarding electronic content
US7052396B2 (en) 2000-09-11 2006-05-30 Nintendo Co., Ltd. Communication system and method using pictorial characters
US6805629B1 (en) 2000-09-13 2004-10-19 Casino Data System Gaming device and method
US6785712B1 (en) * 2000-09-21 2004-08-31 Rockwell Collins, Inc. Airborne e-mail data transfer protocol
JP4470312B2 (ja) * 2000-10-10 2010-06-02 ソニー株式会社 サーバ装置、再生装置、データ配信方法、データ再生方法、記憶媒体
WO2002064228A2 (en) 2000-10-25 2002-08-22 Ngame Limited Adapting a game state to be compatible with a new version of a game
JP2002169620A (ja) * 2000-12-01 2002-06-14 Konami Co Ltd ゲーム装置の管理システム、ゲーム装置、制御方法、ソフトウェア記録媒体
US7168089B2 (en) * 2000-12-07 2007-01-23 Igt Secured virtual network in a gaming environment
US7127069B2 (en) * 2000-12-07 2006-10-24 Igt Secured virtual network in a gaming environment
US6811486B1 (en) 2000-12-20 2004-11-02 Sierra Design Group Method and apparatus for enhancing game play through savable game play state
CA2432589C (en) 2000-12-22 2008-12-02 Research In Motion Limited Wireless router system and method
US7092953B1 (en) * 2000-12-28 2006-08-15 Rightlsline, Inc. Apparatus and methods for intellectual property database navigation
US7774279B2 (en) * 2001-05-31 2010-08-10 Contentguard Holdings, Inc. Rights offering and granting
JP2004530185A (ja) 2001-02-01 2004-09-30 エイビーエヌ アムロ サービスィズ カンパニー,インコーポレイテッド 自動ライセンス設備のためのシステムおよび方法
US7330717B2 (en) 2001-02-23 2008-02-12 Lucent Technologies Inc. Rule-based system and method for managing the provisioning of user applications on limited-resource and/or wireless devices
US7134144B2 (en) 2001-03-01 2006-11-07 Microsoft Corporation Detecting and responding to a clock rollback in a digital rights management system on a computing device
PL373366A1 (en) 2001-03-12 2005-08-22 Koninklijke Philips Electronics N.V. Receiving device for securely storing a content item, and playback device
US7043637B2 (en) * 2001-03-21 2006-05-09 Microsoft Corporation On-disk file format for a serverless distributed file system
JP3392120B2 (ja) 2001-03-23 2003-03-31 任天堂株式会社 ゲーム装置及びそのプログラム
JP2002358460A (ja) 2001-03-27 2002-12-13 Art Connection:Kk ウェブサイト付加システム
US7584491B2 (en) 2001-04-25 2009-09-01 Sony Corporation System and method for managing interactive programming and advertisements in interactive broadcast systems
JP4691268B2 (ja) 2001-05-02 2011-06-01 任天堂株式会社 ゲームシステムおよびゲームプログラム
US6466048B1 (en) 2001-05-23 2002-10-15 Mosaid Technologies, Inc. Method and apparatus for switchably selecting an integrated circuit operating mode
US6976009B2 (en) 2001-05-31 2005-12-13 Contentguard Holdings, Inc. Method and apparatus for assigning consequential rights to documents and documents having such rights
US8099364B2 (en) * 2001-05-31 2012-01-17 Contentguard Holdings, Inc. Digital rights management of content when content is a future live event
US7421411B2 (en) * 2001-07-06 2008-09-02 Nokia Corporation Digital rights management in a mobile communications environment
US20030023427A1 (en) 2001-07-26 2003-01-30 Lionel Cassin Devices, methods and a system for implementing a media content delivery and playback scheme
EP1433037A2 (en) * 2001-08-06 2004-06-30 Matsushita Electric Industrial Co., Ltd. License management server, terminal device, license management system and usage restriction control method
US6811490B2 (en) * 2001-10-10 2004-11-02 Sony Computer Entertainment America Inc. System and method for saving game data
US7974923B2 (en) * 2001-11-20 2011-07-05 Contentguard Holdings, Inc. Extensible rights expression processing system
US7558759B2 (en) 2001-11-20 2009-07-07 Contentguard Holdings, Inc. Systems and methods for creating, manipulating and processing rights and contract expressions using tokenized templates
US20030120541A1 (en) * 2001-12-21 2003-06-26 Siann Jonathan I. Storage and delivery of electronic media content with advertising
US20030157985A1 (en) * 2002-02-19 2003-08-21 Koninklijke Philips Electronics N.V. Virtual IPR system in electronic game environment
US7197301B2 (en) 2002-03-04 2007-03-27 Telespree Communications Method and apparatus for secure immediate wireless access in a telecommunications network
CN103150492A (zh) * 2002-03-14 2013-06-12 康坦夹德控股股份有限公司 用于处理使用权利表达的方法和装置
JP4250089B2 (ja) * 2002-03-29 2009-04-08 パナソニック株式会社 コンテンツ再生装置およびコンテンツ再生制御方法
US20030220142A1 (en) 2002-05-21 2003-11-27 Mark Siegel Video Game controller with display screen
US7322044B2 (en) * 2002-06-03 2008-01-22 Airdefense, Inc. Systems and methods for automated network policy exception detection and correction
AUPS324802A0 (en) * 2002-06-27 2002-07-18 Borthwick, Frederick Kevin Graphical user interface for data acquisition, retrieval and communication
US7509683B2 (en) * 2002-08-26 2009-03-24 Hewlett-Packard Development Company, L.P. System and method for authenticating digital content
US7228567B2 (en) * 2002-08-30 2007-06-05 Avaya Technology Corp. License file serial number tracking
US20040054923A1 (en) * 2002-08-30 2004-03-18 Seago Tom E. Digital rights and content management system and method for enhanced wireless provisioning
CA2499524C (en) 2002-09-19 2011-02-01 Research In Motion Limited Apparatus and method of wireless instant messaging
US20040083388A1 (en) 2002-10-25 2004-04-29 Nguyen The Vinh Method and apparatus for monitoring data packets in a packet-switched network
US7757075B2 (en) * 2002-11-15 2010-07-13 Microsoft Corporation State reference
AU2003298320A1 (en) * 2002-12-19 2004-07-14 International Business Machines Corporation A method for providing of content data to a client
US7322042B2 (en) 2003-02-07 2008-01-22 Broadon Communications Corp. Secure and backward-compatible processor and secure software execution thereon
US8131649B2 (en) 2003-02-07 2012-03-06 Igware, Inc. Static-or-dynamic and limited-or-unlimited content rights
US7685254B2 (en) 2003-06-10 2010-03-23 Pandya Ashish A Runtime adaptable search processor
US20050071640A1 (en) * 2003-09-25 2005-03-31 General Instrument Corporation Method and apparatus for authenticating data
US9131272B2 (en) 2003-11-04 2015-09-08 Universal Electronics Inc. System and method for saving and recalling state data for media and home appliances
US20050122977A1 (en) 2003-12-05 2005-06-09 Microsoft Corporation Efficient download mechanism for devices with limited local storage
US7940932B2 (en) * 2004-04-08 2011-05-10 Texas Instruments Incorporated Methods, apparatus, and systems for securing SIM (subscriber identity module) personalization and other data on a first processor and secure communication of the SIM data to a second processor
US8908699B2 (en) 2004-04-16 2014-12-09 Broadcom Corporation Providing automatic format conversion via an access gateway in a home
KR100636169B1 (ko) 2004-07-29 2006-10-18 삼성전자주식회사 서로 다른 drm이 적용된 콘텐츠의 전송 및 재생 방법
KR100694064B1 (ko) 2004-10-08 2007-03-12 삼성전자주식회사 Drm 변환 방법 및 장치
US8332653B2 (en) * 2004-10-22 2012-12-11 Broadcom Corporation Secure processing environment
US7869593B2 (en) 2005-01-07 2011-01-11 First Data Corporation Software for providing based on shared knowledge public keys having same private key
US20060236122A1 (en) 2005-04-15 2006-10-19 Microsoft Corporation Secure boot
US7337147B2 (en) 2005-06-30 2008-02-26 Microsoft Corporation Dynamic digital content licensing
WO2007004219A2 (en) * 2005-07-04 2007-01-11 Discretix Technologies Ltd. System, device and method of verifying that a code is executed by a processor
US20070067826A1 (en) * 2005-09-19 2007-03-22 Texas Instruments Incorporated Method and system for preventing unsecure memory accesses
US8959339B2 (en) * 2005-12-23 2015-02-17 Texas Instruments Incorporated Method and system for preventing unauthorized processor mode switches
EP1916598A1 (fr) 2006-10-23 2008-04-30 Nagravision S.A. Méthode de chargement et de gestion d'une application dans un équipement mobile
US20080275750A1 (en) 2007-05-04 2008-11-06 Credit Suisse Securities (Usa) Llc Method and system for processing and communicating corporate action events

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10214233A (ja) * 1996-04-15 1998-08-11 Toshiba Corp 情報処理装置、情報処理システム、情報処理方法、プログラム記憶装置、及び鍵の判定方法及び判定装置
JP2000156676A (ja) * 1998-09-24 2000-06-06 Samsung Electronics Co Ltd デジタルコンテント用の安全配布システム
JP2000349751A (ja) * 1999-03-30 2000-12-15 Sony Corp 情報処理装置および方法、認証方法、並びにプログラム格納媒体
JP2001217822A (ja) * 2000-01-31 2001-08-10 Toshiba Corp 暗号化記録装置
WO2002080448A1 (fr) * 2001-03-29 2002-10-10 Sony Corporation Appareil de traitement de l'information
JP2004048676A (ja) * 2002-04-18 2004-02-12 Internatl Business Mach Corp <Ibm> 受信側に対して同期送信するために暗号化済みコンテンツにタイトル鍵を添付する方法、システム、およびプログラム
JP2005526451A (ja) * 2002-05-22 2005-09-02 トムソン ライセンシング ソシエテ アノニム 特にdvb/mpegデジタルストリームのための署名装置、認証装置、プロセス及び対応するプロダクト
JP2004240959A (ja) * 2003-01-14 2004-08-26 Matsushita Electric Ind Co Ltd コンテンツ再生装置、ライセンス発行サーバ及びコンテンツ再生システム
JP2005032130A (ja) * 2003-07-10 2005-02-03 Sony Corp データ管理装置、およびデータ管理方法、並びにコンピュータ・プログラム
JP2007515837A (ja) * 2003-11-21 2007-06-14 エリコス ピッツォス データ管理処理およびデータ配送処理において完全性および信頼を提供する方法およびシステム
JP2007512787A (ja) * 2003-12-11 2007-05-17 インテル・コーポレーション トラステッド・モバイル・プラットフォーム・アーキテクチャ

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CSNG200600929042; 新崎 裕隆 他: 'Merkle Hash TreeとIDAを利用したストリーミング認証方式の提案と評価' 情報処理学会研究報告 Vol.2006 No.81, 20060721, p.367〜374, 社団法人情報処理学会 *
JPN6012056404; 新崎 裕隆 他: 'Merkle Hash TreeとIDAを利用したストリーミング認証方式の提案と評価' 情報処理学会研究報告 Vol.2006 No.81, 20060721, p.367〜374, 社団法人情報処理学会 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012530983A (ja) * 2009-06-26 2012-12-06 トラステッド ロジック データ検証方法
JP2015046909A (ja) * 2010-03-05 2015-03-12 インターデイジタル パテント ホールディングス インコーポレイテッド 機器にセキュリティを提供する方法および装置
US9380024B2 (en) 2010-03-05 2016-06-28 Interdigital Patent Holdings, Inc. Method and apparatus for providing security to devices
JP2022506633A (ja) * 2018-11-09 2022-01-17 ホアウェイ・テクノロジーズ・カンパニー・リミテッド 無線アップグレード方法および関連装置
US11947673B2 (en) 2018-11-09 2024-04-02 Huawei Technologies Co., Ltd. Over-the-air upgrade method and related apparatus

Also Published As

Publication number Publication date
WO2008048403A3 (en) 2008-07-17
US20100031035A1 (en) 2010-02-04
EP2080311A4 (en) 2014-10-29
WO2008048403A2 (en) 2008-04-24
EP2080311A2 (en) 2009-07-22
EP2080311B1 (en) 2019-11-27
US7624276B2 (en) 2009-11-24
US7991999B2 (en) 2011-08-02
US20080091945A1 (en) 2008-04-17
JP5388855B2 (ja) 2014-01-15

Similar Documents

Publication Publication Date Title
JP5388855B2 (ja) セキュアデバイス認証システム及び方法
US7986786B2 (en) Methods and systems for utilizing cryptographic functions of a cryptographic co-processor
US9881182B2 (en) Programming on-chip non-volatile memory in a secure processor using a sequence number
US7181016B2 (en) Deriving a symmetric key from an asymmetric key for file encryption or decryption
KR101250065B1 (ko) 매니지어빌리티 엔진에 의한 기업 네트워크 싱글사인온을 위한 방법 및 시스템
WO2020192406A1 (zh) 数据存储、验证方法及装置
JP5180203B2 (ja) メモリ装置から供給される情報を制御するシステムおよび方法
US6986041B2 (en) System and method for remote code integrity in distributed systems
JP2013514587A (ja) 証明書失効リストを用いたコンテンツ管理方法
JP2010510574A (ja) セキュアデバイス・システムにおけるフラッシュメモリ・ブロックの保護と方法
WO2001093212A2 (en) Apparatus and methods for using a virtual smart card
TW200816767A (en) System and method for trusted data processing
Nyman et al. Citizen electronic identities using TPM 2.0
US7694154B2 (en) Method and apparatus for securely executing a background process

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100909

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20120627

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20120627

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121120

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20130220

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130227

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20130321

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130328

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130422

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: 20130910

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131008

R150 Certificate of patent or registration of utility model

Ref document number: 5388855

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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