JP2008507205A - オンラインサービスを用いてデバイスに直接証明秘密鍵を転送する方法 - Google Patents

オンラインサービスを用いてデバイスに直接証明秘密鍵を転送する方法 Download PDF

Info

Publication number
JP2008507205A
JP2008507205A JP2007521519A JP2007521519A JP2008507205A JP 2008507205 A JP2008507205 A JP 2008507205A JP 2007521519 A JP2007521519 A JP 2007521519A JP 2007521519 A JP2007521519 A JP 2007521519A JP 2008507205 A JP2008507205 A JP 2008507205A
Authority
JP
Japan
Prior art keywords
key
data structure
encrypted data
protected
generating
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
JP2007521519A
Other languages
English (en)
Other versions
JP4673890B2 (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.)
Intel Corp
Original Assignee
Intel 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 Intel Corp filed Critical Intel Corp
Publication of JP2008507205A publication Critical patent/JP2008507205A/ja
Application granted granted Critical
Publication of JP4673890B2 publication Critical patent/JP4673890B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0841Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
    • H04L9/0844Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols with user authentication or key authentication, e.g. ElGamal, MTI, MQV-Menezes-Qu-Vanstone protocol or Diffie-Hellman protocols using implicitly-certified keys
    • 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
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • 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/12Details relating to cryptographic hardware or logic circuitry
    • H04L2209/127Trusted platform modules [TPM]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Storage Device Security (AREA)
  • Computer And Data Communications (AREA)

Abstract

現場で稼動中のクライアントコンピュータシステムに導入されるデバイスに直接証明秘密鍵を転送することが、デバイス内に大きな不揮発性記憶装置を必要とすることなく、安全に達成することができる。製造時に、固有の擬似ランダム値が生成され、デバイスに格納される。その擬似ランダム値を用いて、そのデバイスに関連付けられる直接証明秘密鍵及び秘密鍵ダイジェストを保持しているデータ構造を暗号化するための対称鍵が生成される。結果として生成される暗号化されたデータ構造は、クライアントコンピュータシステムによってアクセス可能な被保護オンラインサーバ上に格納される。デバイスがクライアントコンピュータシステムで初期化されるとき、システムは、局在する暗号化されたデータ構造がシステム内に存在するか否かを検査する。存在しない場合には、システムは、安全なプロトコルを用いて、被保護オンラインサーバから、関連する暗号化されたデータ構造を入手する。そのデバイスは、その格納された擬似ランダム値から生成し直される対称鍵を用いて、暗号化されたデータ構造を暗号解読し、直接証明秘密鍵を入手する。秘密鍵が有効である場合には、その鍵は、クライアントコンピュータシステム内のデバイスによって、後続の認証処理のために用いられることができる。

Description

本発明は包括的には、コンピュータセキュリティに関し、より具体的には、処理システム内のデバイスに暗号鍵を安全に割り当てることに関する。
内容保護及び/又はコンピュータセキュリティ機構をサポートするいくつかの処理システムアーキテクチャでは、特別に保護された、すなわち「信用できる」ソフトウエアモジュールが、その処理システム内の特別に保護された、すなわち「信用できる」ハードウエアデバイス(たとえば、グラフィックスコントローラカード等)との認証された暗号化通信セッションを生成できることが要求される。デバイスを特定するために、且つ同時に暗号化された通信セッションを確立するために用いられる1つの一般的な方法は、片側認証方式のディフィ・ヘルマン(DH)鍵交換過程を用いることである。この過程では、デバイスは、固有の公開/秘密リベスト、シャミル及びアデルマン(Rivest, Shamir and Adelman)(RSA)アルゴリズム鍵ペア、又は固有の楕円曲線暗号(ECC)鍵ペアを割り当てられる。しかしながら、この認証過程はRSA鍵又はECC鍵を用いるので、その際、デバイスは、固有且つ証明可能な識別情報を有し、それによりプライバシーに対する懸念が生じる可能性がある。最悪の場合には、このような懸念がある結果として、この種のセキュリティを提供する信用できるデバイスを製造するための元の装置製造業者(OEM)からの支援が不足することがある。
本発明の特徴及び利点は、本発明の以下に記載される詳細な説明から明らかになるであろう。
[詳細な説明]
直接証明に基づくディフィ・ヘルマン(DH)鍵交換プロトコルを用いて、保護された/信用できるデバイスが自らを認証できるようにし、且つ信用できるソフトウエアモジュールとの暗号化された通信セッションを確立できるようにすることによって、処理システム内で任意の固有の識別情報が作成されるのが避けられ、それにより、プライバシーに対する懸念が生じるのが避けられる。しかしながら、製造ライン上でデバイス内に直接証明秘密鍵を直に埋め込むには、そのデバイス上に、他の手法よりも高度に保護された不揮発性記憶装置を必要とするので、デバイスコストが高くなる。本発明の一実施形態は、直接証明(DP)秘密鍵(たとえば、署名するために用いられる)が、オンラインサービスを用いてデバイスに安全に転送されるようにし、その後、デバイスそのものによってデバイスに導入されるようにするための方法である。本発明において提示される方法は、デバイスが導入過程のための識別情報を明らかにする必要がないように設計される。一実施形態では、この能力をサポートするために必要とされるデバイス記憶装置は、約300〜700バイトから約40バイトまで削減することができる。デバイスのための直接証明に基づくディフィ・ヘルマン(DH)鍵交換を実施するために必要とされる不揮発性記憶装置の容量をこのように削減する結果として、この技法がさらに広く受け入れられるようになるであろう。
本発明の実施形態では、DP秘密署名鍵は、デバイス内に、又はデバイスとともに割り当てられることはない。代わりに、デバイスは、現場で稼動中のデバイスが、製造業者若しくは販売業者、又は代理人によって提供されるオンライン被保護サーバから、その秘密鍵を安全に検索することができるプロトコルをサポートする。このプロトコルは、デバイスとサーバとの間に信用できるチャネルを生成し、局在処理システム上にあるソフトウエアを含む、いかなる介在するソフトウエアにおいても信用を必要としない。
本明細書において本発明の「一(one)実施形態」又は「或る(an)実施形態」を参照することは、その実施形態に関連して記述される特定の特徴、構造又は特性が、本発明の少なくとも1つの実施形態に含まれることを意味する。したがって、本明細書の全体を通して種々の場所において「一実施形態では」という言い回しが現れても、必ずしも全てが同じ実施形態を参照しているとは限らない。
以下の説明では、本発明の複数可の実施形態のいくつかの特定の特徴を記述するために、いくつかの特定の専門用語が用いられる。たとえば、「プラットフォーム」は、情報を送信及び受信するようになっている任意のタイプの通信デバイスと定義される。種々のプラットフォームの例には、限定又は制限はしないが、コンピュータシステム、携帯情報端末、携帯電話、セットトップボックス、ファクシミリ装置、プリンタ、モデム、ルータ等が含まれる。「通信リンク」は、プラットフォームに適合する複数可の情報搬送媒体と広く定義される。通信リンクの種々のタイプの例には、限定又は制限はしないが、電線(複数可)、光ファイバ(複数可)、ケーブル(複数可)、バストレース(複数可)、或いはワイヤレスシグナリング技術が含まれる。
「チャレンジャ」は、別のエンティティからの何らかの信憑性の検証又は許可を要求する任意のエンティティ(たとえば、人、プラットフォーム、システム、ソフトウエア及び/又はデバイス)を指している。通常、これは、要求された情報を開示又は提供する前に実行される。「レスポンダ」は、その許可、妥当性及び/又は識別情報の証明を与えることを要求されている任意のエンティティを指している。「認証製造業者」と入替え可能に用いることができる「デバイス製造業者」は、プラットフォーム又はデバイスを製造又は構成する任意のエンティティを指している。
本明細書において用いられるときに、レスポンダが或る暗号情報(たとえば、デジタル署名、鍵のような秘密情報等)を所有しているか、又は知っていることを、チャレンジャに対して「証明する」か、又はチャレンジャに「確信させる」ということは、チャレンジャに対して開示される情報及び証明を基にすると、レスポンダがその暗号情報を有する確率が高いことを意味する。チャレンジャに対してその暗号情報を「明らかにする」か、又は「開示する」ことなく、このことをチャレンジャに対して証明するということは、チャレンジャに対して開示される情報を基にしても、チャレンジャが計算によって暗号情報を求めることができないことを意味する。
そのような証明は、これ以降、直接証明と呼ばれる。用語「直接証明」は、ゼロ知識証明を指しており、これらのタイプの証明は当該技術分野において一般的に知られている。詳細には、本明細書において参照されるような具体的な直接証明プロトコルは、2002年11月27日に出願され、本出願の所有者に譲渡された「System and Method for Establishing Trust Without Revealing Identity」というタイトルの同時係属中の特許出願第10/306,336号の発明の主題である。直接証明は、発行者が多数のメンバから成るファミリを定義するプロトコルを定義し、そのメンバは、発行者によって定義されるような共通の特徴を共有する。発行者は、ファミリ公開鍵及び秘密鍵ペア(Fpub及びFpri)を生成し、その鍵ペアが全体としてファミリを表す。Fpriを用いて、発行者は、そのファミリ内の個々のメンバ毎に固有の直接証明秘密署名鍵(DPpri)も生成することができる。個々のDPpriによって署名された任意のメッセージを、ファミリ公開鍵Fpubを用いて検証することができる。しかしながら、そのような検証は、署名者がファミリのメンバであることしか特定しない。個々のメンバについての固有に特定する情報は明らかにされない。一実施形態では、発行者は、デバイス製造業者又は代理人であってもよい。すなわち、発行者は、共有される特徴に基づいてデバイスファミリを定義することができ、ファミリ公開鍵/秘密鍵ペアを生成することができ、さらにDP秘密鍵を生成して、デバイスに導入することができるエンティティであってもよい。また発行者は、デバイスファミリの鍵及び特徴のソースを特定するファミリ公開鍵のための証明書を生成してもよい。
ここで、図1を参照すると、本発明の一実施形態に従って動作する、信用できるハードウエアデバイス(「トラステッドプラットフォームモジュール」又は「TPM」と呼ばれる)で実施されるプラットフォームを特徴とするシステムの一実施形態が示される。第1のプラットフォーム102(チャレンジャ)が、第2のプラットフォーム104(レスポンダ)が自らについての情報を提供するという要求106を送信する。要求106に応答して、第2のプラットフォーム104は、要求された情報108を提供する。
さらに、セキュリティを高くするために、第1のプラットフォーム102は、要求された情報108が、選択されたデバイス製造業者又は選択されたデバイス製造業者グループ(これ以降、「デバイス製造業者(複数可)110」と呼ばれる)によって製造されたデバイスからもたらされたことを検証することが必要な場合もある。たとえば、本発明の一実施形態の場合、第1のプラットフォーム102は、第2のプラットフォーム104に対して、デバイス製造業者(複数可)110によって生成された暗号情報(たとえば、署名)を所有していることを示すように要求する。その要求は、要求106(図示される)、又は別個の送信のいずれかに組み込むことができる。第2のプラットフォーム104は、応答の形で、情報を提供することによってその要求に応答し、暗号情報を明らかにすることなく、第2のプラットフォーム104がデバイス製造業者(複数可)110によって生成される暗号情報を所有していることを第1のプラットフォーム102に確信させる。その応答は、要求された情報108(図示される)の一部であっても、別個の送信の一部であってもよい。
本発明の一実施形態では、第2のプラットフォーム104は、信用できるプラットフォームモジュール(TPM)115を備える。TPM115は、デバイス製造業者(複数可)110によって製造される暗号デバイスである。本発明の一実施形態では、TPM115は、パッケージ内に封入される小さな容量のオンチップメモリを備えるプロセッサを含む。TPM115は、或る応答が有効なTPMから送信されたことを第1のプラットフォームが判定できるようにする情報を、第1のプラットフォーム102に与えるように構成される。用いられる情報は、TPM又は第2のプラットフォームの識別情報を求めることができないようにする内容である。
図2は、TPM115を備える第2のプラットフォーム104の第1の実施形態を示す。本発明のこの実施形態の場合、第2のプラットフォーム104は、TPM115に接続されるプロセッサ202を備える。一般的に、プロセッサ202は、情報を処理するデバイスである。たとえば、本発明の一実施形態では、プロセッサ202は、マイクロプロセッサ、デジタルシグナルプロセッサ、マイクロコントローラ、又は状態機械として実施することができる。別法として、本発明の別の実施形態では、プロセッサ202は、フィールドプログラマブルゲートアレイ(FPGA)、トランジスタ−トランジスタロジック(TTL)ロジック、又は特定用途向け集積回路(ASIC)のような、プログラマブルロジック又はハードコードロジックとして実現することができる。
ここで、第2のプラットフォーム104はさらに、記憶ユニット206を備え、鍵、ハッシュ値、署名、証明書等の複数可の情報のような暗号情報を記憶できるようにする。「X」のハッシュ値は、「Hash(X)」として表すことができる。そのような情報は、図3に示されるように、記憶ユニット206の代わりに、TPM115の内部メモリ220に格納することもできると考えられる。暗号情報は、TPM115の外部に記憶される場合には特に、暗号化することができる。
図4は、図2のTPM115で実施されるコンピュータシステム300を含むプラットフォームの一実施形態を示す。コンピュータシステム300は、バス302と、バス302に接続されるプロセッサ310とを備える。コンピュータシステム300はさらに、メインメモリユニット304と、スタティックメモリユニット306とを備える。
ここで、メインメモリユニット304は、情報、及びプロセッサ310によって実行される命令を格納する揮発性半導体メモリである。またメインメモリ304は、プロセッサ310による命令の実行中に時間的な変数又は他の中間情報を格納するためにも用いることができる。スタティックメモリユニット306は、さらに永久的に、情報及びプロセッサ310のための命令を格納するための不揮発性半導体メモリである。スタティックメモリ306の例には、限定又は制限はしないが、リードオンリーメモリ(ROM)が含まれる。メインメモリユニット304及びスタティックメモリユニット306はいずれもバス302に接続される。
本発明の一実施形態では、コンピュータシステム300はさらに、磁気ディスク又は光ディスクのようなデータ記憶デバイス308を備え、情報及び命令を格納するために、その対応するドライブもコンピュータシステム300に接続することができる。
コンピュータシステム300は、バス302を介して、グラフィックスコントローラデバイス314にも接続することができ、そのデバイスは、エンドユーザに対して情報を表示する、陰極線管(CRT)、液晶ディスプレイ(LCD)又は任意のフラットパネルディスプレイのようなディスプレイ(図示せず)を制御する。一実施形態では、グラフィックスコントローラは、プロセッサによって実行されるソフトウエアモジュールとの認証された暗号化通信セッションを確立できることが望ましい場合もある。
典型的には、プロセッサ310に情報及び/又はコマンド選択を伝達するために、文字数字入力デバイス316(たとえば、キーボード、キーパッド等)をバス302に接続することができる。別のタイプのユーザ入力デバイスは、プロセッサに方向情報及びコマンド選択を伝達し、且つディスプレイ314上でのカーソルの動きを制御するための、マウス、トラックボール、タッチパッド、スタイラス又はカーソル方向キー等のカーソル制御ユニット318である。
通信インターフェースユニット320もバス302に接続される。インターフェースユニット320の例には、モデム、ネットワークインターフェースカード、又はローカルエリアネットワーク若しくはワイドエリアネットワークの一部を形成する通信リンクに接続するために用いられる他の既知のインターフェースが含まれる。このようにして、コンピュータシステム300は、たとえば、企業のイントラネット及び/又はインターネットのような、従来のネットワークインフラストラクチャを介して、多数のクライアント及び/又はサーバに接続することができる。一実施形態では、コンピュータシステムは、ネットワークを介して、被保護サーバにオンラインで接続することができる。
いくつかの実施態様の場合、これまでに記述された構成要素よりも少ないか、又は多い構成要素を備えるコンピュータシステムが望ましい場合もあることは理解されよう。それゆえ、コンピュータシステム300の構成は、価格の制約、性能要件、技術的改善及び/又は他の事情のような数多くの要因に応じて、実施態様毎に異なるであろう。
少なくとも1つの実施形態では、コンピュータシステム300は、システム内に他の好ましくないソフトウエアが存在する場合であっても、メインメモリ304及び/又は大容量記憶デバイス308に格納され、且つ特定の動作を成し遂げるためにプロセッサ310によって実行される、特別に保護された「信用できる」ソフトウエアモジュール(たとえば、改竄防止(tamper-resistant)ソフトウエア、又は保護されたプログラムを実行する能力を有するシステム)の使用をサポートすることができる。これらの信用できるソフトウエアモジュールの或るものは、他のプラットフォームに対してだけでなく、グラフィックスコントローラ314のような、同じプラットフォーム内の複数可の周辺デバイスに対しても、同等に「信用できる」保護されたアクセスを要求する。一般的に、そのようなアクセスでは、信用できるソフトウエアモジュールが、デバイスの能力及び/又は特定の識別情報を特定することができ、その後、デバイスとの暗号化されたセッションを確立して、データを交換できるようにするが、そのデータをシステム内の他のソフトウエアが詮索したり、妨害したりできないようにすることが要求される。
デバイスを特定し、同時に暗号化されたセッションを確立する1つの従来技術の方法は、片側認証方式のディフィ・ヘルマン(DH)鍵交換過程を用いることである。この過程では、デバイスは、固有の公開/秘密RSA鍵又はECC鍵のペアを割り当てられる。そのデバイスは、秘密鍵を保持及び保護し、一方、公開鍵は、認証用証明書とともに、ソフトウエアモジュールに公開される。DH鍵交換過程において、そのデバイスは、その秘密鍵を用いて、メッセージに署名し、ソフトウエアモジュールは対応する公開鍵を用いて秘密鍵を検証することができる。これにより、ソフトウエアモジュールは、そのメッセージが実際に対象のデバイスからもたらされたことを認証できるようになる。
しかしながら、この認証過程はRSA鍵又はECC鍵を用いるので、そのデバイスは固有且つ証明可能な識別情報を有する。そのデバイスに、その秘密鍵を用いてメッセージに署名させることができる任意のソフトウエアモジュールが、この特定の固有のデバイスがコンピュータシステム内に存在することを証明することができる。デバイスがめったに処理システム間を移動しないものとすると、これは、証明可能な固有のコンピュータシステム識別情報も表す。さらに、そのデバイスの公開鍵そのものは、一定の固有の値、すなわち、実効的には永久的な「クッキー」を表す。いくつかの事例では、これらの特徴は、プライバシーに対する重大な問題と見なすことができる。
1つの代替の手法が、2004年 月 日に出願され、本出願の所有者に譲渡された、「An Apparatus and Method for Establishing an Authenticated Encrypted Session with a Device Without Exposing Privacy-Sensitive Information」というタイトルの同時係属中の特許出願第10/ , 号に記述される。その手法では、片側認証方式のディフィ・ヘルマン過程においてRSA鍵又はECC鍵を用いる代わりに、直接証明鍵が用いられる。この手法を用いるデバイスは、特定のデバイスファミリに属するものとして認証されることができ、デバイスファミリは、そのデバイスの挙動又は信用性についての保証を含むことができる。その手法は、いかなる固有に特定する情報も明らかにすることなく、その情報を用いて、処理システムを表す固有の識別情報を確立することができる。
この手法は良好に機能するが、RSA鍵又はECC鍵よりも大きい場合もある直接証明秘密鍵を保持するために、デバイス内に付加的な記憶容量を必要とする。この付加的な記憶容量の要件の負担を緩和するために、本発明の実施形態は、デバイス内に大きな付加的な記憶容量を必要とすることなく、デバイスが鍵を必要とするときに、そのデバイスが確実に直接証明秘密鍵を所有するようにするためのシステム及び過程を定義する。
本発明の少なくとも1つの実施形態では、デバイス製造業者が、製造ラインにおいて、128ビット擬似ランダム数をデバイスに格納し、はるかに大きな直接証明秘密鍵(DPpri)は、暗号化して、被保護サーバによって運用されるオンラインサービスを用いて、現場においてデバイスに転送することができる。他の実施形態は、128ビットよりも長いか、又は短い数をデバイスに格納することができる。この過程は、指定されたデバイスだけが暗号解読し、その割り当てられたDPpri鍵を用いることができることを確実にする。図5は、本発明の一実施形態による、直接証明鍵を割り当てるためのシステム500の図である。このシステム内には4つのエンティティ、すなわちデバイス製造用被保護システム502、デバイス製造用生産システム503、クライアントコンピュータシステム504及び被保護サーバ522が存在する。デバイス製造用被保護システムは、デバイス506の製造前に、セットアップ過程において用いられる処理システムを含む。製造用被保護システム502は、被保護システムがデバイス製造現場の外部のハッカーの攻撃から保護されるように、デバイス製造業者によって運用されることができる(たとえば、それは閉じたシステムである)。製造用生産システム503は、デバイスの製造時に用いることができる。一実施形態では、被保護システム及び生産システムは、同じシステムであってもよい。デバイス506は、クライアントコンピュータシステムに収容するための任意のハードウエアデバイス(たとえば、メモリコントローラ、グラフィックスコントローラのような周辺デバイス、I/Oデバイス等)を含む。本発明の一実施形態では、そのデバイスは、擬似ランダム値RAND508と、鍵サービス公開鍵ハッシュ値509とを備え、それらの値は、そのデバイスの不揮発性記憶装置に格納される。
製造用被保護システムは、被保護データベース510、及び生成関数512を含む。被保護データベースは、以下に記述されるようにして、生成関数512によって生成される多数の擬似ランダム値(少なくとも、製造されるデバイス当たり1つの値)を格納するためのデータ構造を含む。生成関数は本明細書で鍵ブロブ514と呼ばれるデータ構造を生成するためのロジック(ソフトウエア又はハードウエアのいずれかで実施される)を含む。鍵ブロブ514は、少なくとも3つのデータ項目を備える。固有直接証明秘密鍵(DPpri)は、署名するためにデバイスが用いることができる暗号鍵を含む。DP秘密ダイジェスト516(DPpri Digest)は、SHA−1のような、安全なメッセージダイジェストを生成する任意の既知の方法に基づくDPpriのメッセージダイジェストを含む。いくつかの実施形態は、互換性を確保するために、鍵ブロブの一部としてビットストリームを含む擬似ランダム初期化ベクトル(IV)518を含むことができる。その暗号化のためにストリーム暗号が用いられる場合には、ストリーム暗号においてIVを用いるための既知の方法においてIVが用いられる。その暗号化のためにブロック暗号が用いられる場合には、IVは、暗号化されるべきメッセージの一部として用いられることになり、それにより、暗号化の各インスタンスが異なるようにする。製造用被保護システムは、後にさらに詳細に説明されるように、オンラインプロトコルに用いられる鍵サービス公開鍵507も含む。
本発明の一実施形態では、製造用被保護システムは、複数可の鍵ブロブ(後に詳細に説明される)を生成し、その鍵ブロブを被保護サーバ522上の鍵ブロブデータベース520に格納する。一実施形態では、鍵ブロブデータベース内には多数の鍵ブロブが存在する場合がある。被保護サーバは、デバイス製造業者、デバイス販売者又は他の提携するエンティティによって運用することができる。被保護サーバは、たとえばインターネットのようなネットワークを用いて、クライアントコンピュータシステム504に通信可能に接続することができる。また被保護サーバは、被保護サーバとデバイスとの間のオンラインプロトコルにおいて用いるための鍵サービス秘密鍵511も含む。
システム504内に収容されるデバイス506との通信セッションの認証及び鍵交換のために直接証明プロトコルを使用することを望むクライアントコンピュータシステム504は、後にさらに詳細に説明される鍵サービス公開/秘密鍵ペア及びオンラインプロトコルを用いて、被保護サーバ上の鍵ブロブデータベース520から、選択された鍵ブロブ514を読み出すことができる。鍵ブロブデータは、直接証明プロトコルを実施する際に用いるための局在鍵ブロブ524(後に説明される)を生成するために、デバイスによって用いられることができる。デバイス506を初期化し、制御するために、クライアントコンピュータシステムによって、デバイスドライバソフトウエア526が実行される。
本発明の実施形態では、5つの別個の動作ステージが存在することができる。図6は、本発明の一実施形態による、直接証明鍵を割り当てる方法のステージを示す流れ図600である。本発明の実施形態によれば、各ステージにおいて、いくつかの動作を実行することができる。デバイス製造業者の現場には、少なくとも3つのステージ、すなわち被保護サーバセットアップステージ601、デバイス製造業者セットアップステージ602及びデバイス製造業者生産ステージ604のステージが存在する。本明細書では、図7を参照しながら、被保護サーバセットアップステージが説明される。また本明細書では、図8を参照しながら、デバイス製造業者セットアップステージが説明される。さらに本明細書では、図9を参照しながら、デバイス製造業者生産ステージが説明される。クライアントコンピュータシステムを有するコンシューマの現場には、少なくとも2つのステージ、すなわち、クライアントコンピュータシステムセットアップステージ606及びクライアントコンピュータシステム使用ステージ608が存在する。本明細書では、図10〜図12を参照しながら、クライアントコンピュータシステムセットアップステージが説明される。また本明細書では、図13を参照しながら、クライアントコンピュータシステム使用ステージが説明される。
図7は、本発明の一実施形態による、被保護サーバセットアップステージ処理を示す流れ図700である。この処理は、デバイスの製造前にデバイス製造業者が実行することができる。ブロック702では、デバイス製造業者が、鍵検索要求をサポートするために、被保護サーバ522を配設する。一実施形態では、被保護サーバは、既知の態様でインターネットに通信可能に接続される。セキュリティを改善するために、被保護サーバは、製造用被保護システム又は製造用生産システムにおいて用いられるものと同じ処理システムにすべきではない。ブロック704では、デバイス製造業者が、鍵サービス公開/秘密鍵ペアを生成し、それは後に、被保護サーバによって提供される鍵検索サービスのために用いられる。一実施形態では、鍵サービス公開/秘密鍵ペアは、被保護サーバに格納することができる。この鍵ペアは、そのシステムによって実行される全ての処理に対して一度だけ生成してもよく、又はデバイスの種類毎に新たな鍵ペアを生成してもよい。ブロック706では、デバイス製造業者が、鍵サービス公開鍵507を製造用被保護システム502に転送する。
図8は、本発明の一実施形態による、デバイス製造セットアップ処理を示す流れ図800である。一実施形態では、デバイス製造業者が、製造用被保護システム502を用いて、これらの動作を実行することができる。ブロック802では、デバイス製造業者が、製造されることになるデバイスの種類毎に直接証明ファミリ鍵ペア(Fpub及びFpri)を生成する。固有のデバイスはそれぞれ、1つのDPpri鍵を有することになり、DPpriを用いて生成される署名がFpubによって検証できるようにする。デバイスの種類は、選択された製造ライン(すなわち、デバイスのタイプ)若しくはバージョン番号に基づく製造ラインのサブセット、又はデバイスの他の特徴のような、デバイスの任意のセット又はサブセットを含むことができる。ファミリ鍵ペアは、そのデバイスの種類のために生成されたものであり、そのデバイスの種類によって用いられる。
製造されることになるデバイス毎に、製造用被保護システム502の生成関数512が、ブロック804〜820を実行する。最初に、ブロック804では、生成関数が、固有の擬似ランダム値(RAND)508を生成する。一実施形態では、RANDの長さは128ビットである。他の実施形態では、他の長さの値を用いることができる。一実施形態では、複数のデバイスのための擬似ランダム値を予め生成しておくことができる。ブロック806では、デバイスによってサポートされる一方向関数fを用いて、生成関数が、固有のRAND値から対称暗号化鍵SKEYを生成する(SKEY=f(RAND))。一方向関数は、この目的を果たすのに相応しい任意の既知のアルゴリズムであってもよい(たとえば、SHA−1、MGF1、データ暗号化標準規格(DES)、トリプルDES、次世代暗号化標準規格(AES)等)。ブロック808では、一実施形態において、生成関数が、SKEYを用いて「ヌルエントリ」(たとえば、0バイトの小さな数)を暗号化することによって、被保護サーバ522上の鍵ブロブデータベース520内にある、このデバイスの鍵ブロブ514を参照するために用いられることになる識別子(ID)ラベルを生成する(DeviceID=Encrypt(0..0)usingSKEY)。他の実施形態では、デバイスIDを生成する他の方法を用いてもよく、又はSKEYによって他の値を暗号化してもよい。
次に、ブロック810では、生成関数が、デバイスのファミリ公開鍵(Fpub)と互いに関連するDP秘密署名鍵DPpriを生成する。ブロック812では、既知の方法を用いて、生成関数は、DPpriをハッシュしてDPpriダイジェストを生成する(たとえば、SHA−1又は別のハッシュアルゴリズムを用いる)。ブロック814では、生成関数は、そのデバイスのための鍵ブロブデータ構造を構成する。その鍵ブロブは、少なくともDPpri及びDPpriダイジェストを含む。一実施形態では、鍵ブロブは、複数の擬似ランダムに生成されたビットを有するランダム初期化ベクトルも含む。これらの値は、SKEYを用いて暗号化され、暗号化された鍵ブロブ514を生成することができる。ブロック816では、ブロック808において生成されたデバイスID及びブロック814において生成された暗号化された鍵ブロブ514を、1つのエントリとして、鍵ブロブデータベース520に格納することができる。一実施形態では、鍵ブロブデータベース内のエントリは、デバイスIDによって指示することができる。ブロック818では、現在のRAND値を、被保護データベース510に格納することができる。SKEY及びDPpriは現場にあるデバイスによって生成し直すことができるので、ブロック820において、それらを削除することができる。
DPpriダイジェストの生成及びそれに続くSKEYによる暗号化は、SKEYを所有していないいかなるエンティティもDPpriの内容を特定することができないように、また、SKEYを所有しているエンティティによって後に検出されるまでは、SKEYを所有していないエンティティによって鍵ブロブの内容を変更することができないように設計される。他の実施形態では、この秘密性及び保全性の保護を提供するための他の方法を用いることもできる。いくつかの実施形態では、保全性の保護は必要でない場合があり、秘密性だけを提供する方法を用いることができる。この場合、DPpriダイジェストの値は不要であろう。
ブロック820後のいずれかの時点で、ブロック822において、RAND値の被保護データベースが、製造工程中にデバイスにRAND値を格納することになる製造用生産システム503に安全にアップロードすることができる。このアップロードが検証されると、RAND値は、製造用被保護システム502から安全に削除することができる。最後に、ブロック824において、複数の暗号化された鍵ブロブを有する鍵ブロブデータベース520が、デバイスIDフィールドによって索引を付けられるような、被保護サーバ522上に格納されることができ、デバイス毎に1つの鍵ブロブデータベースエントリが用いられることになる。
図9は、本発明の一実施形態による、デバイス製造時の生産処理を示す流れ図900である。デバイスが生産ラインにおいて製造されているとき、ブロック902では、製造用生産システムが、被保護データベースから未使用のRAND値を選択する。その後、選択されたRAND値を、デバイス内の不揮発性記憶装置に格納することができる。一実施形態では、不揮発性記憶装置はTPMを含む。一実施形態では、RAND値は、不揮発性記憶装置の約16バイトに格納することができる。ブロック904では、鍵サービス公開鍵507のハッシュ509を、そのデバイスの不揮発性記憶装置に格納することができる。ハッシュは、任意の既知のハッシュアルゴリズムを用いて生成することができる。一実施形態では、そのハッシュ値は、不揮発性記憶装置の約20バイトに格納することができる。ブロック906では、RAND値を格納することに成功すると、製造用生産システムは、被保護データベース510内のデバイスのそのRAND値のあらゆる記録を破壊する。この時点では、そのデバイス内にRAND値のただ1つのコピーが格納される。
代替の一実施形態では、RAND値は、デバイスの製造中に生成することができ、その後、鍵ブロブを計算するために製造用被保護システムに送信することができる。
別の実施形態では、デバイスにおいてRAND値を生成することができ、デバイス及び製造用被保護システムは、そのデバイスの外部にはDPpri鍵を明らかにしない方法を用いる、DPpri鍵を生成するためのプロトコルに従うことができる。その後、そのデバイスはデバイスID、SKEY及び鍵ブロブを生成することができる。そのデバイスは、デバイスID及び鍵ブロブを被保護データベース510に格納するために、製造システムに渡すであろう。この方法では、製造システムは最終的には、被保護データベース内に同じ情報(デバイスID、鍵ブロブ)を有することになるが、RAND又はDPpriの値は知らない。
図10〜図12は、本発明の一実施形態による、クライアントコンピュータシステムセットアップ処理の流れ図である。クライアントコンピュータシステムは、システムを起動することの一部として、これらの動作を実行することができる。図10のフロー1000を開始すると、ブロック1002では、クライアントコンピュータシステムを通常通りに起動することができ、そのデバイスのためのデバイスドライバソフトウエアモジュール526を、クライアントコンピュータシステムのメインメモリにロードすることができる。デバイスドライバが初期化され、実行し始めるとき、ブロック1004において、デバイスドライバは、デバイス506のための大容量記憶デバイス308に格納されている暗号化された局在鍵ブロブ524が既に存在するか否かを判定する。存在する場合には、それ以上、セットアップ処理が実行される必要はなく、セットアップ処理はブロック1006において終了する。存在しない場合には、その処理はブロック1008で続けられる。ブロック1008では、デバイスドライバが、デバイス506に対して鍵獲得コマンドを発行して、デバイスのDP秘密鍵獲得過程を開始する。
ブロック1010では、デバイスドライバが、デバイスに、鍵サービス公開鍵507を送信する。ブロック1014では、デバイスが、受信された鍵サービス公開鍵を抽出し、その鍵サービス公開鍵のハッシュ値を生成し、受信された鍵サービス公開鍵のハッシュを、デバイス上の不揮発性記憶装置に格納されている鍵サービス公開鍵ハッシュ509と比較する。2つのハッシュが一致する場合には、受信された鍵サービス公開鍵が、デバイス製造業者の鍵検索サービスの公開鍵であることがわかり、クライアントコンピュータシステムセットアップ処理が続けられる。
別の実施形態では、デバイスは、証明された鍵サービス公開鍵の証明書を受信することができ、その証明書は、そのハッシュがデバイス上の不揮発性記憶装置に格納されている鍵サービス公開鍵ハッシュ509である鍵サービス公開鍵までの証明書チェーンを通して検証することができる。その後、証明された鍵サービス公開鍵を、後続のステップの鍵サービス公開鍵として用いることができる。
ブロック1018では、デバイスが、その一方向関数fを用いて、埋め込まれたRAND値508から、対称鍵SKEYを生成し直す(SKEY=f(RAND))。ブロック1020では、デバイスが、SKEYを用いて「ヌルエントリ」(たとえば、0バイトの小さな数)を暗号化することによって、その固有のデバイスIDラベルを生成する(DeviceID=Encrypt(0..0)using SKEY)。その処理は、図11の流れ図1100に続く。
図11のブロック1102では、デバイスが、一時的な対称鍵Tkeyを生成する。その鍵は、被保護サーバに送信されることになり、被保護サーバはその鍵を用いて、被保護サーバがデバイスに返送するメッセージを暗号化する。ブロック1104では、デバイスが、デバイスID及び一時的な対称鍵Tkeyを含む鍵検索要求メッセージを作成し、ブロック1014においてデバイスドライバから受信された鍵サービス公開鍵を用いて、そのメッセージを暗号化し、鍵検索要求メッセージを、デバイスドライバを介して被保護サーバに送信する(Retrieve Key Request=Encrypt(DeviceID,Tkey)with the key service public key)。公開鍵でメッセージを暗号化するために、典型的には、対称暗号のためのセッション鍵(Skey)を作成し、公開鍵でセッション鍵を暗号化し、その後、セッション鍵でメッセージを暗号化することは当業者には理解されよう。ブロック1106では、被保護サーバが、鍵サービス秘密鍵511を用いて、受信された鍵要求メッセージを暗号解読し、その中に格納されているフィールドを抽出する。ここで、被保護サーバはデバイスIDを知っているので(鍵要求メッセージから得られる)、被保護サーバは、一致するデバイスID値を含む記録を得るために鍵ブロブデータベースを探索し、その記録から、デバイスの暗号化された鍵ブロブを抽出する。ブロック1110では、被保護サーバが、ファミリ公開鍵及び暗号化された鍵ブロブを含む第2の応答メッセージを作成し、そのデバイスによって供給される一時的な対称鍵Tkeyを用いて、第2の応答メッセージを暗号化する。したがって、Key Response=(Family public key,Encryption of(Encrypted Keyblob)using Tkey)である。暗号化された鍵ブロブをTkeyで暗号化することは、鍵ブロブを保護することではない。なぜなら、鍵ブロブは、そのデバイスだけが生成することができる対称鍵SKEYで既に暗号化されているためである。むしろ、このようにしてメッセージを暗号化することにより、鍵獲得過程が実行される度に、返送される鍵ブロブが確実に変化し、それにより、鍵ブロブそのものを「クッキー」として用いることができないことが確実になる。ブロック1112において、その第2の応答メッセージを、クライアントコンピュータシステム上のデバイスドライバに返送することができ、デバイスドライバが、そのメッセージをデバイスに転送する。
ブロック1114では、デバイスが、第2の応答メッセージからファミリ公開鍵を抽出し、一時的な対称鍵Tkeyを用いて、包まれた鍵ブロブを暗号解読し、暗号化された鍵ブロブをデバイスの揮発性メモリに格納する。その後、処理は、図12の流れ図1200において続けられる。
図12のブロック1216では、デバイスが、DPpri及びDPpriダイジェストを生成するために、対称鍵SKEYを用いて、暗号化された鍵ブロブを暗号解読し、これらの値をその不揮発性記憶装置に格納する(Decrypted Keyblob=Decrypt(IV,DPpri,DPpriDigest)using SKEY)。初期化ベクトル(IV)は破棄することができる。ブロック1218では、デバイスが、DPpriをハッシュし、その結果をDPpriダイジェストと比較することによって、DPpriの保全性を検査する。その比較が良好である場合には、デバイスは、DPpriをその有効鍵として受け取る。一実施形態では、デバイスは、鍵獲得済みフラグを真に設定し、DP秘密鍵の獲得に成功したことを指示することもできる。ブロック1220では、デバイスが新たなIVを選択し、その新たなIVを用いて、新たな暗号化された局在鍵ブロブを作成する(Localized Keyblob=Encrypt(IV2,DPpri,DPpriDigest)using SKEY)。一実施形態では、新たな暗号化された局在鍵ブロブを、クライアントコンピュータシステム上の鍵検索ユーティリティソフトウエアモジュール(図5に示されない)に返送することができる。ブロック1222では、鍵検索ユーティリティが、暗号化された局在鍵ブロブを、クライアントコンピュータシステム内の記憶装置(たとえば、大容量記憶デバイス308等)に格納する。この時点で、デバイスのDPpriは、クライアントコンピュータシステム内に安全に格納される。
デバイスがセットアップ処理中にDPpriを獲得すると、その後、デバイスはDPpriを用いることができる。図13は、本発明の一実施形態による、クライアントコンピュータシステム処理の流れ図1300である。クライアントコンピュータシステムは、セットアップが完了した後にいつでも、これらの動作を実行することができる。ステップ1302では、クライアントコンピュータシステムを通常通りに起動することができ、デバイスのためのデバイスドライバ526を、メインメモリにロードすることができる。デバイスドライバが初期化され、実行し始めるとき、デバイスドライバは、デバイス506のための大容量記憶デバイス308に格納された暗号化された局在鍵ブロブ524が既に存在するか否かを判定する。存在しない場合には、図10〜図12のセットアップ処理が実行される。このデバイスのために利用することができる暗号化された局在鍵ブロブが存在する場合には、処理はブロック1306で続けられる。ブロック1306では、デバイスドライバが、暗号化された局在鍵ブロブを検索し、その鍵ブロブをデバイスに転送する。一実施形態では、鍵ブロブの転送は、鍵ブロブロードコマンドを実行することによって達成することができる。
ブロック1308では、デバイスが、その一方向関数fを用いて、埋め込まれたRAND値508から、対称鍵SKEY(ここで暗号解読する際に用いられる)を生成し直す(SKEY=f(RAND))。ブロック1310では、デバイスが、対称鍵SKEYを用いて、暗号化された局在鍵ブロブを暗号解読し、DPpri及びDPpriダイジェストを生成し、これらの値を、その不揮発性記憶装置に格納する(Decrypted Keyblob=Decrypt(IV2,DPpri,DPpriDigest)using SKEY)。第2の初期化ベクトル(IV2)は破棄することができる。ブロック1312では、デバイスが、DPpriをハッシュし、その結果をDPpriダイジェストと比較することによって、DPpriの保全性を検査する。その比較が良好である(すなわちダイジェストが一致する)場合には、デバイスは、DPpriを、以前に獲得された有効鍵として受け取り、それを使用できるようにする。またデバイスは、鍵獲得済みフラグを真に設定し、DP秘密鍵の獲得に成功したことを指示することもできる。ブロック1314では、デバイスが、さらに別のIVを選択し、その新たなIVを用いて、新たな暗号化された局在鍵ブロブを作成する(Localizad Keyblob=Encrypt(IV3,DPpri,DPpriDigest)using SKEY)。新たな暗号化された局在鍵ブロブは、鍵検索ユーティリティに返送することができる。ブロック1316では、鍵検索ユーティリティが、暗号化された局在鍵ブロブを、クライアントコンピュータシステム内の記憶装置(たとえば、大容量記憶デバイス308等)に格納する。この時点で、デバイスのDPpriは、もう一度、クライアントコンピュータシステム内に安全に格納される。
本発明の一実施形態では、一度にデバイスDP秘密鍵の全てを生成する必要はない。被保護サーバ上の鍵ブロブデータベースが定期的に更新されるものと仮定すると、デバイスDP秘密鍵は、必要に応じて、1回分ずつ生成することができる。鍵ブロブデータベースが被保護サーバ上で更新される度に、それは、既に生成されているが、まだデバイスに割り当てられていないデバイス鍵を含む、これまでに生成されたような鍵ブロブデータベースを含むであろう。
別の実施形態では、デバイスのDPpri鍵の生成を遅らせて、デバイス鍵を必要とするデバイスに対してだけ、これらの鍵が生成されるようにすることができる。デバイスから第1の鍵獲得要求を受信すると、被保護サーバは、依然としてデバイスのRAND値を保持する製造用被保護システムに対する要求を生成することができる。この時点で、製造用被保護システムは、そのデバイスのためのDPpri鍵を生成し、その鍵を被保護サーバに返送し、そのときにだけRAND値を破壊する。
別の実施形態では、デバイスの不揮発性メモリに鍵サービス公開鍵のハッシュを格納する代わりに、デバイス製造業者が、ルート鍵のハッシュを格納し、その後、そのルート鍵で鍵サービス公開鍵のための証明書に署名することを選ぶこともできる。このようにして、同じルート鍵を、多数のデバイスのために用いることができる。
本明細書において説明される動作は、逐次的な過程として記述することができるが、それらの動作のうちのいくつかは、実際には、並列して、又は同時に実行することができる。さらに、いくつかの実施形態では、本発明の精神から逸脱することなく、それらの動作の順序を並べ替えることができる。
本明細書に記述される技法は、任意の特定のハードウエア構成又はソフトウエア構成には限定されない。それらは、任意のコンピューティング環境又は処理環境において適用できる見込みがある。それらの技法は、ハードウエア、ソフトウエア、又はその2つの組み合わせで実施することができる。それらの技法は、それぞれプロセッサと、プロセッサによって読み出すことができる記憶媒体(揮発性メモリ及び不揮発性メモリ及び/又は記憶素子を含む)と、少なくとも1つの入力デバイスと、複数可の出力デバイスとを含む、モバイルコンピュータ又は設置されたコンピュータ、携帯情報端末、セットトップボックス、携帯電話及びポケットベル、並びに他の電子デバイスのような、プログラミング可能な機械上で実行されるプログラムにおいて実施することができる。入力デバイスを用いて入力されるデータにプログラムコードが適用され、説明された機能が実行され、出力情報が生成される。その出力情報は、複数可の出力装置に適用することができる。本発明が、マルチプロセッサシステム、ミニコンピュータ、メインフレームコンピュータ等を含む、種々のコンピュータシステム構成で実施できることは当業者には理解されよう。また本発明は、分散型のコンピューティング環境でも実施することができ、その場合には、通信ネットワークを通してリンクされる遠隔処理デバイスによって、タスクを実行することができる。
各プログラムは、処理システムと通信するために、高度な手続き型プログラミング言語又はオブジェクト指向プログラミング言語で実施することができる。しかしながら、プログラムは、所望により、アセンブリ言語又は機械語で実施することもできる。いずれの場合でも、言語は、コンパイル又は翻訳することができる。
プログラム命令を用いて、複数の命令でプログラミングされる汎用処理システム又は特定用途の処理システムが、本明細書に記述される動作を実行することができる。別法では、それらの動作を実行するためのハードワイヤードロジックを含む特定のハードウエア構成要素によって、又はプログラミングされたコンピュータ構成要素及びカスタムハードウエア構成要素の任意の組み合わせによって、それらの動作を実行することができる。本明細書に記述される方法は、処理システム又は他の電子デバイスをプログラミングして、それらの方法を実行するために用いることができる命令を格納している機械読取り可能媒体を含むことができるコンピュータプログラム製品として提供することができる。本明細書において用いられる用語「機械読取り可能媒体」は、機械によって実行するための一連の命令を格納又は符号化することができる任意の媒体を含み、その一連の命令によって、その機械が本明細書に記述される方法のいずれか1つの方法を実行するであろう。したがって、用語「機械読取り可能媒体」は、限定はしないが、固体メモリ、光ディスク及び磁気ディスク、並びにデータ信号を符号化する搬送波を含むであろう。さらに、当該技術分野では、ソフトウエアについて述べるときに、1つの動作を行うか、又は1つの結果を生成するような種々の形態(たとえば、プログラム、手順、過程、アプリケーション、モジュール、ロジック等)で述べるのが一般的である。そのような表現は、処理システムによってソフトウエアを実行することにより、プロセッサが1つの動作を実行するか、又は1つの結果を生成することを省略して表現しているにすぎない。
本発明が、例示的な実施形態を参照しながら説明されてきたが、この説明は、限定する意味に解釈されることを意図していない。本発明が関連する技術分野の熟練者には明らかである、例示的な実施形態の種々の変更、及び本発明の他の実施形態は、本発明の精神及び範囲内にあると見なされる。
本発明の一実施形態に従って動作するトラステッドプラットフォームモジュール(TPM)で実施されるプラットフォームを特徴とするシステムを示す図である。 図1のTPMを含むプラットフォームの第1の実施形態を示す図である。 図1のTPMを含むプラットフォームの第2の実施形態を示す図である。 図2のTPMで実施されるコンピュータシステムの1つの例示的な実施形態を示す図である。 本発明の一実施形態による、オンラインサービスを用いて、直接証明鍵をデバイスに割り当てるためのシステムの図である。 本発明の一実施形態による、オンラインサービスを用いて、直接証明鍵を割り当てる方法のステージを示す流れ図である。 本発明の一実施形態による、被保護サーバセットアップ処理を示す流れ図である。 本発明の一実施形態による、デバイス製造業者セットアップ処理を示す流れ図である。 本発明の一実施形態による、デバイス製造業者生産処理を示す流れ図である。 本発明の一実施形態による、クライアントコンピュータシステムセットアップ処理の流れ図である。 本発明の一実施形態による、クライアントコンピュータシステムセットアップ処理の流れ図である。 本発明の一実施形態による、クライアントコンピュータシステムセットアップ処理の流れ図である。 本発明の一実施形態による、クライアントコンピュータシステム処理の流れ図である。

Claims (35)

  1. クライアントコンピュータシステムからの鍵検索要求をサポートするために被保護オンラインサーバを配設すること、
    安全な鍵検索処理において用いるための鍵サービス公開/秘密鍵ペアを生成すること、
    デバイスの擬似ランダム値を生成すること、
    前記デバイスに関連する暗号化されたデータ構造を生成することであって、該暗号化されたデータ構造は秘密鍵を含む、データ構造を生成すること、
    前記擬似ランダム値に基づいて、前記暗号化されたデータ構造のための識別子を生成すること、
    前記識別子及び前記暗号化されたデータ構造を前記被保護オンラインサーバに格納すること、並びに
    前記擬似ランダム値と、前記鍵サービス公開鍵のハッシュ値とを前記デバイス内の不揮発性記憶装置に格納すること
    を含む、方法。
  2. デバイスの種類毎に直接証明ファミリ鍵ペアを生成することをさらに含む、請求項1に記載の方法。
  3. 前記秘密鍵は、前記直接証明ファミリ鍵ペアの公開鍵に関連付けられる直接証明秘密鍵を含み、前記方法は、該直接証明秘密鍵をハッシュすることであって、それによって、前記秘密鍵ダイジェストを生成する、ハッシュすることをさらに含む、請求項2に記載の方法。
  4. 前記デバイスの前記擬似ランダム値に基づいて対称鍵を生成することをさらに含む、請求項1に記載の方法。
  5. 前記識別子を生成することは、前記対称鍵を用いてデータ値を暗号化することを含む、請求項4に記載の方法。
  6. 前記対称鍵を用いて前記データ構造を暗号化することをさらに含む、請求項4に記載の方法。
  7. 前記鍵サービス公開鍵を製造用被保護システムに格納することをさらに含む、請求項1に記載の方法。
  8. 前記デバイスの前記擬似ランダム値は固有である、請求項1に記載の方法。
  9. 複数の機械読取り可能命令を有する第1の記憶媒体を含む製品であって、前記命令がプロセッサによって実行されるときに、前記命令は、
    クライアントコンピュータシステムからの鍵検索要求をサポートするために被保護オンラインサーバを配設すること、
    安全な鍵検索処理において用いるための鍵サービス公開/秘密鍵ペアを生成すること、
    デバイスの擬似ランダム値を生成すること、
    前記デバイスに関連する暗号化されたデータ構造を生成することであって、該暗号化されたデータ構造は秘密鍵を含む、データ構造を生成すること、
    前記擬似ランダム値に基づいて、前記暗号化されたデータ構造のための識別子を生成すること、
    前記識別子及び前記暗号化されたデータ構造を前記被保護オンラインサーバに格納すること、並びに
    前記擬似ランダム値と、前記鍵サービス公開鍵のハッシュ値とを前記デバイス内の不揮発性記憶装置に格納すること
    を提供する、複数の機械読取り可能命令を有する第1の記憶媒体を含む製品。
  10. デバイスの種類毎に直接証明ファミリ鍵ペアを生成するための命令をさらに含む、請求項9に記載の複数の機械読取り可能命令を有する第1の記憶媒体を含む製品。
  11. 前記秘密鍵は、前記直接証明ファミリ鍵ペアの公開鍵に関連付けられる直接証明秘密鍵を含み、前記製品は、前記直接証明秘密鍵をハッシュして、前記秘密鍵ダイジェストを生成するための命令をさらに備える、請求項10に記載の複数の機械読取り可能命令を有する第1の記憶媒体を含む製品。
  12. 前記デバイスの前記擬似ランダム値に基づいて対称鍵を生成するための命令をさらに備える、請求項9に記載の複数の機械読取り可能命令を有する第1の記憶媒体を含む製品。
  13. 前記識別子を生成するための命令は、前記対称鍵を用いてデータ値を暗号化するための命令を含む、請求項12に記載の複数の機械読取り可能命令を有する第1の記憶媒体を含む製品。
  14. 前記対称鍵を用いて前記データ構造を暗号化するための命令をさらに備える、請求項12に記載の複数の機械読取り可能命令を有する第1の記憶媒体を含む製品。
  15. 前記鍵サービス公開鍵を製造用被保護システムに格納するための命令をさらに備える、請求項9に記載の複数の機械読取り可能命令を有する第1の記憶媒体を含む製品。
  16. 前記デバイスの前記擬似ランダム値は固有である、請求項9に記載の複数の機械読取り可能命令を有する第1の記憶媒体を含む製品。
  17. コンピュータシステムに導入されるデバイスに関連付けられる、秘密鍵を含む暗号化されたデータ構造が、該コンピュータシステム上のメモリに格納されているか否かを判定すること、及び
    前記暗号化されたデータ構造が格納されていない場合には、前記コンピュータシステムによってアクセス可能な被保護オンラインサーバから、前記デバイスに関連付けられる前記暗号化されたデータ構造を入手することであって、前記サーバは複数の暗号化されたデータ構造のデータベースを格納している、入手すること
    を含む、方法。
  18. 前記暗号化されたデータ構造を入手することは、前記デバイスに鍵獲得コマンドを発行することであって、それによって、秘密鍵獲得過程を開始する、発行することを含む、請求項17に記載の方法。
  19. 前記秘密鍵は、1つのデバイスの種類につき1対の直接証明ファミリ鍵ペアの公開鍵に関連付けられる直接証明秘密鍵を含む、請求項17に記載の方法。
  20. 前記秘密鍵獲得過程は、前記デバイスによって、前記被保護オンラインサーバから、対応する鍵サービス秘密鍵によって署名された鍵サービス公開鍵を入手することを含む、請求項18に記載の方法。
  21. 前記秘密鍵獲得過程は、前記暗号化されたデータ構造のために、前記デバイスに格納されている固有の擬似ランダム値に基づいて対称鍵を生成するとともに、該擬似ランダム値に基づいてデバイス識別子を生成することをさらに含む、請求項20に記載の方法。
  22. 前記秘密鍵獲得過程は、前記デバイスによって一時的な対称鍵を生成すること、前記デバイス識別子及び前記一時的な対称鍵を含む鍵検索メッセージを作成すること、前記鍵サービス公開鍵を用いて前記鍵検索メッセージを暗号化すること、並びに該暗号化された鍵検索メッセージを前記被保護オンラインサーバに送信することをさらに含む、請求項21に記載の方法。
  23. 前記秘密鍵獲得過程は、前記鍵サービス秘密鍵を用いて、前記暗号化された鍵検索メッセージを暗号解読して、前記デバイス識別子を入手することをさらに含む、請求項22に記載の方法。
  24. 前記秘密鍵獲得過程は、前記生成されたデバイス識別子と一致する識別子によって索引を付けられる暗号化されたデータ構造のデータベース内のエントリを得るために、前記被保護オンラインサーバを探索すること、前記エントリ内の前記暗号化されたデータ構造を含む鍵応答メッセージを作成すること、前記一時的な対称鍵で該鍵応答メッセージを暗号化すること、及び該鍵応答メッセージを前記デバイスに転送することをさらに含む、請求項23に記載の方法。
  25. 前記秘密鍵獲得過程は、前記デバイスによって、前記一時的な対称鍵を用いて、前記暗号化された鍵応答メッセージを暗号解読することであって、それによって、前記暗号化されたデータ構造を入手する、鍵応答メッセージを暗号解読することをさらに含む、請求項24に記載の方法。
  26. 前記秘密鍵獲得過程は、前記対称鍵を用いて、前記被保護オンラインサーバから受信された前記暗号化されたデータ構造を暗号解読することであって、それによって、前記秘密鍵及び前記秘密鍵ダイジェストを入手する、データ構造を暗号解読することをさらに含む、請求項25に記載の方法。
  27. 前記秘密鍵獲得過程は、前記秘密鍵をハッシュすることであって、それによって、新たな秘密鍵ダイジェストを生成する、ハッシュすること、前記暗号解読されたデータ構造からの前記秘密鍵ダイジェストを前記新たな秘密鍵ダイジェストと比較すること、及び該2つのダイジェストが一致するときに、前記秘密鍵を前記デバイスのための有効鍵として受け取ることをさらに含む、請求項25に記載の方法。
  28. 複数の機械読取り可能命令を有する記憶媒体を含む製品であって、前記命令がプロセッサによって実行されるときに、
    コンピュータシステムに導入されるデバイスに関連付けられる、秘密鍵を含む暗号化されたデータ構造が、該コンピュータシステム上のメモリに格納されているか否かを判定すること、及び
    前記暗号化されたデータ構造が格納されていない場合には、前記コンピュータシステムによってアクセス可能な被保護オンラインサーバから、前記デバイスに関連付けられる前記暗号化されたデータ構造を入手することであって、前記サーバは複数の暗号化されたデータ構造のデータベースを格納している、入手すること
    によって、コンピュータシステムに導入されるデバイスのための秘密鍵を入手することを提供する、複数の機械読取り可能命令を有する記憶媒体を含む製品。
  29. 前記暗号化されたデータ構造を入手するための命令は、前記鍵獲得コマンドを前記デバイスに発行して、秘密鍵獲得過程を開始するための命令を含む、請求項28に記載の複数の機械読取り可能命令を有する記憶媒体を含む製品。
  30. 前記秘密鍵は、1つのデバイスの種類につき1対の直接証明ファミリ鍵ペアの公開鍵に関連付けられる直接証明秘密鍵を含む、請求項28に記載の複数の機械読取り可能命令を有する記憶媒体を含む製品。
  31. 前記秘密鍵獲得過程のための命令は、前記デバイスによって、前記被保護オンラインサーバから、対応する鍵サービス秘密鍵によって署名された鍵サービス公開鍵を入手するための命令を含む、請求項29に記載の複数の機械読取り可能命令を有する記憶媒体を含む製品。
  32. 前記秘密鍵獲得過程のための命令は、前記暗号化されたデータ構造のために、前記デバイスに格納されている固有の擬似ランダム値に基づいて対称鍵を生成するとともに、該擬似ランダム値に基づいてデバイス識別子を生成するための命令をさらに含む、請求項31に記載の複数の機械読取り可能命令を有する記憶媒体を含む製品。
  33. 前記秘密鍵獲得過程のための命令は、前記デバイスによって一時的な対称鍵を生成するための命令と、前記デバイス識別子及び前記一時的な対称鍵を含む鍵検索メッセージを作成するための命令と、前記鍵サービス公開鍵を用いて前記鍵検索メッセージを暗号化するための命令と、該暗号化された鍵検索メッセージを前記被保護オンラインサーバに送信するための命令とをさらに含む、請求項32に記載の複数の機械読取り可能命令を有する記憶媒体を含む製品。
  34. 安全なプロトコルを用いて、クライアントコンピュータシステムに導入されるデバイスに秘密鍵を転送するためのシステムであって、
    前記クライアントコンピュータシステムにアクセス可能な被保護オンラインサーバであって、鍵サービス公開/秘密鍵ペアを生成し、それぞれが選択されたデバイスに対応する1つの秘密鍵を含む、複数の暗号化されたデータ構造のデータベースを格納し、該暗号化されたデータ構造のうちの選択されたものを前記デバイスに安全に伝送するように構成される、被保護オンラインサーバと、
    前記被保護サーバに接続される被保護システムであって、前記デバイスに関連付けられる前記暗号化されたデータ構造を生成し、前記被保護サーバから前記鍵サービス公開鍵を受信し、前記暗号化されたデータ構造を前記被保護オンラインサーバに送信するように構成される、被保護システムと、
    前記被保護システムに接続される生産システムであって、前記被保護システムから、前記鍵サービス公開鍵のハッシュ値及び固有の擬似ランダム値を受信し、前記デバイスを前記クライアントコンピュータシステムに導入する前に、前記鍵サービス公開鍵の前記ハッシュ値及び前記固有の擬似ランダム値を前記デバイスの不揮発性記憶装置に格納するように構成される、生産システムと
    を備える、安全なプロトコルを用いて、クライアントコンピュータシステムに導入されるデバイスに秘密鍵を割り当てるためのシステム。
  35. 前記秘密鍵は、前記直接証明ファミリ鍵ペアの公開鍵に関連付けられる直接証明秘密鍵を含む、請求項34に記載の安全なプロトコルを用いて、クライアントコンピュータシステムに導入されるデバイスに秘密鍵を割り当てるためのシステム。
JP2007521519A 2004-07-14 2005-07-08 オンラインサービスを用いてデバイスに直接証明秘密鍵を転送する方法 Expired - Fee Related JP4673890B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/892,256 US7697691B2 (en) 2004-07-14 2004-07-14 Method of delivering Direct Proof private keys to devices using an on-line service
PCT/US2005/024374 WO2006023151A2 (en) 2004-07-14 2005-07-08 Method of delivering direct proof private keys to devices using an on-line service

Publications (2)

Publication Number Publication Date
JP2008507205A true JP2008507205A (ja) 2008-03-06
JP4673890B2 JP4673890B2 (ja) 2011-04-20

Family

ID=35599441

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007521519A Expired - Fee Related JP4673890B2 (ja) 2004-07-14 2005-07-08 オンラインサービスを用いてデバイスに直接証明秘密鍵を転送する方法

Country Status (6)

Country Link
US (2) US7697691B2 (ja)
JP (1) JP4673890B2 (ja)
CN (1) CN101019369B (ja)
DE (1) DE112005001672B4 (ja)
GB (1) GB2430127B (ja)
WO (1) WO2006023151A2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008547251A (ja) * 2005-06-14 2008-12-25 サーティコム コーポレーション 遠隔装置登録のためのシステムと方法
JP2012113323A (ja) * 2005-06-14 2012-06-14 Certicom Corp 遠隔装置登録のためのシステムと方法
US8423765B2 (en) 2005-06-14 2013-04-16 Certicom Corp. System and method for remote device registration
US9692737B2 (en) 2006-02-28 2017-06-27 Certicom Corp. System and method for product registration

Families Citing this family (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8165297B2 (en) * 2003-11-21 2012-04-24 Finisar Corporation Transceiver with controller for authentication
US7802085B2 (en) * 2004-02-18 2010-09-21 Intel Corporation Apparatus and method for distributing private keys to an entity with minimal secret, unique information
US7792303B2 (en) * 2004-07-14 2010-09-07 Intel Corporation Method of delivering direct proof private keys to devices using a distribution CD
US7697691B2 (en) 2004-07-14 2010-04-13 Intel Corporation Method of delivering Direct Proof private keys to devices using an on-line service
US7693286B2 (en) * 2004-07-14 2010-04-06 Intel Corporation Method of delivering direct proof private keys in signed groups to devices using a distribution CD
US8924728B2 (en) * 2004-11-30 2014-12-30 Intel Corporation Apparatus and method for establishing a secure session with a device without exposing privacy-sensitive information
US8014530B2 (en) 2006-03-22 2011-09-06 Intel Corporation Method and apparatus for authenticated, recoverable key distribution with no database secrets
WO2008049235A1 (en) 2006-10-27 2008-05-02 Storage Appliance Corporation Systems and methods for controlling production quantities
US8762714B2 (en) * 2007-04-24 2014-06-24 Finisar Corporation Protecting against counterfeit electronics devices
US9148286B2 (en) * 2007-10-15 2015-09-29 Finisar Corporation Protecting against counterfeit electronic devices
EP2204008B1 (en) * 2007-10-16 2019-03-27 Nokia Technologies Oy Credential provisioning
US8908870B2 (en) * 2007-11-01 2014-12-09 Infineon Technologies Ag Method and system for transferring information to a device
US8627079B2 (en) 2007-11-01 2014-01-07 Infineon Technologies Ag Method and system for controlling a device
WO2009059331A2 (en) * 2007-11-02 2009-05-07 Finisar Corporation Anticounterfeiting means for optical communication components
US8819423B2 (en) * 2007-11-27 2014-08-26 Finisar Corporation Optical transceiver with vendor authentication
CN101925909A (zh) * 2008-01-22 2010-12-22 惠普开发有限公司 在键盘与应用程序之间使用的共享密钥
CN101562784B (zh) * 2008-04-14 2012-06-06 华为技术有限公司 报文分发方法、设备及系统
WO2011089143A1 (en) * 2010-01-20 2011-07-28 Intrinsic Id B.V. Device and method for obtaining a cryptographic key
US8715625B1 (en) 2010-05-10 2014-05-06 The Clorox Company Natural oral care compositions
US9325677B2 (en) * 2010-05-17 2016-04-26 Blackberry Limited Method of registering devices
JP5644194B2 (ja) * 2010-06-10 2014-12-24 株式会社リコー 情報保護装置及び情報保護プログラム
FR2966620B1 (fr) * 2010-10-26 2012-12-28 Oberthur Technologies Procede et systeme de controle de l'execution d'une fonction protegee par authentification d'un utilisateur, notamment pour l'acces a une ressource
US20120137137A1 (en) * 2010-11-30 2012-05-31 Brickell Ernest F Method and apparatus for key provisioning of hardware devices
US8600061B2 (en) 2011-06-24 2013-12-03 Broadcom Corporation Generating secure device secret key
US9064209B2 (en) 2011-10-01 2015-06-23 Intel Corporation Printing through physical proximity between printer and print client device
EP2629223A1 (en) * 2012-02-14 2013-08-21 Thomson Licensing System, devices and methods for collaborative execution of a software application comprising at least one encrypted instruction
US8989374B2 (en) * 2012-06-15 2015-03-24 Kabushiki Kaisha Toshiba Cryptographic device for secure authentication
US8898463B2 (en) * 2012-06-15 2014-11-25 Kabushiki Kaisha Toshiba Device
US8948400B2 (en) * 2012-06-15 2015-02-03 Kabushiki Kaisha Toshiba Host device
US8874904B1 (en) * 2012-12-13 2014-10-28 Emc Corporation View computation and transmission for a set of keys refreshed over multiple epochs in a cryptographic device
FR3004561B1 (fr) * 2013-04-15 2016-11-11 Banque Accord Methode et systeme d'amelioration de la securite des transactions electroniques
CN103259651B (zh) * 2013-05-30 2016-06-08 成都欣知科技有限公司 一种对终端数据加解密的方法及系统
US10440000B2 (en) * 2014-07-11 2019-10-08 Cryptography Research, Inc. Secure data provisioning
US9485250B2 (en) * 2015-01-30 2016-11-01 Ncr Corporation Authority trusted secure system component
US9680646B2 (en) * 2015-02-05 2017-06-13 Apple Inc. Relay service for communication between controllers and accessories
US10037436B2 (en) * 2015-12-11 2018-07-31 Visa International Service Association Device using secure storage and retrieval of data
DE102015016302A1 (de) * 2015-12-15 2017-06-22 Giesecke & Devrient Gmbh Vereinbarung von Austausch-Schlüsseln ausgehend von zwei statischen asymmetrischen Schlüssel-Paaren
DE102016116152A1 (de) * 2016-04-30 2017-11-02 Krohne Messtechnik Gmbh Elektrisches Gerät mit einer Funktionseinrichtung
US10897459B2 (en) * 2017-01-26 2021-01-19 Microsoft Technology Licensing, Llc Addressing a trusted execution environment using encryption key
DE102017202787A1 (de) * 2017-02-21 2018-08-23 Siemens Aktiengesellschaft Verfahren und Validierungseinheit zum Steuern des Ladens von in IT-Systemen, insbesondere Eingebetteten Systemen, benutzbaren Krypto-Schlüsseln, insbesondere "Key BLOBs"
US11823501B2 (en) * 2017-08-18 2023-11-21 Oracle International Corporation Associating voting sessions with tabulation machines in electronic voting
WO2019035700A1 (en) * 2017-08-18 2019-02-21 Samsung Electronics Co., Ltd. METHOD AND APPARATUS FOR BOARDING IN AN IOT NETWORK
SG11202004147RA (en) * 2017-11-09 2020-06-29 Nchain Holdings Ltd System for securing verification key from alteration and verifying validity of a proof of correctness
CN109687959B (zh) 2018-12-29 2021-11-12 上海唯链信息科技有限公司 密钥安全管理系统和方法、介质和计算机程序
US11101984B2 (en) * 2019-04-04 2021-08-24 Micron Technology, Inc. Onboarding software on secure devices to generate device identities for authentication with remote servers
CN110149209B (zh) * 2019-04-15 2022-06-28 深圳奇迹智慧网络有限公司 物联网设备及其提高数据传输安全性的方法和装置
US11570155B2 (en) * 2019-07-25 2023-01-31 Everything Blockchain Technology Corp. Enhanced secure encryption and decryption system
US11477014B1 (en) 2019-08-23 2022-10-18 Liberty Mutual Insurance Company Anonymized data transmission using per-user-functionality secret shares
US11876797B2 (en) * 2020-03-30 2024-01-16 Everything Blockchain Technology Corp. Multi-factor geofencing system for secure encryption and decryption system
CN116208428B (zh) * 2023-04-27 2023-07-18 中科信工创新技术(北京)有限公司 一种传输文件的方法、系统、装置、存储介质及电子设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11143781A (ja) * 1997-11-10 1999-05-28 Taisei Corp 復号化制限装置
JPH11202765A (ja) * 1998-01-16 1999-07-30 Mitsubishi Materials Corp 暗号化情報処理装置、暗号化情報処理方法および記録媒体
JP2002016592A (ja) * 2000-04-25 2002-01-18 Open Loop:Kk 暗号鍵管理システム及び暗号鍵管理方法
JP2002314522A (ja) * 2001-04-09 2002-10-25 Fuji Xerox Co Ltd 秘密鍵送付装置および方法
US20040103281A1 (en) * 2002-11-27 2004-05-27 Brickell Ernie F. System and method for establishing trust without revealing identity
JP2004536490A (ja) * 2001-04-18 2004-12-02 トムソン ライセンシング ソシエテ アノニム 電力線モデム回路網上でセキュリティを提供するデバイス

Family Cites Families (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01200735A (ja) 1988-02-05 1989-08-11 Nec Corp 音波送信機
US5430802A (en) 1992-06-24 1995-07-04 Page; Steven L. Audio speaker system
US5581621A (en) 1993-04-19 1996-12-03 Clarion Co., Ltd. Automatic adjustment system and automatic adjustment method for audio devices
DE19539538A1 (de) 1994-10-31 1996-05-02 Tektronix Inc Nicht hörbare Einfügung von Information in ein Audiosignal
US6424717B1 (en) * 1995-04-03 2002-07-23 Scientific-Atlanta, Inc. Encryption devices for use in a conditional access system
US5857021A (en) 1995-11-07 1999-01-05 Fujitsu Ltd. Security system for protecting information stored in portable storage media
US5771291A (en) 1995-12-11 1998-06-23 Newton; Farrell User identification and authentication system using ultra long identification keys and ultra large databases of identification keys for secure remote terminal access to a host computer
EP0784386A2 (en) 1996-01-11 1997-07-16 Marikon Resources, Inc Wireless audio signal transmission system
CN1146781C (zh) 1996-01-23 2004-04-21 环球媒介股份有限公司 信息显示系统
US5924094A (en) * 1996-11-01 1999-07-13 Current Network Technologies Corporation Independent distributed database system
US6438666B2 (en) 1997-09-26 2002-08-20 Hughes Electronics Corporation Method and apparatus for controlling access to confidential data by analyzing property inherent in data
US6411715B1 (en) * 1997-11-10 2002-06-25 Rsa Security, Inc. Methods and apparatus for verifying the cryptographic security of a selected private and public key pair without knowing the private key
US6185316B1 (en) * 1997-11-12 2001-02-06 Unisys Corporation Self-authentication apparatus and method
US6032260A (en) 1997-11-13 2000-02-29 Ncr Corporation Method for issuing a new authenticated electronic ticket based on an expired authenticated ticket and distributed server architecture for using same
US5991399A (en) 1997-12-18 1999-11-23 Intel Corporation Method for securely distributing a conditional use private key to a trusted entity on a remote system
US6151676A (en) 1997-12-24 2000-11-21 Philips Electronics North America Corporation Administration and utilization of secret fresh random numbers in a networked environment
US6032261A (en) 1997-12-30 2000-02-29 Philips Electronics North America Corp. Bus bridge with distribution of a common cycle clock to all bridge portals to provide synchronization of local buses, and method of operation thereof
US6036061A (en) 1998-04-27 2000-03-14 O'donnell; Thomas F. Retainer for blank of split cap
US6611812B2 (en) 1998-08-13 2003-08-26 International Business Machines Corporation Secure electronic content distribution on CDS and DVDs
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
US6038322A (en) * 1998-10-20 2000-03-14 Cisco Technology, Inc. Group key distribution
US7188180B2 (en) * 1998-10-30 2007-03-06 Vimetx, Inc. Method for establishing secure communication link between computers of virtual private network
US7315836B1 (en) * 1999-01-11 2008-01-01 Teq Development Method for obtaining and allocating investment income based on the capitalization of intellectual property
AU2998100A (en) 1999-02-18 2000-09-04 Sun Microsystems, Inc. Data authentication system employing encrypted integrity blocks
SE514105C2 (sv) * 1999-05-07 2001-01-08 Ericsson Telefon Ab L M Säker distribution och skydd av krypteringsnyckelinformation
FI112315B (fi) 1999-05-11 2003-11-14 Nokia Corp Integriteetin suojausmenetelmä radioverkkosignalointia varten
US6898706B1 (en) * 1999-05-20 2005-05-24 Microsoft Corporation License-based cryptographic technique, particularly suited for use in a digital rights management system, for controlling access and use of bore resistant software objects in a client computer
US6928615B1 (en) 1999-07-07 2005-08-09 Netzero, Inc. Independent internet client object with ad display capabilities
US7216110B1 (en) * 1999-10-18 2007-05-08 Stamps.Com Cryptographic module for secure processing of value-bearing items
GB9929050D0 (en) 1999-12-08 2000-02-02 Nokia Networks Oy Communication method
US6792113B1 (en) * 1999-12-20 2004-09-14 Microsoft Corporation Adaptable security mechanism for preventing unauthorized access of digital data
US6757832B1 (en) * 2000-02-15 2004-06-29 Silverbrook Research Pty Ltd Unauthorized modification of values in flash memory
GB0004178D0 (en) 2000-02-22 2000-04-12 Nokia Networks Oy Integrity check in a communication system
WO2001082650A2 (en) 2000-04-21 2001-11-01 Keyhold Engineering, Inc. Self-calibrating surround sound system
TWI239447B (en) * 2000-06-02 2005-09-11 Koninkl Philips Electronics Nv Recordable storage medium with protected data area
US6983368B2 (en) * 2000-08-04 2006-01-03 First Data Corporation Linking public key of device to information during manufacture
US6829250B2 (en) 2000-08-10 2004-12-07 Verizon Communications Inc. Automatic programming of customer premises equipment for vertical services integration
US6749511B2 (en) 2000-08-17 2004-06-15 Adam S. Day Website promotional applet process
US7178030B2 (en) * 2000-10-25 2007-02-13 Tecsec, Inc. Electronically signing a document
FI111423B (fi) 2000-11-28 2003-07-15 Nokia Corp Järjestelmä kanavanvaihdon jälkeen tapahtuvan tietoliikenteen salauksen varmistamiseksi
US6987853B2 (en) * 2000-11-29 2006-01-17 Bodacion Technologies, Llc Method and apparatus for generating a group of character sets that are both never repeating within certain period of time and difficult to guess
US20020080190A1 (en) 2000-12-23 2002-06-27 International Business Machines Corporation Back-up and usage of secure copies of smart card data objects
GB0103416D0 (en) 2001-02-12 2001-03-28 Nokia Networks Oy Message authentication
US20030037237A1 (en) * 2001-04-09 2003-02-20 Jean-Paul Abgrall Systems and methods for computer device authentication
US6941456B2 (en) 2001-05-02 2005-09-06 Sun Microsystems, Inc. Method, system, and program for encrypting files in a computer system
ITPD20010125A1 (it) * 2001-05-31 2002-12-01 Lindhaus Srl Utensile perfezionato multiuso per macchine di pulizia.
US6866705B2 (en) 2001-06-15 2005-03-15 Larry Nielsen Floor finishing and dust collection apparatus
JP4145118B2 (ja) 2001-11-26 2008-09-03 松下電器産業株式会社 アプリケーション認証システム
US8332650B2 (en) 2002-03-22 2012-12-11 Microsoft Corporation Systems and methods for setting and resetting a password
DE10218835B4 (de) * 2002-04-22 2009-09-10 Deutscher Sparkassen Verlag Gmbh Verfahren zum Herstellen einer Chipkarte und Chipkarte
FR2855343B1 (fr) * 2003-05-20 2005-10-07 France Telecom Procede de signature electronique de groupe avec anonymat revocable, equipements et programmes pour la mise en oeuvre du procede
EP1617587A1 (en) 2004-07-12 2006-01-18 International Business Machines Corporation Method, system and computer program product for privacy-protecting integrity attestation of computing platform
US7697691B2 (en) 2004-07-14 2010-04-13 Intel Corporation Method of delivering Direct Proof private keys to devices using an on-line service
US7693286B2 (en) 2004-07-14 2010-04-06 Intel Corporation Method of delivering direct proof private keys in signed groups to devices using a distribution CD
US7792303B2 (en) 2004-07-14 2010-09-07 Intel Corporation Method of delivering direct proof private keys to devices using a distribution CD
US8924728B2 (en) 2004-11-30 2014-12-30 Intel Corporation Apparatus and method for establishing a secure session with a device without exposing privacy-sensitive information
GB2439150A (en) 2006-06-17 2007-12-19 Stepashead Ltd Ball rack allowing triangular or diamond ball formation

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11143781A (ja) * 1997-11-10 1999-05-28 Taisei Corp 復号化制限装置
JPH11202765A (ja) * 1998-01-16 1999-07-30 Mitsubishi Materials Corp 暗号化情報処理装置、暗号化情報処理方法および記録媒体
JP2002016592A (ja) * 2000-04-25 2002-01-18 Open Loop:Kk 暗号鍵管理システム及び暗号鍵管理方法
JP2002314522A (ja) * 2001-04-09 2002-10-25 Fuji Xerox Co Ltd 秘密鍵送付装置および方法
JP2004536490A (ja) * 2001-04-18 2004-12-02 トムソン ライセンシング ソシエテ アノニム 電力線モデム回路網上でセキュリティを提供するデバイス
US20040103281A1 (en) * 2002-11-27 2004-05-27 Brickell Ernie F. System and method for establishing trust without revealing identity

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008547251A (ja) * 2005-06-14 2008-12-25 サーティコム コーポレーション 遠隔装置登録のためのシステムと方法
JP2012113323A (ja) * 2005-06-14 2012-06-14 Certicom Corp 遠隔装置登録のためのシステムと方法
US8423765B2 (en) 2005-06-14 2013-04-16 Certicom Corp. System and method for remote device registration
US8972721B2 (en) 2005-06-14 2015-03-03 Certicom Corp. System and method for remote device registration
US9692737B2 (en) 2006-02-28 2017-06-27 Certicom Corp. System and method for product registration

Also Published As

Publication number Publication date
CN101019369A (zh) 2007-08-15
US20100150351A1 (en) 2010-06-17
US8660266B2 (en) 2014-02-25
GB0700524D0 (en) 2007-02-21
JP4673890B2 (ja) 2011-04-20
WO2006023151A3 (en) 2006-11-30
GB2430127A (en) 2007-03-14
DE112005001672T5 (de) 2007-05-31
GB2430127B (en) 2008-12-31
DE112005001672B4 (de) 2010-12-09
CN101019369B (zh) 2011-05-18
US20060013402A1 (en) 2006-01-19
US7697691B2 (en) 2010-04-13
WO2006023151A2 (en) 2006-03-02

Similar Documents

Publication Publication Date Title
JP4673890B2 (ja) オンラインサービスを用いてデバイスに直接証明秘密鍵を転送する方法
JP4616345B2 (ja) 配布cdを用いて直接証明秘密鍵を装置に配布する方法
JP4638912B2 (ja) ディストリビューションcdを使用した、署名されたグループにおけるダイレクトプルーフの秘密鍵を装置に伝達する方法
US6058478A (en) Apparatus and method for a vetted field upgrade
EP1636664B1 (en) Proof of execution using random function
US7571329B2 (en) Method of storing unique constant values
EP2538366B1 (en) Generating secure device secret key
CN109951276B (zh) 基于tpm的嵌入式设备远程身份认证方法
JP2010514000A (ja) 電子装置にプログラム状態データをセキュアに記憶するための方法
CN117318941B (zh) 基于车内网的预置密钥分发方法、系统、终端及存储介质
EP3292654B1 (en) A security approach for storing credentials for offline use and copy-protected vault content in devices
CN117155549A (zh) 密钥分发方法、装置、计算机设备和存储介质
CN114679270A (zh) 一种基于隐私计算的数据跨域加解密方法
EP4142214A1 (en) Method for securely provisioning a device incorporating an integrated circuit without using a secure environment
KR100883442B1 (ko) 온라인 서비스를 사용하여 직접 증명 비밀키를 디바이스에전달하는 방법
KR100897075B1 (ko) 배포 cd를 사용하는 장치에 서명 그룹의 다이렉트 증명개인 키들을 전달하는 방법
JP7385025B2 (ja) 暗号化コプロセッサにおけるエンティティ固有の暗号化コードの実行
CN111641507B (zh) 一种软件通信体系结构组件注册管理方法和装置
CN117728976A (zh) 数据传输方法、装置、设备及存储介质

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100525

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100817

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100921

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101203

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110121

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140128

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees