JP5636371B2 - 汎用コンピューティングデバイスにおけるコード実行制御および再帰的セキュリティプロトコルでのコード実行制御のための方法およびシステム - Google Patents
汎用コンピューティングデバイスにおけるコード実行制御および再帰的セキュリティプロトコルでのコード実行制御のための方法およびシステム Download PDFInfo
- Publication number
- JP5636371B2 JP5636371B2 JP2011535761A JP2011535761A JP5636371B2 JP 5636371 B2 JP5636371 B2 JP 5636371B2 JP 2011535761 A JP2011535761 A JP 2011535761A JP 2011535761 A JP2011535761 A JP 2011535761A JP 5636371 B2 JP5636371 B2 JP 5636371B2
- Authority
- JP
- Japan
- Prior art keywords
- bitstream
- key
- hardware
- encryption
- execution
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 190
- 238000004422 calculation algorithm Methods 0.000 claims description 32
- 238000003860 storage Methods 0.000 claims description 16
- 230000006870 function Effects 0.000 description 136
- 239000002131 composite material Substances 0.000 description 74
- 230000007246 mechanism Effects 0.000 description 63
- 230000008569 process Effects 0.000 description 55
- 230000015654 memory Effects 0.000 description 44
- 238000012546 transfer Methods 0.000 description 40
- 239000010410 layer Substances 0.000 description 21
- 230000000694 effects Effects 0.000 description 20
- 230000008901 benefit Effects 0.000 description 17
- 238000012795 verification Methods 0.000 description 17
- 238000011156 evaluation Methods 0.000 description 16
- 230000001010 compromised effect Effects 0.000 description 15
- 230000009471 action Effects 0.000 description 14
- 238000004891 communication Methods 0.000 description 14
- 239000000243 solution Substances 0.000 description 11
- 238000009826 distribution Methods 0.000 description 10
- 238000007792 addition Methods 0.000 description 9
- 238000004364 calculation method Methods 0.000 description 8
- 230000008859 change Effects 0.000 description 8
- 238000012986 modification Methods 0.000 description 8
- 230000004048 modification Effects 0.000 description 8
- 238000012384 transportation and delivery Methods 0.000 description 8
- 238000013459 approach Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 7
- 230000000670 limiting effect Effects 0.000 description 6
- 238000007726 management method Methods 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 241000700605 Viruses Species 0.000 description 4
- 238000010276 construction Methods 0.000 description 4
- 238000013461 design Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000009191 jumping Effects 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 230000036961 partial effect Effects 0.000 description 3
- 230000008707 rearrangement Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000036962 time dependent Effects 0.000 description 3
- 230000002730 additional effect Effects 0.000 description 2
- 230000002411 adverse Effects 0.000 description 2
- 238000013475 authorization Methods 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 230000002085 persistent effect Effects 0.000 description 2
- 230000002441 reversible effect Effects 0.000 description 2
- 239000007858 starting material Substances 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000012550 audit Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000006227 byproduct Substances 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000010367 cloning Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 150000001875 compounds Chemical class 0.000 description 1
- 230000008094 contradictory effect Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 230000006378 damage Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000012854 evaluation process Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 238000007641 inkjet printing Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 230000003278 mimic effect Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 230000002829 reductive effect Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 239000002356 single layer Substances 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- 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/3236—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 cryptographic hash functions
-
- 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
-
- 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/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
- G06F21/125—Restricting unauthorised execution of programs by manipulating the program code, e.g. source code, compiled code, interpreted code, machine code
- G06F21/126—Interacting with the operating system
-
- 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/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
- G06F21/74—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information operating in dual or compartmented mode, i.e. at least one secure mode
-
- 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/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/065—Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
- H04L9/0656—Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0891—Revocation or update of secret information, e.g. encryption key update or rekeying
-
- 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/14—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
-
- 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/3247—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 involving digital signatures
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Technology Law (AREA)
- Multimedia (AREA)
- Mathematical Physics (AREA)
- Storage Device Security (AREA)
Description
この開示は、汎用コンピュータにおいて任意のコード実行を制御する方法に関する。具体的には、この開示は、コードの実行をコンピューティングデバイスとリンクさせて、コードの実行を制御する効果的な方法に関する。さらに、より具体的には、この開示は、再帰的セキュリティプロトコルの実装と併用してコードの実行を制御することに関する。
本明細書は、例えば、以下の項目も提供する。
(項目1)
終点デバイスでのコードの実行を制御する方法であって、
第1のビットストリームをデバイスにおいて受信することと、
該第1のビットストリームに対応する第1のキーを取得することであって、該第1のキーは、該第1のビットストリームをハッシュし、該ハッシュされた第1のビットストリームを暗号化することによって作成された、ことと、
該デバイス特有の第1の秘密キーにアクセスするように動作可能な該デバイスにおけるハードウェアを使用して該第1のビットストリームを認証することであって、該第1の秘密キーは、該デバイスのハードウェアの中に格納され、該デバイスがセキュアモードで実行しているときにアクセス可能であり、該第1のビットストリームを認証することは、
該第1のビットストリームをハッシュすることと、
該ハッシュされた第1のビットストリームを暗号化することによって第2のキーを生成することであって、該ハッシュされた第1のビットストリームの該暗号化は、該デバイスのハードウェアの中で行われ、該ハードウェアは、該デバイス特有の第1の秘密キーにアクセスすることを試み、該暗号化において該アクセスの結果を使用する、ことと、
該生成された第2のキーを該第1のキーと比較することと
を含む、ことと
を含み、該第2のキーと該第1のキーとが整合する場合、該プロセッサにおいて該第1のビットストリームをセキュア化モードで実行する、方法。
(項目2)
前記第1のビットストリームは、第1の暗号化エンジンを含み、該第1のビットストリームを実行することは、該第1の暗号化エンジンおよび前記デバイス特有の第1の秘密キーを使用して、該第1のビットストリームと関連付けられた暗号化されたデジタルコンテンツを復号化することを含み、該第1のビットストリームの実行は、セキュアモードで行われる、項目1に記載の方法。
(項目3)
前記第2のキーと前記第1のキーとが整合しない場合、
前記第1のビットストリームが暗号化されているか否かを決定することを含み、該第1のビットストリームが暗号化されているとき、
第2のビットストリームを取得することと、
該ハードウェアの中に格納される前記デバイス特有の第1の秘密キーにアクセスするように動作可能な前記デバイスにおける前記ハードウェアを使用して、該第2のビットストリームを認証することであって、該第2のビットストリームを認証することは、
該第2のビットストリームに対応する第3のキーを取得することであって、該第3のキーは、該第2のビットストリームをハッシュし、該ハッシュされた第2のビットストリームを暗号化することによって作成される、ことと、
該第2のビットストリームをハッシュすることと、
該ハッシュされた第2のビットストリームを暗号化することによって第4のキーを生成することであって、該ハッシュされた第2のビットストリームの該暗号化は、該デバイスのハードウェアの中で行われ、該ハードウェアは、該デバイス特有の第1の秘密キーにアクセスすることを試み、該暗号化において該アクセスの結果を使用する、ことと、
該生成された第4のキーを該第3のキーと比較することであって、該第4のキーと該第3のキーとが整合するとき、該第2のビットストリームを該プロセッサにおいてセキュア化モードで実行する、ことと
含む、ことと
を含む、項目2に記載の方法。
(項目4)
前記第2のビットストリームをハッシュすることは、前記第1のビットストリームから生成された前記第2のキーをシード値として利用する、項目3に記載の方法。
(項目5)
前記第2のビットストリームは、第2の暗号化エンジンを含み、該第2のビットストリームを実行することは、前記デバイス特有の第1の秘密キーを使用して、前記第1のビットストリームおよび該第2の暗号化エンジンを用いて暗号化されたデジタルコンテンツの両方を復号化することを含み、該第2のビットストリームの実行は、セキュアモードで行われる、項目3に記載の方法。
(項目6)
前記第2のビットストリームの認証および前記第2のビットストリームの実行は、前記第1のビットストリームの実行の前に行われる、項目5に記載の方法。
(項目7)
前記第2のビットストリームの実行後、前記第1のビットストリームの実行前に、該第1のビットストリームを認証することをさらに含む、項目6に記載の方法。
(項目8)
前記第1のビットストリーム、第2のビットストリーム、暗号化されるデジタルコンテンツ、第1のキー、および第3のキーは、メッセージの中に受信されており、該メッセージは、
該第1のビットストリームの第1の暗号化エンジンを用いて、該デジタルコンテンツを暗号化することと、
該第1のビットストリームをハッシュし、前記デバイス特有の第1の秘密キーを用いて、該ハッシュされた第1のビットストリームを暗号化することによって、該第1のキーを生成することと、
該第1のキーと第1のビットストリームと暗号化されたデジタルコンテンツとを関連付けることと、
該第2のビットストリームの第2の暗号化エンジンを用いて、該関連付けられた該第1のキーと第1のビットストリームと暗号化されたデジタルコンテンツとを暗号化することと、
該第2のビットストリームをハッシュし、該デバイス特有の第1の秘密キーを用いて、該ハッシュされた第2のビットストリームを暗号化することによって、該第3のキーを生成することと、
第1の復号化アルゴリズムを該第1の暗号化されたビットストリームと関連付けることと、
該第3のキーと第2のビットストリームと暗号化された関連付けられた第1のキーと第1のビットストリームと暗号化されたデジタルコンテンツとを関連付けることと
によって生成される、項目7に記載の方法。
(項目9)
コードの実行を制御するシステムであって、該システムは、
デバイスであって、
プロセッサと、
第1の秘密キーを格納する第1のハードウェアと、
第2のハードウェアであって、該プロセッサがセキュア化モードで実行しているときに、該第1の秘密キーにアクセスし、該第1の秘密キーを使用して、暗号化アルゴリズムを実装するように動作可能である第2のハードウェアと、
該プロセッサによって実行可能な命令を含むコンピュータ可読記憶媒体であって、該命令は、
第1のビットストリームを該デバイスにおいて受信することと、
該第1のビットストリームに対応する第1のキーを取得することであって、該第1のキーは、該第1のビットストリームをハッシュし、該ハッシュされた第1のビットストリームを暗号化することによって作成された、ことと、
該デバイスにおける該第2のハードウェアを使用して、該第1のビットストリームを認証することであって、該第1のビットストリームを認証することは、
該第1のビットストリームをハッシュすることと、
該ハッシュされた第1のビットストリームを暗号化することによって、第2のキーを生成することであって、該ハッシュされた第1のビットストリームの暗号化は、該デバイスの第2のハードウェアの中で行われ、該第2のハードウェアは、該デバイス特有の第1の秘密キーにアクセスすることを試み、該暗号化において該アクセスの結果を使用する、ことと、
該生成された第2のキーを該第1のキーと比較することと
を含む、ことと
該第2のキーと該第1のキーとが整合する場合、該プロセッサにおいて該第1のビットストリームをセキュア化モードで実行することと
を行うためのものである、コンピュータ可読記憶媒体と
を含む、デバイスを含む、システム。
(項目10)
前記第1のビットストリームは、第1の暗号化エンジンを含み、該第1のビットストリームを実行することは、該第1の暗号化エンジンおよび前記デバイス特有の第1の秘密キーを使用して、該第1のビットストリームと関連付けられ暗号化されたデジタルコンテンツを復号化することを含み、該第1のビットストリームの実行は、セキュアモードで行われる、項目9に記載のシステム。
(項目11)
前記第2のキーと前記第1のキーとが整合しない場合、前記命令は、
前記第1のビットストリームが暗号化されているか否かを決定することと、該第1のビットストリームが暗号化されているときは、
第2のビットストリームを取得することと、
該第1のハードウェアの中に格納される、前記デバイス特有の第1の秘密キーにアクセスするように動作可能である前記デバイスにおける前記第2のハードウェアを使用して、該第2のビットストリームを認証することであって、該第2のビットストリームを認証することは、
該第2のビットストリームに対応する第3のキーを取得することであって、該第3のキーは、該第2のビットストリームをハッシュし、該ハッシュされた第2のビットストリームを暗号化することによって生成される、ことと、
該第2のビットストリームをハッシュすることと、
該ハッシュされた第2のビットストリームを暗号化することによって、第4のキーを生成することであって、該ハッシュされた第2のビットストリームの暗号化は、該デバイスの該第2のハードウェアの中で行われ、該第2のハードウェアは、該デバイス特有の第1の秘密キーにアクセスすることを試み、該暗号化において該アクセスの結果を使用する、ことと、
該生成された第4のキーを該第3のキーと比較することと
を含む、ことと、
該第4のキーと該第3のキーとが整合する場合、前記プロセッサにおいて該第2のビットストリームをセキュア化モードで実行することと
を行うようにさらに動作可能である、項目10に記載のシステム。
(項目12)
前記第2のビットストリームをハッシュすることは、前記第1のビットストリームから生成された前記第2のキーをシード値として利用する、項目11に記載のシステム。
(項目13)
前記第2のビットストリームは、第2の暗号化エンジンを含み、該第2のビットストリームを実行することは、前記デバイス特有の第1の秘密キーを使用して、前記第1のビットストリームおよび該第2の暗号化エンジンを用いて前記暗号化されたデジタルコンテンツの両方を復号化することを含み、該第2のビットストリームの実行は、セキュアモードで行われる、項目11に記載のシステム。
(項目14)
前記第2のビットストリームの認証および前記第2のビットストリームの実行は、前記第1のビットストリームの実行の前に行われる、項目13に記載のシステム。
(項目15)
前記命令は、前記第2のビットストリームの実行後、前記第1のビットストリームの実行前に、該第1のビットストリームを認証するように動作可能である、項目14に記載のシステム。
(項目16)
前記第1のビットストリーム、第2のビットストリーム、暗号化されるデジタルコンテンツ、第1のキー、および第3のキーは、メッセージにおいて受信されており、該メッセージは、
該第1のビットストリームの第1の暗号化エンジンによって、該デジタルコンテンツを暗号化することと、
該第1のビットストリームをハッシュし、前記デバイス特有の第1の秘密キーを用いて該ハッシュされた第1のビットストリームを暗号化することによって、該第1のキーを生成することと、
該第1のキーと第1のビットストリームと暗号化されたデジタルコンテンツとを関連付けることと、
該第2のビットストリームの第2の暗号化エンジンを用いて、該関連付けられた該第1のキーと第1のビットストリームと暗号化されたデジタルコンテンツとを暗号化することと、
該第2のビットストリームをハッシュし、該デバイス特有の第1の秘密キーを用いて該ハッシュされた第2のビットストリームを暗号化することによって、第3のキーを生成することと、
第1の復号化アルゴリズムを該第1の暗号化されたビットストリームと関連付けることと、
該第3のキーと第2のビットストリームと暗号化され関連付けられた第1のキーと第1のビットストリームと暗号化されたデジタルコンテンツとを関連付けることと
によって生成される、項目15に記載のシステム。
(項目17)
終点デバイスにおけるコードの実行を制御するプロセッサによって実行可能な命令を含むコンピュータ可読媒体であって、
第1のビットストリームをデバイスにおいて受信することと、
該第1のビットストリームに対応する第1のキーを取得することであって、該第1のキーは、該第1のビットストリームをハッシュし、該ハッシュされた第1のビットストリームを暗号化することによって作成される、ことと、
デバイス特有の第1の秘密キーにアクセスするように動作可能である該デバイスにおけるハードウェアを使用して、該第1のビットストリームを認証することであって、該デバイス特有の第1の秘密キーは、該デバイスのハードウェアの中に格納され、該デバイスがセキュア化モードで実行しているときにアクセス可能であり、該第1のビットストリームを認証することは、
該第1のビットストリームをハッシュすることと、
該ハッシュされた第1のビットストリームを暗号化することによって、第2のキーを生成することであって、該ハッシュされた第1のビットストリームの暗号化は、該デバイスのハードウェアの中で行われ、該ハードウェアは、該デバイス特有の第1の秘密キーにアクセスすることを試み、該暗号化において該アクセスの結果を使用する、ことと、
該生成された第2のキーを該第1のキーと比較することと
を含む、ことと、
該第2のキーと該第1のキーとが整合する場合、該第1のビットストリームを該プロセッサにおいてセキュア化モードで実行することと
を行うための実行可能な命令を含む、コンピュータ可読媒体。
(項目18)
前記第1のビットストリームは、第1の暗号化エンジンを含み、該第1のビットストリームを実行することは、該第1の暗号化エンジンおよび前記デバイス特有の第1の秘密キーを使用して、該第1のビットストリームと関連付けられ暗号化されたデジタルコンテンツを復号化することを含み、該第1のビットストリームの実行は、セキュアモードで行われる、項目17に記載の方法。
(項目19)
前記第2のキーと前記第1のキーとが整合しない場合、前記命令は、
前記第1のビットストリームが暗号化されているか否かを決定することと、該第1のビットストリームが暗号化されている場合、
第2のビットストリームを取得することと、
前記ハードウェアの中に格納される前記デバイス特有の第1の秘密キーにアクセスするように動作可能である前記デバイスにおける該ハードウェアを使用して、該第2のビットストリームを認証することであって、該第2のビットストリームを認証することは、
該第2のビットストリームに対応する第3のキーを取得することであって、該第3のキーは、該第2のビットストリームをハッシュし、該ハッシュされた第2のビットストリームを暗号化することによって作成される、ことと、
該第2のビットストリームをハッシュすることと、
該ハッシュされた第2のビットストリームを暗号化することによって、第4のキーを生成することであって、該ハッシュされた第2のビットストリームの暗号化は、該デバイスのハードウェアの中で行われ、該ハードウェアは、該デバイス特有の第1の秘密キーにアクセスすることを試み、該暗号化において該アクセスの結果を使用する、ことと、
該生成された第4のキーを該第3のキーと比較することと
を含む、ことと、
該第4のキーと該第3のキーとが整合する場合、該第2のビットストリームを該プロセッサにおいてセキュア化モードで実行することと
を行うようにさらに動作可能である、項目18に記載のコンピュータ可読媒体。
(項目20)
前記第2のビットストリームをハッシュすることは、前記第1のビットストリームから生成された前記第2のキーをシード値として利用する、項目19に記載のコンピュータ可読媒体。
(項目21)
前記第2のビットストリームは、第2の暗号化エンジンを含み、該第2のビットストリームを実行することは、前記デバイス特有の第1の秘密キーを使用して、該第1のビットストリームおよび該第2の暗号化エンジンを用いて前記暗号化されたデジタルコンテンツの両方を復号化することを含み、該第2のビットストリームの実行は、セキュアモードで行われる、項目19に記載のコンピュータ可読媒体。
(項目22)
前記第2のビットストリームの認証および前記第2のビットストリームの実行は、前記第1のビットストリームの実行の前に行われる、項目21に記載のコンピュータ可読媒体。
(項目23)
前記前記第2のビットストリームの実行後、前記第1のビットストリームの実行前に、該第1のビットストリームを認証することをさらに含む、項目22に記載のコンピュータ可読媒体。
(項目24)
前記第1のビットストリーム、第2のビットストリーム、暗号化されたデジタルコンテンツ、第1のキー、および第3のキーは、メッセージにおいて受信されており、該メッセージは、
該第1のビットストリームの第1の暗号化エンジンを用いて、該デジタルコンテンツを暗号化することと、
該第1のビットストリームをハッシュし、前記デバイス特有の第1の秘密キーを用いて、該ハッシュされた第1のビットストリームを暗号化することによって、該第1のキーを生成することと、
該第1のキーと第1のビットストリームと暗号化されたデジタルコンテンツとを関連付けることと、
該第2のビットストリームの第2の暗号化エンジンを用いて、該関連付けられた第1のキーと第1のビットストリームと暗号化されたデジタルコンテンツとを暗号化することと、
該第2のビットストリームをハッシュし、該デバイス特有の第1の秘密キーを用いて該ハッシュされた第2のビットストリームを暗号化することによって、第3のキーを生成することと、
第1の復号化アルゴリズムを該第1の暗号化されたビットストリームと関連付けることと、
該第3のキーと第2のビットストリームと暗号化され関連付けられた第1のキーと第1のビットストリームと暗号化されたデジタルコンテンツとを関連付けることと
によって生成される、項目23に記載のコンピュータ可読媒体。
市販のデジタルコンテンツ送達システムの大部分は、デジタルメディアデータが自由に複製および配信されることを保護しようとする、ある形式の暗号化またはデータ隠蔽を含む。大部分の場合、データ隠蔽戦略は、最終的には、コンテンツ保護の完全に非効果的な手段であることがわかる。この隠蔽が不成功であることがわかる主要な理由の1つは、曝露から保護されるべきまさにそのデータが、それでもなお、任意の承認された当事者による使用に対して自由に利用可能でなければならないことである。したがって、一見矛盾した要件集合が、デジタルコンテンツの配信には存在する。
特定のコードセグメントが、所与のプロセッサにおいてセキュアに実行されることを保証するための方法は、長年、広範囲に研究されている。セキュアなコード実行の保護をもたらすための以前の試みのいくつかとして、「特権的」命令集合を確立するために、プロセッサアーキテクチャに書換えを行うことが挙げられる。これらの特権的命令は、プロセッサが「監視者」または「カーネル」モードとして知られる、特定のモードで起動中にのみ、これらの特権的命令が実行可能であるようにアーキテクチャを設計することによってセキュア化されていた。この種類のプロセッサアーキテクチャの分岐は、プロセッサの汎用性の潜在的損失だけではなく、潜在的性能の劣化を含むいくつかの欠点を有する。これらの欠点に加え、そのような保護手段は、多くの場合、プロセッサが監視者モードで実行中、想定外の実行パスを利用するように、標準システムルーチンに対して、特異的に設計されたソフトウェア読み出しを使用することによって迂回可能である。そのような特異的に設計されたマルウェア攻撃の実施例として、いわゆる「スタックオーバーフロー」、「スタックオーバーラン」、および「コードインジェクション」攻撃が挙げられる。
一実施形態では、再帰は、所与のコードセグメントのメッセージダイジェストが、コードセグメント自体とともに供給されたものと整合すると、終了するように信号伝達可能である。この方法論は、メッセージダイジェストが、ハードウェアハッシュ関数によって計算される場合、攻撃に対してよりロバストになり得る。また、ある実施形態では、デジタル署名が利用されてもよい。デジタル署名メカニズムは、1)コードセグメントが改ざんされていないことの保証と、2)コードセグメント著者の即時識別の少なくとも2つの主要属性を提供する潜在性を有する。しかしながら、そのようなデジタル署名が、公的に可視または書換え可能場所にキャッシュされる実施形態の場合、デジタル署名自体が、任意の時間に書き換えられ、したがって、必ずしも、本物ではない可能性があるので、付加的セキュリティが望ましいであろう。したがって、これらの種類の実施形態においては、公開キーシステムを使用して、デジタル署名を照合してもよく、または複合キー構造(上述のように)を使用して、当該コードセグメントを備えるデジタル署名が、標的ユニットの秘密キーを所有していたある当事者によって作成されていることを保証してもよい。後者の場合、また、複合キーの使用は、単一終点またはある終点集合に限定されてもよい。加えて、公開キーだけではなく、複合キーアプローチの両方を併用してもよい。その態様では、コードセグメントが本物であることだけではなく、コードセグメントが複合デジタル署名の受信者のために意図されたものであることの両方を保証可能である。
システムが、上述のように、構造上不可視である秘密キーの1つを利用する実施形態では、そのようなキーを利用するコードは、これらの秘密キーが危殆化されることを防止するように設計されなければならない。上述のように、セキュア化コード結合メカニズムを使用して未承認態様で使用される際に、特定の終点デバイスにおいてその他の点では合法であるコードブロックの正確な実行を防止可能である。
(付属書A)
本発明ならびにその種々の特徴および利点の詳細は、付随の図面に例示され、以下の説明に詳述される、非限定的な実施形態を参照してより完全に説明される。周知の開始材料、処理技術、構成要素、および機器の説明は、本発明を細部において不必要に曖昧にしないように省略される。しかしながら、発明を実施するための形態および特有の実施例は、本発明の好ましい実施形態を示すが、限定としてではなく、例示のみとして与えられることを理解されたい。根底にある発明の概念の精神および/または範囲内における、種々の代用、修正、追加、および/または再配設は、この開示から、当業者には明白となるであろう。
公正使用(「時間シフト」、「空間シフト」、および保存用バックアップ)
増分アップグレード
所有権の一時的譲渡
所有権の永久譲渡
時間制限アクセス
使用制限アクセス(使用回数)
デバイス特有の使用許諾権の取消
データまたはストリーム特有の使用許諾権の取消
を含む(しかしながら、それらに限定されない)。
セキュリティプロトコルの実施形態は、ある1本のソフトウェアの著者が、それらのコードが、そのアルゴリズムのコピーまたは別様に不正流用を所望する者による分解から保護されているという十分な信頼性を持てるように設計される。また、本コードが、その機能を改変しようとする者による書換えから保護するように設計される。これらの主要特徴が、その他の点では汎用であるコンピューティングシステム内に実装可能である方法の1つは、以下のセクションで論じられる。これらの2つの主要機能の副産物として生じる付加的特性は、ソフトウェアが起動可能な条件(すなわち、コードを実行可能な時、方法、および機械または複数の機械)を制御する能力である。これらの機能の第1は、改ざん防止タイマ要素をシステムに追加することによって達成されてもよい。その他は、当該コードブロックを実行するために満たされなければならない所望の条件を示すために使用されるセキュアなデータ構造を実装することによって達成される。このデータ構造は、ハードウェア特有ではないので、種々の方法において使用可能であって、それを解釈するために使用されるソフトウェアをアップデートすることによって書換え可能である。プロトコルをより効率的に実装するために利用されるハードウェア特有の特徴について論じられ、これらの特徴が、どのようにプロトコルをサポートするために利用可能であるかの実施例が与えられる。最後に、プロトコルが、どのように使用され、著作権のある作品を保護可能であるかを示す。
次に図1を参照すると、このセキュリティプロトコルを実行可能なデバイスの例示的全体のブロック図が示される。セキュリティプロトコルシステムの要素として、プロトコルエンジン(また、「標的ユニット」としても知られる)100上において、セキュアな態様がプロトコルを実装するハードウェアブロック集合を含んでもよい。これらのブロックは、プロトコルが正確に動作するために、ハードウェア内でキャストされる必要がない。しかしながら、後述のハードウェア要素のすべてを含むデバイスは、最小オーバーヘッドによってプロトコルを実装可能であろう。
各プロトコルエンジン(「標的」ユニット)100は、オンチップとして格納される、2つの秘密キー定数集合104を有してもよい(いずれも、ソフトウェア不可読値)。これらのキーの第1(一次秘密キー)は、実際には、秘密キー集合として編成可能であって、その1つのみ、任意の特定の時間に可読である。ユニットの「所有権」が変更される(例えば、プロトコルエンジンを含有する機械が販売されるか、またはその所有権が別様に譲渡される)場合、現在アクティブな一次秘密キーは、「消去」あるいは異なる値によって上書きされてもよい。この値は、セキュアな方法でユニット譲渡可能であるか、またはこの第1のキーが消去されるときにのみ使用されるような方法で、ユニット内に既に格納されていることが可能である。事実上、これは、その所有権が変更されるときか、またはそのような変更に対するある他の理由が存在する場合(危殆化キー等)、新しい一次秘密キーをその特定のユニットに発行することに相当する。この一次秘密キー値(または、値集合)が格納される唯一の他の場所は、中央サーバ上である。
セキュリティプロトコルの実施形態が動作する態様は、システム初期化、セキュアなコード生成および一斉配信、セキュアなコードロードおよび実行、キーリストデータ構造構築、一時的使用許諾権譲渡、永久使用許諾権譲渡、システム所有権譲渡、使用許諾権の取消、およびセキュリティシステムアップデートと、いくつかの離散プロセスに分解可能である。これらは、それぞれ、次に論じられる。しかしながら、後述の実施例は、議論の簡略化を目的として選択され、必ずしも、このプロトコルを実装可能な最も効率的な(または、唯一の)態様であるわけではないことに留意されたい。
これは、標的ユニットの秘密キー104が、ある初期値に設定されるステップである。この手順は、いくつかの場所の1つ内で達成可能である(2つの秘密キーのいずれかの場合、論理的理由を別にすれば、通し番号または秘密キーが、可能性として変更され得る、アセンブリプロセス内の最終ステップであるべきである)。ユニット100の通し番号が、オフチップとして格納される場合、この手順は、最終アセンブリの時点で行われる可能性が高い。ユニットのための通し番号106が、オンチップとして格納される場合、任意の生産後またはバーンイン副産物が、非機能部分から選別される機会を有するように、チップ製造プロセスの最終時点で(すなわち、チップがパッケージ化された後に)、この手順を行うことが最も実践的であろう。このようにして、セキュアに維持しなければならないデータの量が最小となる。プロトコル全体のセキュリティは、ユニットの秘密キー104のものに基づき得るため、初期化手順は、物理的セキュリティが可能な時点で行われるべきである。
図5を簡単に参照すると、例示的シナリオでは、開発者520は、合理的に、分解を受けるおそれがなく、特有のデバイス上でのみ実行可能である、このプロトコル下で起動するためのアプリケーションを生成することを所望すると仮定する。各登録開発者520は、使用許諾権限者のサーバと通信するだけではなく、任意の公開コードブロックまたは他のビットストリームを認証するために使用可能な署名されたメッセージ認証コードまたはMAC(一般的には、デジタル署名と呼ばれる)を作成するために使用する、任意のメッセージを認証するために使用される、公開キー/個人キーの対を有するであろう。
配信メカニズムが、実際のディスクを介して達成される場合、消費者は、従来のソフトウェア購入と正確に同一態様において、アプリケーションを含有するディスクを購入可能である。当然ながら、エンドユーザは、「標的」ユニットのプロセッサ上で書き換えられていない暗号化されたコードブロックを起動することは不可能であろう。ユーザが、それらの機械上でアプリケーションを起動しようとすると、CPU120は、暗号化されたソフトウェアブロックをロードし、コードブロックの末端に格納されたデジタル署名(「署名された」MAC)とともに、ソフトウェア開発者の公開キーを使用して、当該コードブロックが本物であることを照合する。ここで、その他の点では汎用であるCPU120への最初のハードウェア書換えが、作用し始め得る。セキュア化コードのそのようなブロックをロードおよび復号化するためのプロセスは、図4に示される。
次に図6を参照すると、特定の標的デバイス100に使用許諾されているアプリケーションまたはメディア特有のキーのリストを含有するデータ構造610は、有益な利点であって、したがって、所有者によってバックアップ可能であるべきである。個々のキーは、標的の二次秘密キーによって暗号化されているため(上述のように)、リストは、キーが使用許諾されているユニットに対してのみ有用である。しかしながら、このデータ構造610が、改ざん、破損、および/または完全な損失に対してセキュアであることが、確証可能である必要がある。キーリストデータ構造が損失される場合、データ構造610全体が、上述のように、使用許諾権限者510から、その特定の標的デバイス100のためのキーリストの新しいコピーを要求することによって復元可能である。一時的変化がキーリストデータ構造に成される場合(そのようなシナリオの理由については、以下のセクションにおいて論じる)、プロトコルは、そのような変化を一時的として識別するための手段を講じてもよい。最後に、キーリストデータ構造610の真正性、適時性、および有効性を検証するためのある改ざん防止メカニズムを含む。
これは、タイムスタンプフィールド230の使用が、最も重要である、セキュリティプロトコルのセクションの1つである。上述のように、一時的キーリストデータ構造は、標的デバイスの永久キーリストと正確に同一態様で構築される。しかしながら、2つには、いくつかの差異が存在する。第1の差異は、一時的キーリストが、潜在的に、標的ユニットの秘密キー104のいずれか1つによって暗号化可能なことである。使用許諾権限者510は、通常環境下、このデータ構造を再構築可能である必要はないため、表面上は、どの標的ユニットのキーが、それを暗号化するために使用されるかは関係ない。しかしながら、潜在的に、このリストが、また、標的ユニットの一次秘密キーを使用して暗号化される場合は、使用許諾権限者510に有用となるであろう。これに対する理由は、使用許諾権の取消と関係があり、その環境については、後のセクションで論じられる。
この手順の要素の多くは、本書の上述のセクションにおいて論じられた。特有のキーが、あるユニットから別のユニットに永久に譲渡される基本的プロセスは、図5において上述された。多くの方法では、この手順は、直前のセクションに説明されるように、キー所有権の一時的譲渡に本質的に類似する。
標的ユニット100の使用許諾権(または、キー)の1つ以上が取り消され得る、いくつかの異なる手段が存在する。最も簡単な方法は、単に、標的100の一次秘密キーをアップデートすることである。次いで、この時点で、標的100は、その永久キーリストへのアクセスが不可能となり、したがって、新しいリストを作成するプロセスを開始しなければならないであろう。一次秘密キーが、一時的キーリストデータ構造のための暗号化プロセスで使用されない場合、この一時的キーリストは、潜在的に、依然として、アクセス可能であるが、永久キーリストは、別様にはアクセス不可能であり得ることに留意されたい。
必ずしも、プロトコル自体の一部ではないが、それでもなお、本明細書に説明されるプロトコルを適切に実行可能な実践的システムを作製するプロセスにおいて解決されなければならない、いくつかの問題が存在する。これらの問題の一部は、実際のプロセッサデバイス実装に依存し、その他は、大部分が、アプリケーション特有のものである。この情報は、好適な標的デバイス100の適切な構築に密接な関係があるため、これらの問題の一部については、以下のセクションで論じられる。
著作権保有者が、主要標的が所有権を一時的に譲渡可能なデバイスの総数を限定することを所望する場合、これは、任意のある時間にアクティブとなり得る、限定数の公開/個人キー対を確立することによって達成されてもよい。これは、上述のセクションで説明された、同一アプリケーション特有のキーの複数のコピーが、同時に「貸与」される場合と異なることに留意されたい。特定の標的デバイス100からアプリケーション特有のキーのいずれかを「借用」可能なデバイスのリストが、ある通し番号集合に限定可能であるという、他のシナリオも可能である。使用許諾権限者510は、標的ユニット100のセキュリティシステムが管理されるのと正確に同一態様において、そのような「承認された借り手」リストを運営可能である。したがって、使用許諾権限者510は、例えば、「承認された借り手」リスト上の通し番号集合を、オリジナル標的デバイス100と同一所有権情報を有する者に限定可能である。この問題に対する別の可能性のある解決策は、中央使用許諾権限者510の公開キーによって証明書を復号化することによってのみ照合可能である、資格証明書(署名された証明書等)を貸し手に提示することによって、任意の「借り手」デバイス720が「権限のある」借り手として照合されることを要求することである。また、このシナリオは、当然ながら、使用許諾権限者510が、特定のユニットが危殆化されていると決定される場合、そのような証明書を取り消す能力も伴うであろう。この証明書取消プロセスが達成され得る、周知の方法の1つとして、定期的に公開される「取消リスト」を介して達成可能である。
特定のプレーヤのための一次秘密キーが、物理的分解およびチップダイ検証によって発見される場合、各デバイスは、個別の秘密キー104集合を有するため、これは、任意の他のデバイスのセキュリティを危殆化することにはならないはずである。しかしながら、特定のプレーヤのための一次キーが、何らかの形で危殆化される場合、潜在的に、使用許諾がないデバイスは、合法標的ユニットになりすますことが可能である。この問題が検出されない場合、この知識を備えた使用許諾がないデバイスは、その特定の標的ユニットに発行されたアプリケーション特有の復号化キーのいずれかを危殆化させ得る可能性が存在する。最初に、標的ユニット100の通し番号106は、使用許諾権限者510が、復号化キーをデバイスに発行するために、登録される必要があるため、この目的に関する問題は、表面上は、使用許諾がないデバイスによる、その他の点では合法である標的ユニット100の模倣に限定されるであろう。
上述の著作権保護プロトコルは、いくつかの点において、一意的である。第1は、ユーザが、それらの法的に購入されたアプリケーションまたはメディア特有のキーデータのバックアップコピーを作成する能力を禁止しようとしないという事実である。2つ目は、このプロトコルが、任意の種類のデジタルデータを区別せず、したがって、セキュリティプロトコルを保護するように設計されるデータストリームとして、容易にアップデート可能であることである。3つ目は、このプロトコルによって、ユーザは、それらのアプリケーションまたはメディア特有のキーの所有権を、プロトコルを実行可能な別のユニットに一時的に譲渡可能となることである。また、このプロトコルは、被許諾者に、ある標的ユニット100から別のユニットに所有権の永久譲渡を発効させるための能力を提供する。この最後の特性によって、このプロトコル下の消費者の法的「一次販売権」の実装が可能となる。
Claims (21)
- 終点デバイスでのコードの実行を制御する方法であって、
該方法は、
第1のビットストリームをデバイスにおいて受信することと、
該第1のビットストリームに対応する第1のキーを取得することであって、該第1のキーは、該第1のビットストリームをハッシュし、対称関数を使用して該ハッシュされた第1のビットストリームを暗号化することによって作成されたものである、ことと、
該デバイスに特有の第1の秘密キーにアクセスするように動作可能な該デバイスにおけるハードウェアを使用して該第1のビットストリームを認証することであって、該第1の秘密キーは、該デバイスのハードウェアの中に格納され、該デバイスがセキュア化モードで実行しているときにアクセス可能であり、該第1のビットストリームを認証することは、
該第1のビットストリームをハッシュすることと、
該ハッシュされた第1のビットストリームを暗号化することによって第2のキーを生成することであって、該ハッシュされた第1のビットストリームの該暗号化は、該デバイスのハードウェアの中で行われ、該ハードウェアは、該デバイスに特有の第1の秘密キーにアクセスすることを試み、該暗号化において該アクセスの結果を使用する、ことと、
該生成された第2のキーを該第1のキーと比較することと
を含む、ことと、
該第2のキーと該第1のキーとが整合する場合、該デバイスにおいて該第1のビットストリームをセキュア化モードで実行することであって、該第1のビットストリームは、第1の暗号化エンジンを含み、該第1のビットストリームを実行することは、該第1の暗号化エンジンおよび該デバイスに特有の第1の秘密キーを使用して、該第1のビットストリームと関連付けられた暗号化されたデジタルコンテンツを復号化することを含み、該第1のビットストリームの実行は、セキュア化モードで行われる、ことと、
該第2のキーと該第1のキーとが整合しない場合、該第1のビットストリームが暗号化されているか否かを決定し、該第1のビットストリームが暗号化されているとき、
第2のビットストリームを取得することと、
該ハードウェアの中に格納される該デバイスに特有の第1の秘密キーにアクセスするように動作可能な該デバイスにおける該ハードウェアを使用して、該第2のビットストリームを認証することであって、該第2のビットストリームを認証することは、
該第2のビットストリームに対応する第3のキーを取得することであって、該第3のキーは、該第2のビットストリームをハッシュし、該ハッシュされた第2のビットストリームを暗号化することによって作成されたものである、ことと、
該第2のビットストリームをハッシュすることであって、該第2のビットストリームをハッシュすることは、該第1のビットストリームから生成された該第2のキーをシード値として利用する、ことと、
該ハッシュされた第2のビットストリームを暗号化することによって第4のキーを生成することであって、該ハッシュされた第2のビットストリームの該暗号化は、該デバイスのハードウェアの中で行われ、該ハードウェアは、該デバイスに特有の第1の秘密キーにアクセスすることを試み、該暗号化において該アクセスの結果を使用する、ことと
を含む、ことと、
該生成された第4のキーを該第3のキーと比較することと
を実行することと、
該第4のキーと該第3のキーとが整合するとき、該第2のビットストリームを該デバイスにおいてセキュア化モードで実行することと
を含む、方法。 - 終点デバイスでのコードの実行を制御する方法であって、
該方法は、
第1のビットストリームをデバイスにおいて受信することと、
該第1のビットストリームに対応する第1のキーを取得することであって、該第1のキーは、該第1のビットストリームをハッシュし、対称関数を使用して該ハッシュされた第1のビットストリームを暗号化することによって作成されたものである、ことと、
該デバイスに特有の第1の秘密キーにアクセスするように動作可能な該デバイスにおけるハードウェアを使用して該第1のビットストリームを認証することであって、該第1の秘密キーは、該デバイスのハードウェアの中に格納され、該デバイスがセキュア化モードで実行しているときにアクセス可能であり、該第1のビットストリームを認証することは、
該第1のビットストリームをハッシュすることと、
該ハッシュされた第1のビットストリームを暗号化することによって第2のキーを生成することであって、該ハッシュされた第1のビットストリームの該暗号化は、該デバイスのハードウェアの中で行われ、該ハードウェアは、該デバイスに特有の第1の秘密キーにアクセスすることを試み、該暗号化において該アクセスの結果を使用する、ことと、
該生成された第2のキーを該第1のキーと比較することと
を含む、ことと、
該第2のキーと該第1のキーとが整合する場合、該デバイスのプロセッサにおいて該第1のビットストリームをセキュア化モードで実行することであって、該第1のビットストリームは、第1の暗号化エンジンを含み、該第1のビットストリームを実行することは、該第1の暗号化エンジンおよび該デバイスに特有の第1の秘密キーを使用して、該第1のビットストリームと関連付けられた暗号化されたデジタルコンテンツを復号化することを含み、該第1のビットストリームの実行は、セキュア化モードで行われる、ことと、
該第2のキーと該第1のキーとが整合しない場合、該第1のビットストリームが暗号化されているか否かを決定し、該第1のビットストリームが暗号化されているとき、
第2のビットストリームを取得することであって、該第2のビットストリームは、第2の暗号化エンジンを含む、ことと、
該ハードウェアの中に格納される該デバイスに特有の第1の秘密キーにアクセスするように動作可能な該デバイスにおける該ハードウェアを使用して、該第2のビットストリームを認証することであって、該第2のビットストリームを認証することは、
該第2のビットストリームに対応する第3のキーを取得することであって、該第3のキーは、該第2のビットストリームをハッシュし、該ハッシュされた第2のビットストリームを暗号化することによって作成されたものである、ことと、
該第2のビットストリームをハッシュすることと、
該ハッシュされた第2のビットストリームを暗号化することによって第4のキーを生成することであって、該ハッシュされた第2のビットストリームの該暗号化は、該デバイスのハードウェアの中で行われ、該ハードウェアは、該デバイスに特有の第1の秘密キーにアクセスすることを試み、該暗号化において該アクセスの結果を使用する、ことと
を含む、ことと、
該生成された第4のキーを該第3のキーと比較することと、
該第4のキーと該第3のキーとが整合するとき、該第2のビットストリームを該プロセッサにおいてセキュア化モードで実行することであって、該第2のビットストリームを実行することは、該デバイスに特有の第1の秘密キーを使用して、該第2の暗号化エンジンを用いて暗号化されたデジタルコンテンツおよび該第1のビットストリームの両方を復号化することを含む、ことと
を実行することと
を含む、方法。 - 前記第2のビットストリームの認証および前記第2のビットストリームの実行は、前記第1のビットストリームの実行の前に行われる、請求項2に記載の方法。
- 前記第2のビットストリームの実行後、前記第1のビットストリームの実行前に、該第1のビットストリームを認証することをさらに含む、請求項3に記載の方法。
- 前記第1のビットストリーム、第2のビットストリーム、暗号化されたデジタルコンテンツ、第1のキー、および第3のキーは、メッセージの中に受信されており、該メッセージは、
該第1のビットストリームの第1の暗号化エンジンを用いて、該デジタルコンテンツを暗号化することと、
該第1のビットストリームをハッシュし、前記デバイスに特有の第1の秘密キーを用いて、該ハッシュされた第1のビットストリームを暗号化することによって、該第1のキーを生成することと、
該第1のキーと第1のビットストリームと暗号化されたデジタルコンテンツとを関連付けることと、
該第2のビットストリームの第2の暗号化エンジンを用いて、該関連付けられた該第1のキーと第1のビットストリームと暗号化されたデジタルコンテンツとを暗号化することと、
該第2のビットストリームをハッシュし、該デバイスに特有の第1の秘密キーを用いて、該ハッシュされた第2のビットストリームを暗号化することによって、該第3のキーを生成することと、
第1の復号化アルゴリズムを該第1の暗号化されたビットストリームと関連付けることと、
該第3のキーと第2のビットストリームと暗号化された関連付けられた第1のキーと第1のビットストリームと暗号化されたデジタルコンテンツとを関連付けることと
によって生成される、請求項4に記載の方法。 - コードの実行を制御するシステムであって、該システムは、デバイスを含み、
該デバイスは、
プロセッサと、
第1の秘密キーを格納する第1のハードウェアと、
第2のハードウェアであって、該プロセッサがセキュア化モードで実行しているときに、該第1の秘密キーにアクセスし、該第1の秘密キーを使用して、暗号化アルゴリズムを実装するように動作可能である第2のハードウェアと、
該プロセッサによって実行可能な命令を含むコンピュータ可読記憶媒体と
を含み、
該命令は、
第1のビットストリームを該デバイスにおいて受信することであって、該第1のビットストリームは、第1の暗号化エンジンを含む、ことと、
該第1のビットストリームに対応する第1のキーを取得することであって、該第1のキーは、該第1のビットストリームをハッシュし、対称関数を使用して該ハッシュされた第1のビットストリームを暗号化することによって作成されたものである、ことと、
該デバイスにおける該第2のハードウェアを使用して、該第1のビットストリームを認証することであって、該第1のビットストリームを認証することは、
該第1のビットストリームをハッシュすることと、
該ハッシュされた第1のビットストリームを暗号化することによって、第2のキーを生成することであって、該ハッシュされた第1のビットストリームの暗号化は、該デバイスの第2のハードウェアの中で行われ、該第2のハードウェアは、該デバイスに特有の第1の秘密キーにアクセスすることを試み、該暗号化において該アクセスの結果を使用する、ことと、
該生成された第2のキーを該第1のキーと比較することと
を含む、ことと、
該第2のキーと該第1のキーとが整合する場合、該プロセッサにおいて該第1のビットストリームをセキュア化モードで実行することであって、該第1のビットストリームを実行することは、該第1の暗号化エンジンおよび該デバイスに特有の第1の秘密キーを使用して、該第1のビットストリームと関連付けられた暗号化されたデジタルコンテンツを復号化することを含み、該第1のビットストリームの実行は、セキュア化モードで行われる、ことと、
該第1のビットストリームが暗号化されているか否かを決定し、該第1のビットストリームが暗号化されているときは、
第2のビットストリームを取得することと、
該第1のハードウェアの中に格納される該デバイスに特有の第1の秘密キーにアクセスするように動作可能である該デバイスにおける該第2のハードウェアを使用して、該第2のビットストリームを認証することであって、該第2のビットストリームを認証することは、
該第2のビットストリームに対応する第3のキーを取得することであって、該第3のキーは、該第2のビットストリームをハッシュし、該ハッシュされた第2のビットストリームを暗号化することによって作成されたものである、ことと、
該第2のビットストリームをハッシュすることであって、該第2のビットストリームをハッシュすることは、該第1のビットストリームから生成された該第2のキーをシード値として利用する、ことと、
該ハッシュされた第2のビットストリームを暗号化することによって、第4のキーを生成することであって、該ハッシュされた第2のビットストリームの暗号化は、該デバイスの該第2のハードウェアの中で行われ、該第2のハードウェアは、該デバイスに特有の第1の秘密キーにアクセスすることを試み、該暗号化において該アクセスの結果を使用する、ことと
を含む、ことと、
該生成された第4のキーを該第3のキーと比較することと
を実行することと、
該第4のキーと該第3のキーとが整合する場合、該プロセッサにおいて該第2のビットストリームをセキュア化モードで実行することと
を行うためのものである、システム。 - コードの実行を制御するシステムであって、該システムは、デバイスを含み、
該デバイスは、
プロセッサと、
第1の秘密キーを格納する第1のハードウェアと、
第2のハードウェアであって、該プロセッサがセキュア化モードで実行しているときに、該第1の秘密キーにアクセスし、該第1の秘密キーを使用して、暗号化アルゴリズムを実装するように動作可能である第2のハードウェアと、
該プロセッサによって実行可能な命令を含むコンピュータ可読記憶媒体と
を含み、
該命令は、
第1のビットストリームを該デバイスにおいて受信することであって、該第1のビットストリームは、第1の暗号化エンジンを含む、ことと、
該第1のビットストリームに対応する第1のキーを取得することであって、該第1のキーは、該第1のビットストリームをハッシュし、対称関数を使用して該ハッシュされた第1のビットストリームを暗号化することによって作成されたものである、ことと、
該デバイスにおける該第2のハードウェアを使用して、該第1のビットストリームを認証することであって、該第1のビットストリームを認証することは、
該第1のビットストリームをハッシュすることと、
該ハッシュされた第1のビットストリームを暗号化することによって、第2のキーを生成することであって、該ハッシュされた第1のビットストリームの暗号化は、該デバイスの第2のハードウェアの中で行われ、該第2のハードウェアは、該デバイスに特有の第1の秘密キーにアクセスすることを試み、該暗号化において該アクセスの結果を使用する、ことと
該生成された第2のキーを該第1のキーと比較することと
を含む、ことと、
該第2のキーと該第1のキーとが整合する場合、該プロセッサにおいて該第1のビットストリームをセキュア化モードで実行することであって、該第1のビットストリームを実行することは、該第1の暗号化エンジンおよび該デバイスに特有の第1の秘密キーを使用して、該第1のビットストリームと関連付けられた暗号化されたデジタルコンテンツを復号化することを含み、該第1のビットストリームの実行は、セキュア化モードで行われる、ことと、
該第1のビットストリームが暗号化されているか否かを決定し、該第1のビットストリームが暗号化されているときは、
第2のビットストリームを取得することであって、該第2のビットストリームは、第2の暗号化エンジンを含む、ことと、
該第1のハードウェアの中に格納される該デバイスに特有の第1の秘密キーにアクセスするように動作可能である該デバイスにおける該第2のハードウェアを使用して、該第2のビットストリームを認証することであって、該第2のビットストリームを認証することは、
該第2のビットストリームに対応する第3のキーを取得することであって、該第3のキーは、該第2のビットストリームをハッシュし、該ハッシュされた第2のビットストリームを暗号化することによって作成されたものである、ことと、
該第2のビットストリームをハッシュすることと、
該ハッシュされた第2のビットストリームを暗号化することによって、第4のキーを生成することであって、該ハッシュされた第2のビットストリームの暗号化は、該デバイスの該第2のハードウェアの中で行われ、該第2のハードウェアは、該デバイスに特有の第1の秘密キーにアクセスすることを試み、該暗号化において該アクセスの結果を使用する、ことと
を含む、ことと、
該生成された第4のキーを該第3のキーと比較することと
を実行することと、
該第4のキーと該第3のキーとが整合する場合、該プロセッサにおいて該第2のビットストリームをセキュア化モードで実行することであって、該第2のビットストリームを実行することは、該デバイスに特有の第1の秘密キーを使用して、該第2の暗号化エンジンを用いて暗号化されたデジタルコンテンツおよび該第1のビットストリームの両方を復号化することを含む、ことと
を行うためのものである、システム。 - 前記第2のビットストリームの認証および前記第2のビットストリームの実行は、前記第1のビットストリームの実行の前に行われる、請求項7に記載のシステム。
- 前記命令は、前記第2のビットストリームの実行後、前記第1のビットストリームの実行前に、該第1のビットストリームを認証するように動作可能である、請求項8に記載のシステム。
- 前記第1のビットストリーム、第2のビットストリーム、暗号化されたデジタルコンテンツ、第1のキー、および第3のキーは、メッセージにおいて受信されており、該メッセージは、
該第1のビットストリームの第1の暗号化エンジンによって、該デジタルコンテンツを暗号化することと、
該第1のビットストリームをハッシュし、前記デバイスに特有の第1の秘密キーを用いて該ハッシュされた第1のビットストリームを暗号化することによって、該第1のキーを生成することと、
該第1のキーと第1のビットストリームと暗号化されたデジタルコンテンツとを関連付けることと、
該第2のビットストリームの第2の暗号化エンジンを用いて、該関連付けられた該第1のキーと第1のビットストリームと暗号化されたデジタルコンテンツとを暗号化することと、
該第2のビットストリームをハッシュし、該デバイスに特有の第1の秘密キーを用いて該ハッシュされた第2のビットストリームを暗号化することによって、第3のキーを生成することと、
第1の復号化アルゴリズムを該第1の暗号化されたビットストリームと関連付けることと、
該第3のキーと第2のビットストリームと暗号化された関連付けられた第1のキーと第1のビットストリームと暗号化されたデジタルコンテンツとを関連付けることと
によって生成される、請求項9に記載のシステム。 - 終点デバイスにおけるコードの実行を制御するプロセッサによって実行可能な命令を含む非一時的なコンピュータ可読媒体であって、該命令は、方法を実行するために実行可能な命令を含み、
該方法は、
第1のビットストリームをデバイスにおいて受信することと、
該第1のビットストリームに対応する第1のキーを取得することであって、該第1のキーは、該第1のビットストリームをハッシュし、対称関数を使用して該ハッシュされた第1のビットストリームを暗号化することによって作成されたものである、ことと、
該デバイスに特有の第1の秘密キーにアクセスするように動作可能な該デバイスにおけるハードウェアを使用して該第1のビットストリームを認証することであって、該第1の秘密キーは、該デバイスのハードウェアの中に格納され、該デバイスがセキュア化モードで実行しているときにアクセス可能であり、該第1のビットストリームを認証することは、
該第1のビットストリームをハッシュすることと、
該ハッシュされた第1のビットストリームを暗号化することによって第2のキーを生成することであって、該ハッシュされた第1のビットストリームの該暗号化は、該デバイスのハードウェアの中で行われ、該ハードウェアは、該デバイスに特有の第1の秘密キーにアクセスすることを試み、該暗号化において該アクセスの結果を使用する、ことと、
該生成された第2のキーを該第1のキーと比較することと
を含む、ことと、
該第2のキーと該第1のキーとが整合する場合、該プロセッサにおいて該第1のビットストリームをセキュア化モードで実行することであって、該第1のビットストリームは、第1の暗号化エンジンを含み、該第1のビットストリームを実行することは、該第1の暗号化エンジンおよび該デバイスに特有の第1の秘密キーを使用して、該第1のビットストリームと関連付けられた暗号化されたデジタルコンテンツを復号化することを含み、該第1のビットストリームの実行は、セキュア化モードで行われる、ことと、
該第2のキーと該第1のキーとが整合しない場合、該第1のビットストリームが暗号化されているか否かを決定し、該第1のビットストリームが暗号化されているとき、
第2のビットストリームを取得することと、
該ハードウェアの中に格納される該デバイスに特有の第1の秘密キーにアクセスするように動作可能な該デバイスにおける該ハードウェアを使用して、該第2のビットストリームを認証することであって、該第2のビットストリームを認証することは、
該第2のビットストリームに対応する第3のキーを取得することであって、該第3のキーは、該第2のビットストリームをハッシュし、該ハッシュされた第2のビットストリームを暗号化することによって作成されたものである、ことと、
該第2のビットストリームをハッシュすることであって、該第2のビットストリームをハッシュすることは、該第1のビットストリームから生成された該第2のキーをシード値として利用する、ことと、
該ハッシュされた第2のビットストリームを暗号化することによって第4のキーを生成することであって、該ハッシュされた第2のビットストリームの該暗号化は、該デバイスのハードウェアの中で行われ、該ハードウェアは、該デバイスに特有の第1の秘密キーにアクセスすることを試み、該暗号化において該アクセスの結果を使用する、ことと
を含む、ことと、
該生成された第4のキーを該第3のキーと比較することと
を実行することと、
該第4のキーと該第3のキーとが整合するとき、該第2のビットストリームを該プロセッサにおいてセキュア化モードで実行する、ことと
を含む、非一時的なコンピュータ可読媒体。 - 終点デバイスにおけるコードの実行を制御するプロセッサによって実行可能な命令を含む非一時的なコンピュータ可読媒体であって、該命令は、
第1のビットストリームをデバイスにおいて受信することと、
該第1のビットストリームに対応する第1のキーを取得することであって、該第1のキーは、該第1のビットストリームをハッシュし、対称関数を使用して該ハッシュされた第1のビットストリームを暗号化することによって作成されたものである、ことと、
該デバイスに特有の第1の秘密キーにアクセスするように動作可能な該デバイスにおけるハードウェアを使用して該第1のビットストリームを認証することであって、該第1の秘密キーは、該デバイスのハードウェアの中に格納され、該デバイスがセキュア化モードで実行しているときにアクセス可能であり、該第1のビットストリームを認証することは、
該第1のビットストリームをハッシュすることと、
該ハッシュされた第1のビットストリームを暗号化することによって第2のキーを生成することであって、該ハッシュされた第1のビットストリームの該暗号化は、該デバイスのハードウェアの中で行われ、該ハードウェアは、該デバイスに特有の第1の秘密キーにアクセスすることを試み、該暗号化において該アクセスの結果を使用する、ことと、
該生成された第2のキーを該第1のキーと比較することと
を含む、ことと、
該第2のキーと該第1のキーとが整合する場合、該プロセッサにおいて該第1のビットストリームをセキュア化モードで実行することであって、該第1のビットストリームは、第1の暗号化エンジンを含み、該第1のビットストリームを実行することは、該第1の暗号化エンジンおよび該デバイスに特有の第1の秘密キーを使用して、該第1のビットストリームと関連付けられた暗号化されたデジタルコンテンツを復号化することを含み、該第1のビットストリームの実行は、セキュア化モードで行われる、ことと、
該第2のキーと該第1のキーとが整合しない場合、該第1のビットストリームが暗号化されているか否かを決定し、該第1のビットストリームが暗号化されているとき、
第2のビットストリームを取得することであって、該第2のビットストリームは、第2の暗号化エンジンを含む、ことと、
該ハードウェアの中に格納される該デバイスに特有の第1の秘密キーにアクセスするように動作可能な該デバイスにおける該ハードウェアを使用して、該第2のビットストリームを認証することであって、該第2のビットストリームを認証することは、
該第2のビットストリームに対応する第3のキーを取得することであって、該第3のキーは、該第2のビットストリームをハッシュし、該ハッシュされた第2のビットストリームを暗号化することによって作成されたものである、ことと、
該第2のビットストリームをハッシュすることと、
該ハッシュされた第2のビットストリームを暗号化することによって第4のキーを生成することであって、該ハッシュされた第2のビットストリームの該暗号化は、該デバイスのハードウェアの中で行われ、該ハードウェアは、該デバイスに特有の第1の秘密キーにアクセスすることを試み、該暗号化において該アクセスの結果を使用する、ことと
を含む、ことと、
該生成された第4のキーを該第3のキーと比較することと、
を実行することと、
該第4のキーと該第3のキーとが整合するとき、該第2のビットストリームを該プロセッサにおいてセキュア化モードで実行することであって、該第2のビットストリームを実行することは、該デバイスに特有の第1の秘密キーを使用して、該第2の暗号化エンジンを用いて暗号化されたデジタルコンテンツおよび該第1のビットストリームの両方を復号化することを含む、ことと
を実行可能な命令を含む、非一時的なコンピュータ可読媒体。 - 前記第2のビットストリームの認証および前記第2のビットストリームの実行は、前記第1のビットストリームの実行の前に行われる、請求項12に記載の非一時的なコンピュータ可読媒体。
- 前記第2のビットストリームの実行後、前記第1のビットストリームの実行前に、該第1のビットストリームを認証することをさらに含む、請求項13に記載の非一時的なコンピュータ可読媒体。
- 前記第1のビットストリーム、第2のビットストリーム、暗号化されたデジタルコンテンツ、第1のキー、および第3のキーは、メッセージにおいて受信されており、該メッセージは、
該第1のビットストリームの第1の暗号化エンジンを用いて、該デジタルコンテンツを暗号化することと、
該第1のビットストリームをハッシュし、前記デバイスに特有の第1の秘密キーを用いて、該ハッシュされた第1のビットストリームを暗号化することによって、該第1のキーを生成することと、
該第1のキーと第1のビットストリームと暗号化されたデジタルコンテンツとを関連付けることと、
該第2のビットストリームの第2の暗号化エンジンを用いて、該関連付けられた第1のキーと第1のビットストリームと暗号化されたデジタルコンテンツとを暗号化することと、
該第2のビットストリームをハッシュし、該デバイスに特有の第1の秘密キーを用いて該ハッシュされた第2のビットストリームを暗号化することによって、第3のキーを生成することと、
第1の復号化アルゴリズムを該第1の暗号化されたビットストリームと関連付けることと、
該第3のキーと第2のビットストリームと暗号化された関連付けられた第1のキーと第1のビットストリームと暗号化されたデジタルコンテンツとを関連付けることと
によって生成される、請求項14に記載の非一時的なコンピュータ可読媒体。 - 前記第2のビットストリームの認証および前記第2のビットストリームの実行は、前記第1のビットストリームの実行の前に行われる、請求項1に記載の方法。
- 前記第2のビットストリームの実行後、前記第1のビットストリームの実行前に、該第1のビットストリームを認証することをさらに含む、請求項16に記載の方法。
- 前記第2のビットストリームの認証および前記第2のビットストリームの実行は、前記第1のビットストリームの実行の前に行われる、請求項6に記載のシステム。
- 前記命令は、前記第2のビットストリームの実行後、前記第1のビットストリームの実行前に、該第1のビットストリームを認証するように動作可能である、請求項18に記載のシステム。
- 前記第2のビットストリームの認証および前記第2のビットストリームの実行は、前記第1のビットストリームの実行の前に行われる、請求項11に記載の非一時的なコンピュータ可読媒体。
- 前記第2のビットストリームの実行後、前記第1のビットストリームの実行前に、該第1のビットストリームを認証することをさらに含む、請求項20に記載の非一時的なコンピュータ可読媒体。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11311108P | 2008-11-10 | 2008-11-10 | |
US61/113,111 | 2008-11-10 | ||
PCT/US2009/063861 WO2010054369A1 (en) | 2008-11-10 | 2009-11-10 | Method and system for controling code execution on a computing device using recursive security protocol |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014213476A Division JP2015035224A (ja) | 2008-11-10 | 2014-10-20 | 汎用コンピューティングデバイスにおけるコード実行制御および再帰的セキュリティプロトコルでのコード実行制御のための方法およびシステム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012508529A JP2012508529A (ja) | 2012-04-05 |
JP5636371B2 true JP5636371B2 (ja) | 2014-12-03 |
Family
ID=42153308
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011535761A Expired - Fee Related JP5636371B2 (ja) | 2008-11-10 | 2009-11-10 | 汎用コンピューティングデバイスにおけるコード実行制御および再帰的セキュリティプロトコルでのコード実行制御のための方法およびシステム |
JP2014213476A Pending JP2015035224A (ja) | 2008-11-10 | 2014-10-20 | 汎用コンピューティングデバイスにおけるコード実行制御および再帰的セキュリティプロトコルでのコード実行制御のための方法およびシステム |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014213476A Pending JP2015035224A (ja) | 2008-11-10 | 2014-10-20 | 汎用コンピューティングデバイスにおけるコード実行制御および再帰的セキュリティプロトコルでのコード実行制御のための方法およびシステム |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP2340631A1 (ja) |
JP (2) | JP5636371B2 (ja) |
KR (1) | KR20110106849A (ja) |
WO (1) | WO2010054369A1 (ja) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5411282B2 (ja) * | 2009-09-17 | 2014-02-12 | パナソニック株式会社 | 情報処理装置、管理装置、不正モジュール検知システム、不正モジュール検知方法、不正モジュール検知プログラムを記録している記録媒体、管理方法、管理プログラムを記録している記録媒体および集積回路 |
US8468365B2 (en) * | 2010-09-24 | 2013-06-18 | Intel Corporation | Tweakable encryption mode for memory encryption with protection against replay attacks |
US8930676B2 (en) * | 2010-12-22 | 2015-01-06 | Via Technologies, Inc. | Master core discovering enabled cores in microprocessor comprising plural multi-core dies |
KR101577886B1 (ko) * | 2011-06-29 | 2015-12-15 | 인텔 코포레이션 | 무결성 검사 및 리플레이 공격들에 대한 보호를 이용하는 메모리 암호화를 위한 방법 및 장치 |
KR101380895B1 (ko) | 2012-06-12 | 2014-04-10 | 한국전자통신연구원 | 보안 서비스 제공 장치 및 이를 이용한 보안 서비스 방법 |
US8984331B2 (en) * | 2012-09-06 | 2015-03-17 | Triumfant, Inc. | Systems and methods for automated memory and thread execution anomaly detection in a computer network |
US9753863B2 (en) * | 2014-12-27 | 2017-09-05 | Intel Corporation | Memory protection with non-readable pages |
US10020934B2 (en) * | 2015-11-05 | 2018-07-10 | Intel Corporation | Hardware accelerator for cryptographic hash operations |
WO2017083311A1 (en) * | 2015-11-09 | 2017-05-18 | Secure Content Storage Association, Llc | Timed release of decryption keys for access to distributed encrypted content |
WO2018165146A1 (en) | 2017-03-06 | 2018-09-13 | Cummins Filtration Ip, Inc. | Genuine filter recognition with filter monitoring system |
US10555210B2 (en) * | 2017-03-15 | 2020-02-04 | Qualcomm Incorporated | Group indicator for code block group based retransmission in wireless communication |
US10805163B2 (en) * | 2018-08-21 | 2020-10-13 | Hewlett Packard Enterprise Development Lp | Identifying device types based on behavior attributes |
DE102019128528A1 (de) | 2019-10-22 | 2021-04-22 | Infineon Technologies Ag | Datenkryptografievorrichtungen und speichersysteme |
JP7352182B2 (ja) | 2020-02-14 | 2023-09-28 | コニカミノルタ株式会社 | 画像形成装置、画像処理システム、およびプログラム |
US11431510B1 (en) * | 2020-04-30 | 2022-08-30 | Wells Fargo Bank, N.A. | Code-sign white listing (CSWL) |
CN115955309B (zh) * | 2023-03-13 | 2023-06-02 | 浙江华创视讯科技有限公司 | 一种加密推理方法及其系统、设备、存储介质 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2514593B1 (fr) * | 1981-10-09 | 1986-12-26 | Bull Sa | Procede et dispositif pour authentifier la signature d'un message signe |
US6226618B1 (en) * | 1998-08-13 | 2001-05-01 | International Business Machines Corporation | Electronic content delivery system |
US6389403B1 (en) * | 1998-08-13 | 2002-05-14 | International Business Machines Corporation | Method and apparatus for uniquely identifying a customer purchase in an electronic distribution system |
JP2000155735A (ja) * | 1998-11-20 | 2000-06-06 | Mitsubishi Electric Corp | ディジタルコンテンツ配布システム装置 |
JP3846230B2 (ja) * | 2001-06-18 | 2006-11-15 | 日本ビクター株式会社 | コンテンツ情報認証再生装置 |
KR20040039443A (ko) * | 2001-09-27 | 2004-05-10 | 마쯔시다덴기산교 가부시키가이샤 | 암호화 장치, 복호화 장치, 비밀 키 생성 장치, 저작권보호 시스템, 및 암호 통신 장치 |
US7203844B1 (en) * | 2002-06-20 | 2007-04-10 | Oxford William V | Method and system for a recursive security protocol for digital copyright control |
JP2005346182A (ja) * | 2004-05-31 | 2005-12-15 | Fujitsu Ltd | 情報処理装置、耐タンパ方法、耐タンパプログラム |
US7480385B2 (en) * | 2004-11-05 | 2009-01-20 | Cable Television Laboratories, Inc. | Hierarchical encryption key system for securing digital media |
JP5211716B2 (ja) * | 2008-01-29 | 2013-06-12 | 富士通株式会社 | ファイルアクセス制御方法、ファイルアクセス制御プログラム、およびファイルアクセス制御装置 |
-
2009
- 2009-11-10 EP EP09825588A patent/EP2340631A1/en not_active Withdrawn
- 2009-11-10 KR KR1020117013422A patent/KR20110106849A/ko not_active Application Discontinuation
- 2009-11-10 WO PCT/US2009/063861 patent/WO2010054369A1/en active Application Filing
- 2009-11-10 JP JP2011535761A patent/JP5636371B2/ja not_active Expired - Fee Related
-
2014
- 2014-10-20 JP JP2014213476A patent/JP2015035224A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
WO2010054369A1 (en) | 2010-05-14 |
JP2012508529A (ja) | 2012-04-05 |
JP2015035224A (ja) | 2015-02-19 |
KR20110106849A (ko) | 2011-09-29 |
EP2340631A1 (en) | 2011-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5636371B2 (ja) | 汎用コンピューティングデバイスにおけるコード実行制御および再帰的セキュリティプロトコルでのコード実行制御のための方法およびシステム | |
US7203844B1 (en) | Method and system for a recursive security protocol for digital copyright control | |
US9705677B2 (en) | Method and system for control of code execution on a general purpose computing device and control of code execution in a recursive security protocol | |
JP2015511050A (ja) | プロセス作業セット隔離のための方法およびシステム | |
US8418259B2 (en) | TPM-based license activation and validation | |
JP4702957B2 (ja) | 耐タンパ・トラステッド仮想マシン | |
US6330670B1 (en) | Digital rights management operating system | |
US20050060568A1 (en) | Controlling access to data | |
US20050021968A1 (en) | Method for performing a trusted firmware/bios update | |
US20060064756A1 (en) | Digital rights management system based on hardware identification | |
WO2004006075A1 (ja) | 開放型汎用耐攻撃cpu及びその応用システム | |
US8656190B2 (en) | One time settable tamper resistant software repository | |
JP2010520703A (ja) | デジタル著作権制御用再帰的セキュリティプロトコルのための方法およびシステム | |
JP2015135703A (ja) | デジタル著作権制御用再帰的セキュリティプロトコルのための方法およびシステム | |
JP2013084294A (ja) | デジタル著作権制御用再帰的セキュリティプロトコルのための方法およびシステム | |
KR20080008328A (ko) | 보호 컴퓨팅 환경의 갱신 가능하고 개별화 가능한 요소 | |
JP2014017871A (ja) | デジタル著作権制御用再帰的セキュリティプロトコルのための方法およびシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20121016 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20130408 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20131205 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20140304 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20140311 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20140401 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20140408 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20140501 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20140512 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140604 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20140918 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20141020 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |