JP2007049708A - 公開鍵暗号方式に使用する鍵を更新するシステムおよび方法 - Google Patents

公開鍵暗号方式に使用する鍵を更新するシステムおよび方法 Download PDF

Info

Publication number
JP2007049708A
JP2007049708A JP2006214165A JP2006214165A JP2007049708A JP 2007049708 A JP2007049708 A JP 2007049708A JP 2006214165 A JP2006214165 A JP 2006214165A JP 2006214165 A JP2006214165 A JP 2006214165A JP 2007049708 A JP2007049708 A JP 2007049708A
Authority
JP
Japan
Prior art keywords
public key
data set
value
sequence
additional
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
JP2006214165A
Other languages
English (en)
Other versions
JP4593533B2 (ja
Inventor
Zoltan Nochta
ノフタ ゾルタン
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.)
SAP SE
Original Assignee
SAP SE
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 SAP SE filed Critical SAP SE
Publication of JP2007049708A publication Critical patent/JP2007049708A/ja
Application granted granted Critical
Publication of JP4593533B2 publication Critical patent/JP4593533B2/ja
Active 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/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • 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/56Financial cryptography, e.g. electronic payment or e-cash
    • 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/80Wireless

Abstract

【課題】受取システム(200)に公開鍵のシーケンスを提供する提供システム(100)であって、シーケンスの各公開鍵は秘密鍵に関連し、公開鍵暗号方式手順に適用可能な提供システムの提供。
【解決手段】提供システム(100)は、演算ユニット(110)および送信ユニット(120)を構成する。演算ユニット(110)は、公開鍵および関連鍵のシーケンスを生成し、複数のデータセットを計算するように構成されており、複数のデータセットのうち1つは公開鍵と保証値(proof value)とを備える。保証値(proof value)は、シーケンス内で次に続く追加の公開鍵を構成する次のデータセットへ、ハッシュ関数を適用した結果である。送信ユニット(120)は、複数のデータを受取システム(200)へ提供するように構成されている。
【選択図】図1

Description

本発明は、一般的に電子データの処理の分野に関し、より詳細に、セキュアな電子商取引を提供することに関する。
今日、電子通信の水準は高度なものとなっている。例えば、多くの個人、会社および公的機関などは、インターネットのような通信のための、電子的基盤を使用する。しばしば、電子取引、すなわちデータの電子的交換はセキュアであることが要望される。セキュアな取引とは、例えば、文書の送信者を信頼できる方法で識別できること、または伝送された文書を傍受する不正者がその文書を読めないことを意味する。
セキュアな電子取引を可能にする極めて効率的な方法は、公開鍵暗号方式(PKC)を使用することである。PKCには、PKC方法および公開鍵とその公開鍵に関連する秘密鍵とを含む相補的な一対の鍵が必要である。このPKC方法および鍵は、一方の補完鍵に関する知識に基づいて、もう一方の補完鍵を決定することが非現実的となるように選択することができる。PKC方法またはアルゴリズムの一例には、その方法の発明者の名、Rivest、Shamir、およびAdelmanまたはElGamalにちなんだRSAがある。通常、公開鍵は1名または複数の関係者(Party)に与えられ、秘密鍵は1名の関係者(Party)が安全に保管し、その他の関係者(Party)はアクセス不能にされる。電子フォーマットのデータは、PKC方法と公開鍵または秘密鍵のいずれかを用いて暗号化することができる。暗号化されたデータを復号化するためには、補完鍵によりPKC方法を適用してデータを回復する必要がある。一般的にPKCはセキュアであるとみなされる。これは、PKC方法を破るのに長い期間、例えば今日利用可能な知識およびコンピューティング資源を用いても1000年以上を要するように、PKC方法および補完鍵の長さが選択されるということである。
PKCを使う手順についての基本的なアプリケーションは、暗号化と署名の2つである。暗号化の一例として、公開鍵を提供された第1の関係者(Party)が、文書を暗号化するために公開鍵を使うことがあげられる。その文書は第2の関係者(Party)に送付され、第2の関係者(Party)は秘密鍵で暗号化文書を復号化する。署名処理の一例として、第1の関係者(Party)が署名と共にメッセージを送ることがあげられる。その署名は、秘密鍵でメッセージを示しているデータを暗号化することにより、算出する。メッセージと署名を受信する第2の関係者(Party)は、第2の関係者(Party)に提供されている公開鍵で署名を復号化する。第2の関係者(Party)は、復号化された署名をメッセージの表現と比較し、同一である場合に、真正な秘密鍵を所有する第1の関係者(Party)によって署名が算出されたと結論を出す。
このPKC手順は、関係者(Party)が公開鍵を受信した、および公開鍵は正当な提供者によって提供されたとの事実に依存してくる。仮にPKC方法はセキュアであったとしても、正当でない関係者(Party)が正当でない公開鍵を提供する場合、そのPKC手順はセキュアではない。暗号化アプリケーションの例においては、正当でない関係者(Party)が関連する秘密鍵を有するので、正当でない関係者(Party)が公開鍵を用いて暗号化した文書を読むことができる可能性がある。署名アプリケーションの例においては正当な関係者(Party)によって送られたメッセージであるという間違った結論に導くような署名付の正当でないメッセージを、正当でない関係者(Party)が送ることができる可能性がある。
したがって、一般的に公開鍵をセキュアな方法で提供することが要望される。さらに、例えば、使用済みの公開鍵はもはやセキュアではなく、または使用済みの公開鍵は更新を予定されているので、セキュアな方法で次の公開鍵を提供することが必要である。使用済みの公開鍵が安全でない理由は、例えば使用済みの公開鍵は、正当でない人物のアクセスにより既に危険にさらされている可能性があるからである。さらなる理由に、新規技術の開発により、PKC手順が破られることのないようにするため必要なセキュリティレベルを使用済み鍵が提供しなくなってしまっている可能性があるからである。
本発明の以下の実施態様に共通の目的は、公開鍵のシーケンスを提供システムから受取システムへ送るセキュアな方法に関する。
本発明の第1実施態様は、公開鍵のシーケンスを提供する提供システムを特徴とする。第1実施態様の目的は、公開鍵のシーケンスをセキュアに提供することである。セキュアに提供する処理は、公開鍵のシーケンスのセキュアな伝送方法の一部となっている。提供システムは、演算ユニットおよび送信ユニットを有する。演算ユニットは、公開鍵のシーケンスを生成し、シーケンスのセキュアな提供を可能にするデータセットを算出する。データセットは、シーケンスの公開鍵に関連付けられので、使用済み公開鍵と置き換えるための追加の公開鍵の提供がセキュアで、すなわち追加の公開鍵とその前に提供されたデータセットとの間の関係がセキュアである。一般に、現在の知識とコンピューティング資源によってセキュアな関係を破ることは非現実的である。その関係は、使用済み公開鍵に関連する使用済み公開鍵または秘密鍵がセキュアでない場合にも安全である。このような場合、使用済みの公開鍵または秘密鍵は、追加の鍵のセキュアな提供方法としては利用できない。この関係によって、追加の鍵は自動化された方法でセキュアに提供することができる。自動化された方法は、追加の公開鍵が1つのメッセージのみを使用して提供することができるので、提供システムおよび送信ユニットへ接続する通信チャネルに関して、高速で効率が良い。さらに、1つのメッセージは、少ないオーバーヘッドデータしか伴わない短いものでよい。すなわち、安全性を提供するデータセットのデータは、追加の公開鍵との比較で同じサイズでもよい。さらに、第1実施態様により、例えば手動の動作を行って、認証された人物へ電子メールによってデータを提供することなく、公開鍵のシーケンスを提供するための1つの通信チャネルを使用することもできる。提供システムは、請求項1において開示され、さらに提供システムの任意の特徴が請求項1の従属項において開示される。
本発明の第2実施態様は、シーケンスの公開鍵を認証するための受取システムを特徴とする。第2実施態様の目的は、提供システムから受け取る公開鍵をセキュアに認証することである。セキュアに認証する処理は、シーケンスのセキュアな伝送方法のさらなる一部となっている。
受信システムは、受信ユニットおよび認証ユニットを有する。受信ユニットはデータセットを受け取り、認証ユニットは、追加の公開鍵と以前に提供されたデータセットとの間のセキュアな関係を利用して追加の公開鍵を認証する。以前に提供されたデータセットは、追加の公開鍵を含むデータセットより前に受信装置によって受け取られる。肯定的な認証結果は、追加の公開鍵がセキュアであり、このためセキュアな公開鍵暗号方式手順に適用可能であるということを確認する。第2実施態様は、第1実施態様と同様の利点である、少ないオーバーヘッドデータの1つのメッセージのみを処理すればよいので、高速で効率の良い自動化された方法で、公開鍵の認証が可能となる。さらに、第2実施態様の受信ユニットは、1つの通信チャネルのみに接続してもよい。受信システムは、請求項6において開示され、さらに、提供システムの任意の特徴は、請求項6の従属項において開示される。
本発明の第3実施態様は、公開鍵のシーケンスを提供する方法を実装することを特徴とするコンピュータである。第3実施態様の目的は、安全な方法でシーケンスを提供することである。第3実施態様は、シーケンスの生成、データセットの提供および次のデータセットの提供を含む。第3実施態様の目的は、セキュアな方法でシーケンスを提供する。第3実施態様はシーケンスを生成し、データセットを提供し、次のデータセットを提供する。第3実施態様の目的は、第1実施態様の目的と類似しており、第3実施態様の機能は、第1実施態様の機能に一致する。したがって、第3実施態様は、第1実施態様の自動化された方法に関連する利点と同様の利点を持つ。すなわち、通信チャネルの数に関しても、高速で効率が良い。第3実施態様は、請求項11において開示され、任意の特徴は請求項11の従属項において開示される。
本発明の第4実施態様は、シーケンスの公開鍵を認証する方法を実装することを特徴とするコンピュータである。第4実施態様の目的は、公開鍵をセキュアな方法で認証することである。第4実施態様は、データセットの受信、次のデータセットの受信、テストハッシュ値の計算、および次のデータセットの次の鍵の認証を含む。第4実施態様の目的は第2実施態様の目的と同様で、第4実施態様の機能は第2実施態様の機能に一致する。したがって、第4実施態様は、第2実施態様の自動化された方法に関連する利点と同じ利点を有する。すなわち、通信チャネルの数に関しても、高速で効率が良い。第4実施態様は、請求項17において開示され、任意の特徴は請求項17に従属項において開示される。
第5実施態様は、第3実施態様のステップを実行するコンピュータプログラム製品を扱う。したがって、第5実施態様の目的および期待される利点は、第3実施態様の目的および期待される利点に合致する。第5実施態様は請求項23において開示される。
第6実施態様は、第4実施態様のステップを実行するコンピュータプログラム製品を扱う。したがって、第6実施態様の目的および期待される利点は、第4実施態様の目的および期待される利点に合致する。第6実施態様は請求項24において開示される。
以下の実施例および記載は、本発明の実施形態を説明するものであって、本発明の範囲を限定することを意図したものではない。
図1は、提供システム100と受取システム200の例示的な実施形態の簡略図である。提供システム100の一実施形態は、2つのコンポーネント、演算ユニット110と送信ユニット120とを有する。受取システム200の実施形態も、2つのコンポーネント、受信ユニット210と認証ユニット220とを有する。図中の2つのユニット間の矢印は、矢印の示す方向にデータを伝送するのに使用するユニット間のインターフェイスを示す。提供システム100の実施形態は、セキュアな方法で受取システム200の実施形態へ公開鍵のシーケンスを提供するのに適用することができる。シーケンスの各公開鍵は、秘密鍵に関連しており、公開鍵暗号方式(PKC)の手順に適用することができる。PKC手順は、二者間のセキュアな電子取引を提供するのに、PKC方法またはアルゴリズムを適用する。PKC手順は通常、一方が秘密鍵を所有し、または秘密鍵へのアクセスを有すること、および他方がその関連する公開鍵を所有し、または公開鍵へのアクセスを有することを意味する。秘密鍵およびその関連する公開鍵は、PKC方法によって1つのコンピュータシステムにより、一緒に生成しなければならない。その結果、関連鍵の1つ、即ち公開鍵は一方のコンピュータシステムから、他方のさらなるコンピュータシステムへ伝送される。二者間のセキュアなPKC手順のため、使用済みの一対の鍵は、例えば若干の使用期間の後、特定のセキュリティレベルの提供に失敗することがあるので、2以上の関連鍵を使用することが有用である。提供システムと受取システムとで、公開鍵のシーケンスは、セキュアな方法で伝送される、すなわち、受け取られた公開鍵は、認証された者によって提供されていることをチェックすることができる。
提供システム100の実施形態は、公開鍵および関連する秘密鍵のシーケンスを生成するように構成された演算ユニット110を備える。さらに、その演算ユニットは、公開鍵と保証値(proof value)を含む複数のデータセットの1つを用いて、複数のデータセットを計算するように構成される。複数の追加のデータセットのうちの1つまたは複数の各データセットは、追加の公開鍵および追加の保証値(proof value)を含むこともできる。保証値(proof value)は、シーケンスの公開鍵に続く追加の公開鍵を含む次のデータセットへハッシュ関数を適用した結果得られる。データセットは、公開鍵がシーケンス内で次に続く追加の公開鍵を有する場合、すなわち、その公開鍵がシーケンスの最後の公開鍵でない場合に保証値(proof value)を有する。保証値(proof value)によって、シーケンスで次に続く追加の公開鍵の受取システムによる認証が可能になる。さらに、データおよびデータ間の関係(relations)の詳細を以下にの図面に表示し、以下の図面の相当する部分で説明する。演算ユニットは、例えばコンピュータの処理ユニットとすることができ、または1つは公開鍵および関連する秘密鍵のシーケンスを生成するコンピュータであり、もう1つは複数のデータセットを計算するコンピュータである、異なる2つのコンピュータを含むようにすることができる。提供システムはさらに、受取システムに複数のデータセットを提供するように構成された送信ユニット120を備える。送信ユニットは、例えば演算ユニットも属するコンピュータの内部に含まれるようにすることもでき、またはデータセットが受取システムに送られるより前にデータセットを伝送するような別個のコンピュータシステムとすることもできる。さらなる実施例において、インターネットへのインターフェイスを提供するコンピュータプログラムとして送信ユニットを実装してもよい。データはそのインターフェイス使用して送ることができるので、そのデータは、インターネットを介して宛先のシステムへ標準フォーマットで送られる。即ち、インターネットによって受信システムへの接続を提供してもよい。さらなる実施例において、提供システムと受取システムとの間の専用接続によって、本システム間でデータを伝送するための通信チャネルとすることもできる。
シーケンスの公開鍵を認証する受取システム200の実施形態は、複数のデータセットを提供システムから受け取るよう構成された受信ユニット210を備える。受取システムの認証ユニット220は、受け取ったデータセットの公開鍵を認証するように構成されている。これは、データセットにハッシュ関数を適用することによってテストハッシュ値を計算すること、およびテストハッシュ値を、シーケンス内の前の公開鍵を含む前のデータセットの保証値(proof value)と比較することによって行なわれる。しばしば、このデータセットより前に、前のデータセットが受信されている。保証値(proof value)とテストハッシュ値とが同一の値を取るのは、肯定的な認証結果であることから、PKC手順のための公開鍵の使用はセキュアとなる。提供システムのユニットと同様に、受取システムのユニットはコンピュータまたはコンピュータシステムの一部であってよい。さらなる実施例においては、このユニットは異なるコンピュータ上にあり、装置も2以上のコンピュータを備えてよい。さらに、受信ユニットは、提供システムに通信チャネルを提供するインターフェイスを有するコンピュータ上で動作するコンピュータプログラムであってもよい。通信チャネルには、それを通じて標準フォーマットで受信データがルーティングされるインターネットを含めることができる。
図2Aは、提供システムの実施形態に関するデータおよびデータ間の関係(relations)の概略図340である。データにはデータセットDS(i+1)343および次のデータセットDS(i+2)341が含まれる。図において、データセットは、シーケンスに含まれる公開鍵の位置にしたがって列挙される。指数iは、1からm−2の範囲内の例示的な整数値を表し、ここでは、シーケンスはm個の公開値を有する。データセットDS(i+1)343は、公開鍵PuK(i+1)および保証値(proof value)PV(i+1)342を含む。保証値(proof value)PV(i+1)342は、次のデータセットDS(i+2)341へハッシュ関数を適用して計算されている。ハッシュ関数の例は、MD4、SHA−256、SHA−512、Snefru、またはTigerなどの、標準化されたハッシュ関数である。さらに、実施形態の実装のために使用することができる標準化されていないハッシュ関数がある。
提供システムの実施形態において、データセットには、さらに、次の情報データ、即ちデータセットの公開鍵が次の公開鍵に置換えられる予定の日付、次の鍵に適用可能なPKC方法の識別、次の公開鍵の長さ、次のデータセットに適用されたハッシュ関数の識別のうち1つまたは複数を含む更新データが含まれる。さらなる実施形態において、更新データにはさらに、提供される公開鍵の認証に関連する追加のデータが含まれることがある。シーケンスの鍵を置換える日付と同様に、シーケンスの最初のデータセットを提供する前に、追加の更新データを決定しなければならない。日付はさらに、鍵を置換える日付の時間の規定と関連付けてもよい。しかし、例示的な事例においては、公開鍵のグループは、前の公開鍵を置換える予定より早く提供されることがある。1つの理由は、1つまたは複数の公開鍵がそこなわれたため、セキュアでなくなってしまうからである。この例示的な事例において、その公開鍵は予定より早く置換えるために使用されるので、グループの公開鍵の置換え日付は、もはや有効ではない可能性がある、そして更新データはそれに従って変更されない可能性がある。図において、例示的な更新日付はUD(i+1)で示す。更新日付UD(i+1)は、例えば公開鍵PuK(i+1)が、データセットDS(i+2)の中に含まれる公開鍵PuK(i+2)によって置換えられることになる予定の日付を指定する。更新日付UD(i+1)は、例えば公開鍵PuK(i+1)が適用されるPKC方法をさらに指定する。PKC方法は、前の公開鍵PuK(i)を用いて使用した前のPKC方法と異なってもよい。PKC方法をそのように変更することによって、セキュリティレベルが高くすることができる。なぜなら、例えば将来の時点において、PKCの手順のため、さらに多くのコンピュータ資源を必要とする、より複雑でよりセキュアなPKCを使用することが有用となることがあるからである。同様に、さらなる実施例において、多数の保証値(proof value)の計算に使用した最初のハッシュ関数は、さらに多数の保証値(proof value)を計算するため使用する第2のハッシュ関数と別のものでもよい。さらなる実施例において、より多くのコンピュータ資源を使用するが、例えば、より高いレベルで衝突がないことによって、より高いレベルのセキュリティを提供するハッシュ関数は、将来の時点で続いて使用することができる。
さらに、提供システムのさらなる実施形態において、演算ユニットはさらに署名値を計算するように構成されている。署名値は、データセットに適用したハッシュ関数の結果に、秘密鍵でPKC方法を適用した結果である。秘密鍵は、データセットの公開鍵に関連付けられる。換言すると、PKC方法は、署名アプリケーションとして、即ちデータセットのための署名を生成するために使用する。さらなる実施形態の送信ユニットは、さらに、データセットで署名値を提供するように構成されている。図において、ハッシュ関数は、ハッシュ値344を求めるため、データセットDS(i+1)343へ適用され、PKC方法、すなわち秘密鍵PrK(i+1)で署名関数を適用することにより署名値SV(i+1)345が得られる。さらなる例において、署名値は、秘密鍵PrK(i+1)で署名関数を直接データセットDS(i+1)に適用することにより計算することができる。
提供システムのための実施例において、シーケンスの生成された一つの公開鍵の長さは、シーケンスの前に生成した一つの公開鍵の長さより長くすることができる。これにより、公開鍵の長さを一定に保つよりも、将来においてより高いレベルのセキュリティを提供することができる。この理由は、今後利用可能なコンピューティング能力が高くなると予想されるので、現在セキュアと考えられている長さは、例えば今から10年後にはセキュアでなくなっている可能性があるからである。例として、シーケンスの公開鍵の長さは、公開鍵を破る者に利用可能なコンピューティング資源の予測される増加量に対応して、5年毎に2倍にすることができる。その例において、PKC方法RSAのための鍵は、開始時に、2048ビットの長さを有し、結果的に2倍にすることができる。提供システムのさらなる実施形態において、シーケンスの一つの公開鍵が適用可能な公開鍵暗号方式は、シーケンスの続く一つの公開鍵が適用可能なPKC方法とは異なる。PKC方法のこのような変更は、更新データ内で適用可能なPKC方法を指定することにより、容易に伝達される。
図2Bは、受取システムの実施形態のデータおよびデータ間の関係(relations)の概略図350である。データには、提供システムから受信したデータセットDS(i+1)343、およびその前に受信したデータセットDS(i)の前の保証値(proof value)PV(i)355が含まれる。
受取システムにおいては、ハッシュ関数をデータセットDS(i+1)343に適用することにより、テストハッシュ値352を計算する。テストハッシュ値352を保証値(proof value)PV(i)355と比較する。
一実施例において、受信するデータセットには、以下の情報、すなわちデータセットの公開鍵を次の公開鍵と置換する予定の日付、次の鍵が適用可能な公開鍵暗号方式の識別、次の公開鍵の長さ、およびそのデータセットに続くデータセットに適用されたハッシュ関数の識別のうち1つまたは複数を含む更新データがさらに含まれる。
受取システムの受信ユニットはさらに、受信するデータセットとともに署名値を受信するように構成されており、認証ユニットは、さらにオリジナルの値を計算することにより受信されたデータセットの公開鍵を認証するように構成されている。オリジナルの値は、受信したデータセットの公開鍵でPKC方法を適用することにより、署名値から計算する。認証にはさらに、計算されたオリジナルの値をデータセットのハッシュ値と比較することが含まれる。図において、データセットDS(i+1)343を署名値SV(i+1)345に関連付ける。一例において、データセットDS(i+1)343と署名値SV(i+1)345との間の関連付けは、DS(i+1)343とSV(i+1)345を1つのメッセージ内で送信することによって、提供システムによって作成される。このような場合、受取システムは、そのメッセージ内のDS(i+1)343とSV(i+1)345を識別することにより、関連付けを識別することできる。別の例において、DS(i+1)343とSV(i+1)345は別個のメッセージ内で送信し、関連付けは両メッセージの共通の識別子によって作成する。オリジナルの値353は、SV(i+1)345へ、公開鍵PuK(i+1)で検証関数を適用することにより作成する。オリジナルの値353をテストハッシュ値352と比較する。PuK(i+1)の検証関数は、PrK(i+1)の署名関数と相補する、すなわち、検証関数は、署名関数で暗号化された引数を復号化して、署名関数のオリジナルの引数を与える。検証関数と署名関数との間のこのような関係は、関連鍵の暗号化および復号化の方法を用いるPKCに従うものである。
受取システムのさらなる実施形態において、シーケンスの一つの公開鍵の長さは、シーケンスの前の一つの公開鍵の長さより長い。また、受信データの公開鍵が適用可能なPKC方法は、追加の受信データセットの追加の公開鍵が適用可能なPKC方法と異なる。両方の特徴は、シーケンスの全寿命を考慮に入れて公開鍵に関するセキュリティレベルを向上する。
図3は、本発明の例示の実施形態によるデータ、およびそのデータ間の関係(relations)を示す。データの第1の部分310とその関係は、提供システムの実施形態により提供され、受取システムの実施形態により受信される2個の公開鍵のシーケンスに関する。第1のデータセット311は、第1の公開鍵PuK(1)、更新データUD(1)、および保証値(proof value)PV(1)を含む。第1の部分310の実施形態では、さらなるセキュリティレベルを提供するための署名値は使用されない。受取システムの実施形態によって、第1の公開鍵は、当業者に知られている方法で認証することができる。これは、例えば、追加の通信チャネルを用いて、公開鍵PuK(1)と同時にUD(1)、およびPV(1)の信頼性(authenticity)をチェックすることによって行う。第2のデータセット312は、PuK(2)がシーケンスの最後の公開鍵になるので、第2の公開鍵PuK(2)のみを提供する。第2の公開鍵PuK(2)は、実施形態により、認証チェック313に利用することができる。認証チェック313には、第2の公開鍵PuK(2)にハッシュ関数を適用した結果得られる値Hと、PV(1)との比較をが含まれる。認証チェックが不合格、すなわち比較によりPV(1)とHとの間の相違が明らかなとき、PuK(2)はセキュアではないとみなされる。受取システムを使用する者は、提供システムを使用する者に連絡し、PKC手順を継続する方法の合意を得ることができる。チェックが不合格である理由を調査するか、またはPKC手順を継続するために、公開鍵と秘密鍵の新規のシーケンスを生成してもよい。
データの第2の部分320とその関係は、その実施形態によるn個の公開鍵のシーケンスに関連する。保証値(proof value)の一部、およびその部分の保証値(proof value)が次の保証値(proof value)にどのように関連するかが示される。一例として、第1の保証値(proof value)PV(1)は、第2の保証値(proof value)PV(2)によって定まり、これはさらに3番目の保証値(proof value)PV(3)によって定まる。したがって第1の保証値(proof value)は、保証値(proof value)PV(n−1)までの次の保証値(proof value)によって定まる。これは、第1のデータセット321を提供するより前に、次のデータセットの公開鍵と更新データが利用可能であることを意味する。第1のデータセット321に続いて、第2のデータセット322が提供され、その結果受信される。第2の公開鍵PuK(2)は、第1の保証値(proof value)PV(1)と、第2のデータセット322にハッシュ関数を適用することにより計算される値とを比較する認証チェック323により認証する(authenticate)ことができる。次のデータセットは認証チェックに適用することができる。ここでは、その公開鍵PuK(i+1)が認証チェック325により認証される(i+1)番目のデータセット324について示す。最後のデータセット326には、認証チェック327においてチェックされる公開鍵PuK(n)が含まれる。データセットを提供する日付および公開鍵が前の公開鍵に置換わる日付は、第1のデータセット321を提供するより前に設定することができる。しかし、設定される日付から離すために後の時点での設定が必要なこともある。一例として、PKC手順のため公開鍵番号i=42が使用されるが、PKC手順に使用する次の公開鍵は公開鍵番号i=100とする必要があることがある。1つの理由は、公開鍵番号i=100はより長いので、前の公開鍵よりセキュアであるからである。そのような場合において、番号i=42からi=100の公開鍵を含むデータセットは、順に短期間で提供されるので、番号i=43からi=99を公開鍵は、PKC手順用はアクセスされない。効率的に、必要に応じて、PKC手順用の公開鍵は番号i=42からi=100に変更される。これは、番号i=42からi=100の公開鍵を含むデータセットを、1つのメッセージ内に入れ、およびその1つのメッセージを受取システムに提供することによってもまた達成される。受取システムは、本発明の実施形態により、その1つのメッセージ内に含まれるデータセットを順にチェックする。
図4は、本発明の実施形態によるデータおよびそのデータ間の関係(relations)のさらなる例330を示す。データおよびその関係は、署名値を含んでおり、提供システムの実施形態(図2A参照)および受取システムの実施形態(図2B参照)によるデータの例とすることもできる。データとその関係は、2個の公開鍵のシーケンスの伝送に関連する部分330に属する。第1のデータセットには、公開鍵PuK(1)、更新データUD(1)、および保証値(proof value)PV(1)が含まれる。第1のデータセットには署名値SV(1)が提供される。第1のデータセットと署名値SV(1)と間の関係付け331は、第1のデータセットと署名値SV(1)とを1つのメッセージ内に入れることにより実装することができる。第1の認証チェック332には、ハッシュ関数を第1のデータセットに適用することにより計算する第1のテストハッシュ値と、第1のオリジナルの値との比較が含まれる。第1のオリジナルの値は、第1の秘密鍵の検証関数を、第1の署名値SV(1)に適用することによって計算される。第2の関連付け333には、第2のデータセットと第2の署名値SV(2)とが含まれる。第2の認証チェック334には、2つの比較が含まれる。その1つは、第1の保証値(proof value)PV(1)を用いて第2の鍵PuK(2)の信頼性をチェックする比較、およびもう1つは、第2の公開鍵PuK(2)の検証関数を使うさらなる比較である。
図5は、本発明による方法400の簡略フロー図である。方法400は、受取システムに公開鍵のシーケンスを提供するコンピュータ実装方法である。方法400は、提供システムが公開鍵のシーケンスを生成するステップ410と、受取システムにデータセットを提供するステップ420とを含む。データセットは、シーケンス内に次の公開鍵を有するシーケンスの公開鍵、および次のデータセットにハッシュ関数を適用した結果である保証値(proof value)を含む。その方法はさらに、受取システムに次のデータセットを提供するステップ430を含み、次のデータセットは次の公開鍵を含む。一例において、次のデータセットはさらに、次の保証値(proof value)を含むことができる。次の保証値(proof value)は、シーケンス内のさらに次の公開鍵を含むさらに次のデータセットにハッシュ関数を適用した結果である。この一例においては、次の公開鍵はシーケンス内で続くさらに次の公開鍵を有するので、次の保証値(proof value)が含まれるのである。方法400はさらに、データセットのための署名値を提供するステップ440という任意に選択可能な方法のステップを含む。図5および図6において、任意に選択可能な方法のステップは点線で示す。署名値は、データセットへ適用したハッシュ関数の結果に、秘密鍵によるPKC方法を適用した結果である。秘密鍵はデータセットの公開鍵に関連づけられる。方法400において、さらなる任意に選択可能な方法のステップは、追加のデータセットのために提供を繰り返すステップを含む。追加のデータセットには、シーケンス内で以前に提供された公開鍵に続く追加の公開鍵が含まれる。さらに、次のデータセットには、ハッシュ関数を追加のデータセットに適用した結果である追加の保証値(proof value)が含まれる。一例において、追加のデータセットにはさらに、追加の保証値(proof value)が含まれる。追加の保証値(proof value)は、シーケンス内で追加の鍵に続くさらに追加の公開鍵を含むデータセットに、ハッシュ関数を適用した結果である。この一例においては、追加の公開鍵はシーケンス内で続くさらに追加の公開鍵を有するので、追加の保証値(proof value)が含まれるのである。追加のデータセットを提供する任意に選択可能な方法のステップは、シーケンス内で追加の公開鍵が続くかどうかの条件をチェックするステップ452として実装される。条件が満たされると、方法のステップ430および440を繰り返す。方法のステップを繰り返す時点は、シーケンスの第1の公開鍵を含む第1のデータセットを提供するより前に設定される。その時点として設定される期間は、例えば1ヶ月であってもよい。
その実施形態において、提供されたデータセットには、提供された公開鍵を認証することに関連するデータを含む更新データがさらに含まれる。そのような更新データは、例えばPKC方法の識別子およびハッシュ関数の識別子を含んでもよい。当業者が理解できるように、方法のステップ400は、異なる順序で実行してもよい。例えば、署名値を提供するステップ440は、次のデータセットを提供するステップ430より前に実行してもよい。
図6は、本発明によるさらなる方法500の簡略フロー図である。方法500は、提供システムから受信した公開鍵のシーケンスの公開鍵を認証するコンピュータ実装方法を具実現する。その実施形態では、シーケンス内に次の公開鍵を有する公開鍵が備えられ、ハッシュ関数の結果である保証値(proof value)を含むデータセットを受信するステップ510である受取システムが備えられる。その実施例はさらに、次の公開鍵を含む次のデータセットを受信するステップ520を備えられる。一例においては、次のデータセットにはさらに、ハッシュ関数の結果である次の保証値(proof value)を含めることができる。次の公開鍵がシーケンス内で続くさらに次の公開鍵を有する場合には、保証値(proof value)が含まれることができる。その実施形態には、ハッシュ関数を次のデータセットに適用することによりテストハッシュ値を計算するステップ530、および次の公開鍵を認証するステップ540が含まれる。次の鍵を認証するステップ540は、データセットの保証値(proof value)をテストハッシュ値と比較することによって実行される。ここで、保証値(proof value)とテストハッシュ値とが同一であるときは肯定的な認証結果となる。その実施例ではさらに、次のデータセットのために署名値を受信すること550、次のデータセットの公開鍵で公開鍵暗号方式を適用することによって署名値からオリジナルの値を計算するステップ560、およびさらなる比較を用いて次の公開鍵を認証するステップ570の任意に選択可能な方法のステップが備えられている。さらなる比較を用いて認証するステップ570は、計算されたオリジナルの値と、次のデータセットのテストハッシュ値とをさらに比較することにより実行される。認証するステップ540および認証するステップ570の方法のステップが比較値が同一であることは、肯定的な認証結果であることを意味する。
方法500はさらに、以下の追加の公開鍵を含む追加のデータセットを受信するステップ、ハッシュ関数を追加のデータセットに適用することにより追加のテストハッシュ値を計算するステップ、追加の公開鍵を認証するステップとを、繰り返すステップとを備える。さらに、次のデータセットには、追加の公開鍵を認証するために使用することのできる次の保証値(proof value)を含まれる。一例においては、ステップの繰り返しは、複数回数行ってもよい。一般的に、認証するステップ540は、前のデータセットに含まれる前の保証値(proof value)と、現在のデータセットから計算されたテストハッシュ値とを比較することによって実行することができる。前のデータセットは、シーケンス内に前の公開鍵を含み、現在のデータセットは、シーケンス内に前の公開鍵に続く現在の公開鍵を含む。さらに、方法500は、検証関数を適用することによって計算された追加のオリジナルの値を、追加の署名値と比較することによって、追加の公開鍵を認証するステップ570を備える。繰り返しのさらなる方法のステップは、方法500において、シーケンス内で追加の公開鍵が続くかどうかの条件をチェックするステップ482によって実装される。したがって、さらなる比較によって認証するステップ570もまた繰り返される。保証値(proof value)とテストハッシュ値とが同一であること、およびオリジナルの値とテストハッシュ値とが同一であることは、肯定的な認証結果であることを示す。追加の公開鍵がシーケンス内で続く追加の公開鍵をまだ有する場合には、追加の保証値(proof value)が備えられる。その実施形態において、受信するデータセットには、受信データセットの公開鍵を認証することに関連するデータを含む更新データがさらに含まれる。そのようなデータには、例えば公開鍵暗号方式の識別およびハッシュ関数の識別を含めることができる。当業者によって理解されるように、方法500の方法のステップは、異なる順序で実行してもよい。例えば、署名値を受信するステップ550は、次のデータセットを受信するステップ520より前に実行してもよい。
本発明のさらなる実施形態では、コンピュータシステムにより実行可能で、シーケンスを提供する方法400の方法のステップをコンピュータシステムに実行させる命令が備えられたコンピュータプログラム製品である。さらなる例において、このコンピュータプログラム製品は、シーケンスを提供するさらなる方法のステップに関連する命令を有することもできる。さらなる実施形態では、コンピュータシステムによって実行可能で、公開鍵を認証する方法500の方法のステップをコンピュータシステムに実行させる命令が備えられた、さらなるコンピュータプログラム製品である。さらなる例において、さらなるコンピュータプログラム製品は、公開鍵を認証するさらなる実施形態の方法のステップに関連する命令を有することができる。
PKC手順に関する一実施例では、認証局が発行する証明書(certification)が関連してくる。この例において、証明書には、関係者(Party)のID、関係者(Party)に発行された公開鍵、および認証局の署名が含まれる。関係者(Party)は、例えば個人、組織、またはサーバであってよい。この例において、署名はPKC署名アプリケーションのフレームワーク内で作成する。すなわち、署名は、関係者(Party)のIDおよびある秘密鍵の公開鍵を暗号化することにより計算されてある。署名は、証明書を受領する追加の関係者(Party)が、証明書から公開鍵とIDとの間の関係の正当性をチェックすることを可能にする。公開鍵は正当であると推定すると、追加の関係者(Party)はこのようにそのIDをチェックすることができる。例えば認証局によって適用されるための秘密鍵と関連する公開鍵の組は、ルート鍵とも呼ばれる。信頼性のチェックが必要なその追加の関係者(Party)は、セキュアな方法で提供されたルート鍵の公開鍵が必要である。その追加の関係者(Party)は、例えば、銀行取引業務により使用されるセキュアハイパーテキスト転送プロトコル(HTTPS)サーバであってもよい。その例において、認証局のルート鍵の公開鍵は、可能な限りセキュアな自動化された方法により、多数の追加の関係者(Party)に広めなければならない。さらに、ルート鍵の1個の公開鍵を、ルート鍵の追加の公開鍵で置換えることも、セキュアで自動的であることが望ましい。一例として、認証局は、向こう15年間、証明書のために使用する1000組のルート鍵を生成してもよい。第1の動作可能な公開鍵の第1のデータセットは、例えば、ICカード上に書き込みそのICカードを配布するなど、確立した方法で配布してもよい。
上述のように、本発明の範囲内の実施形態は、コンピュータプログラム製品を含む。そのコンピュータプログラム製品は、コンピュータ実行可能命令、すなわち、コンピュータシステムによって実行可能な命令を搬送または所持するためのコンピュータ読取可能媒体、またはそれに記憶されるデータ構造を搬送するためのコンピュータ読取可能媒体を含む。そのようなコンピュータ読取可能媒体は、汎用または専用コンピュータによってアクセスすることができる任意の利用可能な媒体であってよい。例として、そのようなコンピュータ読取可能媒体は、RAM、ROM、EPROM、EEPROM、CD−ROMまたはその他の光ディスクストレージ、磁気ディスクストレージまたはその他の磁気記憶装置、または、コンピュータ実行可能命令またはデータ構造の形式で、所望のプログラムコードを搬送または格納するために使用することができ、汎用または特別な用途のコンピュータによってアクセスすることができる、任意のその他の媒体を構成してもよい。情報は、ネットワークまたは別の通信接続(有線、無線、または有線または無線の組合せ)上で、コンピュータに転送または提供されるとき、コンピュータはその接続をコンピュータ読取可能媒体と相応に見なす。したがって、任意のそのような接続は、コンピュータ読取可能媒体と、相応に称される。上述の組合せもまた、コンピュータ読取可能媒体の範囲に含まれる。コンピュータ実行可能命令は、例えば、汎用コンピュータ、専用コンピュータ、または専用処理装置に、ある機能または一連の機能グループを動作させる命令およびデータを含む。さらに、コンピュータ実行可能命令は、例えば、コンピュータによって実行可能なフォーマットに命令を変換するために、コンピュータが処理しなければならない命令を含む。コンピュータ実行可能命令は、実行可能なフォーマットで命令を取得するコンパイルまたはインタープリットである、ソースフォーマット内であってもよい。コンピュータ実行可能命令を変換する場合、第1のコンピュータは、例えば、コンピュータ実行可能命令を実行可能なファーマットに変換してもよく、第2のコンピュータは、その変換された命令を実行してもよい。
本発明は、一実施形態において、ネットワーク環境内のコンピュータが実行するプログラムコードのような、コンピュータ実行可能命令を含むコンピュータプログラム製品によって実装できる方法のステップの一般的コンテキストで記述される。一般的に、プログラムモジュールは、例えば、特定の課題を実行するか、または特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、コンポーネント、またはデータ構造を含む。コンピュータ実行可能命令、関連データ構造、およびプログラムモジュールは、ここに開示する方法のステップを実行するためのプログラムコードの例を表す。
そのような実行可能命令または関連データ構造の特定のシーケンスは、そのようなステップにおいて記述される機能を実装するための対応する動作の例を表す。
いくつかの実施形態における本発明は、プロセッサを有する1つまたは複数のリモートコンピュータへの論理接続を使用するネットワーク環境において動作してもよい。論理接続は、例えば、ローカルエリアネットワーク(LAN)および広域ネットワーク(WAN)を含んでもよい。例は、一例としてここに提示するものであって、限定はされない。そのようなネットワーク環境は、事務所規模または企業規模のコンピュータネットワーク、イントラネットおよびインターネットにおいて一般的なものである。当業者は、そのようなネットワークコンピューティング環境が、通常、パーソナルコンピュータ、携帯端末、マルチプロセッサシステム、マイクロプロセッサに基づくまたはプログラム可能な家電製品、ネットワークPC、ミニコンピュータ、メインフレームコンピュータなどを含む、多くのタイプのコンピュータシステム構成を網羅することを理解するであろう。本発明は、通信ネットワークを介し、(有線リンク、無線リンク、または有線リンクまたは無線リンクの組合せの何れかによって)リンクされるローカルおよびリモートの処理装置により課題が実行される分散コンピューティング環境においても実行することができる。分散コンピューティング環境において、プログラムモジュールをローカルおよびリモートメモリ記憶装置内に配置してもよい。
本発明の全体システムまたは一部を実装するための例示的システムは、処理装置、システムメモリ、およびシステムメモリを含む各種システムコンポーネントを処理装置へ結合するシステムバスを備えた、従来のコンピュータの形式の汎用コンピュータを含むかもしれない。システムメモリは、読取専用メモリ(ROM)およびランダムアクセスメモリ(RAM)を含んでもよい。コンピュータは、磁気ハードディスクから読取りおよび書込みをする磁気ハードディスクドライブ、リムーバブル磁気ディスクから読取りおよび書込みをする磁気ディスクドライブ、およびCD−ROMまたは別の光媒体などのリムーバブル光ディスクから読取りおよび書込みをする光ディスクドライブを含んでもよい。ドライブおよびそれらの関連コンピュータ読取可能媒体は、コンピュータ実行可能命令、データ構造、プログラムモジュールおよびその他のコンピュータ用データの非揮発性ストレージを提供する。
本発明のソフトウエアおよびウエブの実装は、論理に基づくルール、および、各種のデータベース検索のステップ、相関のステップ、比較のステップおよび決定のステップを達成するためのその他の論理の標準プログラミング技術で達成できた。明細書および請求項において使用する用語「コンポーネント」は、ソフトウエアコードの一行または複数行を使用する実装、および/またはハードウエア実装、および/または手動入力を受信する装置を網羅するよう意図されていることにも注意しなければならない。
本発明の実施形態の前記の記述は、図示および記述の目的のため表わされてきた。それは、開示された厳密な形に、網羅または限定されることを意味しないので、修正または変更は、上記技術の観点から可能であり、または本発明の実施から取得されてもよい。様々な実施形態で、および熟考された特定用途に適するような様々な変更と共に、本発明を利用することを当業者に可能にさせるための、本発明の原理およびその実用化を説明するために、実施形態を、選択し、記述してきた。
提供システムおよび受取システムの例示的な実施形態の簡略図である。 提供システムの一実施形態に関するデータおよびデータ間の関係(relations)の概略図である。 受取システムの一実施形態に関するデータおよびデータ間の関係(relations)の概略図である。 本発明の実施形態によるデータおよびデータ間の関係(relations)を示す図である。 本発明の実施形態によるデータおよびデータ間の関係(relations)のさらなる例を示す。 本発明による方法の簡略フロー図である。 本発明によるさらなる方法の簡略フロー図である。

Claims (20)

  1. 各々が、秘密鍵に関連し、公開鍵暗号方式の手順に適用可能である公開鍵シーケンスを、受取システム(200)に提供する提供システム(100)であって、
    公開鍵の前記シーケンスおよび関連する秘密鍵を生成し、公開鍵および保証値(proof value)(342)を含む複数のデータセット(311、312、321、322、324、326、331、333、343)を計算するように構成された演算ユニット(110)であって、前記保証値(proof value)(342)は前記シーケンスにおいてさらに次の公開鍵を含む次のデータセット(341)にハッシュ関数を適用した結果である演算ユニット(110)と、
    前記受取システム(200)に、前記複数のデータセット(311、312、321、322、324、326、331、333、343)を提供するように構成された送信ユニット(120)と
    を備えたことを特徴とする提供システム(100)。
  2. 前記データセット(311、312、321、322、324、326、331、333、343)は、前記データセットの前記公開鍵が次の公開鍵に置き換えられるよう定めた日付、前記次の公開鍵が適用可能である公開鍵暗号方式の識別、前記次の公開鍵の長さ、および前記次のデータセットに適用された前記ハッシュ関数の識別のうちの、1つまたは複数の情報を含む更新データをさらに含むことを特徴とする請求項1に記載の提供システム(100)。
  3. 前記演算ユニットは、前記データセット(343)に適用したハッシュ関数の結果に、公開鍵を有する公開鍵暗号方式を適用した結果得られる署名値(345)を計算するようさらに構成され、前記秘密鍵は前記データセット(343)の公開鍵に関連し、前記送信ユニットは、データセット(343)により、署名値(345)を提供するようさらに構成されたことを特徴とする請求項1または2に記載の提供システム。
  4. 生成される前記シーケンスの公開鍵の長さは、前に生成された前記シーケンスの前に生成された公開鍵の長さより長いことを特徴とする請求項1ないし3のいずれかに記載の提供システム。
  5. 前記シーケンスの公開鍵を使用する公開鍵暗号方式は、追加の前記シーケンスの追加の公開鍵を使用する追加の公開鍵暗号方式とは異なることを特徴とする請求項1ないし4のいずれかに記載の提供システム。
  6. 各々が、秘密鍵に関連しており、公開鍵暗号方式の手順に適用可能である、提供システム(100)から受信した公開鍵のシーケンスの公開鍵を認証する受取システム(200)であって、
    前記提供システム(100)から公開鍵を含む複数のデータセット(311、312、321、322、324、326、331、333、343)を受信するように構成された、受信ユニット(210)と、
    前記データセット(343)にハッシュ関数を適用することによって、テストハッシュ値(352)を計算し、および前記テストハッシュ値(352)を以前のデータセットの保証値(proof value)(355)と比較することによって、前記データセット(343)の公開鍵を認証するように構成された認証ユニット(220)であって、前記保証値(proof value)(355)と前記テストハッシュ値(352)とが同一であることは、認証結果が肯定的である認証ユニット(220)と
    を備えたことを特徴とする受取システム(200)。
  7. 前記データセット(311、312、321、322、324、326、331、333、343)は、前記データセットの前記公開鍵が次の公開鍵に置き換えられるよう定めた日付、前記次の鍵が適用可能である公開鍵暗号方式の識別、前記次の公開鍵の長さ、および前記データセットの次のデータセットに適用されたハッシュ関数の識別のうち1つまたは複数の情報を含む更新データをさらに含むことを特徴とする請求項6に記載の受取システム。
  8. 前記受信ユニット(210)は、前記データセット(343)とともに署名値(345)を受信するさらに構成されること、並びに前記認証ユニット(220)は、前記署名値(345)からオリジナルの値(353)をさらに計算し、前記公開鍵を用いる公開鍵暗号方式を適用し、および計算された前記オリジナルの値を前記データセット(343)の前記テストハッシュ値(352)と比較することによって、前記データセット(343)の前記公開鍵を認証するようさらに構成されたことを特徴とする請求項6または7に記載の受取システム。
  9. 前記シーケンスの公開鍵の長さは、前記シーケンスの以前の公開鍵の長さより長いことを特徴とする請求項7または8に記載の受取システム。
  10. 受信データセットの公開鍵を使用する公開鍵暗号方式は、追加で受信したデータセットの追加の公開鍵を用いる追加の公開鍵暗号方式とは異なることを特徴とする請求項6ないし9のいずれかに記載の受取システム。
  11. 各々が、秘密鍵に関連し、公開鍵暗号方式の手順に適用可能である、公開鍵のシーケンスを受取システム(200)に提供するコンピュータ実装方法(400)であって、
    公開鍵のシーケンスを生成すること(410)、
    前記シーケンス内に次の公開鍵を有する前記シーケンスの公開鍵を含み、次のデータセット(341)にハッシュ関数を適用した結果である保証値(proof value)(342)を含む、データセット(311、312、321、322、324、326、331、333、343)を、前記受取システム(200)に提供し(420)、前記受取システム(200)に、前記次の公開鍵を含む前記次のデータセット(341)を提供する(430)、提供システム(100)を備えたことを特徴とする方法(400)。
  12. 前記提供するステップ(430)ステップは、追加の公開鍵を含む追加のデータセットのために繰り返され、前記次のデータセット(341)は、前記追加のデータセットにハッシュ関数を適用した結果である次の保証値(proof value)をさらに含むことを特徴とする請求項11に記載の方法。
  13. 前記データセット(311、312、321、322、324、326、331、333、343)は、提供された公開鍵の認証に関連するデータを含む更新データをさらに含むことを特徴とする請求項11または12に記載の方法。
  14. 前記データセット(343)について、前記データセット(343)に適用されたハッシュ関数の結果に、秘密鍵は、前記データセット(343)の前記公開鍵に関連する秘密鍵を用いる公開鍵暗号方式を適用した結果である署名値(345)を提供すること(440)をさらに特徴とする、請求項11ないし13に記載のいずれかの方法。
  15. 各々が秘密鍵に関連し、公開鍵暗号方式の手順に適用可能である、提供システム(100)から受信する公開鍵のシーケンスの公開鍵を認証するコンピュータ実装方法(500)であって、
    前記シーケンス内の次の公開鍵を有する公開鍵を含み、ハッシュ関数の結果である保証値(proof value)(355)をさらに含むデータセットを受信し(510)、
    前記次の公開鍵を含む次のデータセット(343)を受信し(520)、前記次のデータセット(343)へ、前記ハッシュ関数を適用することにより、テストハッシュ値(352)を計算し(530)、
    前記データセットの保証値(proof value)(355)とテストハッシュ値(352)との同一性が肯定的認証結果である、前記データセットの前記保証値(proof value)(355)を前記テストハッシュ値(352)と比較することにより、前記次の公開鍵を認証する(540)
    受取システム(200)を備えたことを特徴とする前記方法。
  16. 受信すること(520)、計算すること(530)、および認証すること(540)のステップは、追加の公開鍵を含む追加のデータセット(341)のために繰り返し、前記次のデータセット(343)は、ハッシュ関数の結果である次の保証値(proof value)(342)をさらに含むことを特徴とする請求項15に記載の方法。
  17. 受信データセットは、受信データセットの公開鍵の認証に関連するデータをさらに含む追加の更新データをさらに含むことを特徴とする請求項15または16に記載の方法。
  18. 前記次のデータセット(343)のために、署名値(345)をさらに受信し(550)、前記次のデータセット(343)の次の前記公開鍵を使用する公開鍵暗号方式を適用することによって、署名値(345)からオリジナルの値(353)を計算し(560)、前記計算したオリジナルの値(353)を前記次のデータセット(343)の前記テストハッシュ値(352)とさらに比較することによって、前記次の公開鍵を認証すること(353)である請求項15ないし17のいずれかに記載の方法。
  19. コンピュータシステムによって実行可能な命令で、請求項11ないし14のいずれかの前記方法のステップの実行を、前記コンピュータシステムに引き起こす命令を備えたコンピュータプログラム製品。
  20. コンピュータシステムによって実行可能な命令で、請求項15ないし18のいずれかの前記方法のステップの実行を、前記コンピュータシステムに引き起こす命令を備えたコンピュータプログラム製品。
JP2006214165A 2005-08-05 2006-08-07 公開鍵暗号方式に使用する鍵を更新するシステムおよび方法 Active JP4593533B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP05017140A EP1750389B1 (en) 2005-08-05 2005-08-05 System and method for updating keys used for public key cryptography

Publications (2)

Publication Number Publication Date
JP2007049708A true JP2007049708A (ja) 2007-02-22
JP4593533B2 JP4593533B2 (ja) 2010-12-08

Family

ID=35431060

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006214165A Active JP4593533B2 (ja) 2005-08-05 2006-08-07 公開鍵暗号方式に使用する鍵を更新するシステムおよび方法

Country Status (6)

Country Link
US (1) US7974415B2 (ja)
EP (1) EP1750389B1 (ja)
JP (1) JP4593533B2 (ja)
CN (1) CN100521601C (ja)
AT (1) ATE374478T1 (ja)
DE (1) DE602005002652T2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009267900A (ja) * 2008-04-28 2009-11-12 Kddi Corp 鍵生成装置、証明書生成装置、サービス提供システム、鍵生成方法、証明書生成方法、サービス提供方法およびプログラム
JP2010279021A (ja) * 2009-05-27 2010-12-09 Avaya Inc 安全な記号ストリングの段階的確立

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8214638B1 (en) * 2006-09-26 2012-07-03 Hewlett-Packard Development Company, L.P. Using multiple certificates to distribute public keys
CN101170407B (zh) * 2007-12-03 2011-01-12 北京深思洛克软件技术股份有限公司 一种安全地生成密钥对和传送公钥或证书申请文件的方法
EP2104269A1 (en) 2008-03-17 2009-09-23 Robert Bosch Gmbh An electronic control unit (ECU) and a method for verifying data integrity
FR2931326A1 (fr) * 2008-05-16 2009-11-20 St Microelectronics Rousset Verification d'integrite d'une cle de chiffrement
CN101286840B (zh) * 2008-05-29 2014-07-30 西安西电捷通无线网络通信股份有限公司 一种利用公钥密码技术的密钥分配方法及其系统
US9026805B2 (en) 2010-12-30 2015-05-05 Microsoft Technology Licensing, Llc Key management using trusted platform modules
US11418580B2 (en) 2011-04-01 2022-08-16 Pure Storage, Inc. Selective generation of secure signatures in a distributed storage network
US10298684B2 (en) 2011-04-01 2019-05-21 International Business Machines Corporation Adaptive replication of dispersed data to improve data access performance
US8874991B2 (en) * 2011-04-01 2014-10-28 Cleversafe, Inc. Appending data to existing data stored in a dispersed storage network
US8948399B2 (en) * 2011-05-27 2015-02-03 Novell, Inc. Dynamic key management
US9008316B2 (en) * 2012-03-29 2015-04-14 Microsoft Technology Licensing, Llc Role-based distributed key management
US9285981B1 (en) 2012-07-16 2016-03-15 Wickr Inc. Discouraging screen capture
US10129260B1 (en) 2013-06-25 2018-11-13 Wickr Inc. Mutual privacy management
US9866591B1 (en) 2013-06-25 2018-01-09 Wickr Inc. Enterprise messaging platform
US10567349B2 (en) 2013-06-25 2020-02-18 Wickr Inc. Secure time-to-live
US9830089B1 (en) 2013-06-25 2017-11-28 Wickr Inc. Digital data sanitization
JP6312344B2 (ja) * 2014-02-18 2018-04-18 日本電信電話株式会社 セキュリティ装置、その方法、およびプログラム
US9698976B1 (en) 2014-02-24 2017-07-04 Wickr Inc. Key management and dynamic perfect forward secrecy
US9584530B1 (en) 2014-06-27 2017-02-28 Wickr Inc. In-band identity verification and man-in-the-middle defense
US9928149B2 (en) * 2014-08-29 2018-03-27 Cynny Space Srl Systems and methods to maintain data integrity and redundancy in a computing system having multiple computers
US9654288B1 (en) 2014-12-11 2017-05-16 Wickr Inc. Securing group communications
US9584493B1 (en) 2015-12-18 2017-02-28 Wickr Inc. Decentralized authoritative messaging
US10291607B1 (en) 2016-02-02 2019-05-14 Wickr Inc. Providing real-time events to applications
CN105915333B (zh) * 2016-03-15 2019-08-23 南京邮电大学 一种基于属性加密的高效密钥分发方法
US9591479B1 (en) 2016-04-14 2017-03-07 Wickr Inc. Secure telecommunications
US9590958B1 (en) 2016-04-14 2017-03-07 Wickr Inc. Secure file transfer
TWI608722B (zh) * 2016-06-23 2017-12-11 Public key certificate method
US11283626B2 (en) * 2016-09-06 2022-03-22 Huawei Technologies Co., Ltd. Apparatus and methods for distributed certificate enrollment
US10855566B2 (en) 2016-09-30 2020-12-01 Sap Se Efficiency and performance in Internet-of-Things scenarios
US10897360B2 (en) * 2017-01-26 2021-01-19 Microsoft Technology Licensing, Llc Addressing a trusted execution environment using clean room provisioning
AU2019355110A1 (en) 2018-10-02 2021-04-08 Capital One Services, Llc Systems and methods for cryptographic authentication of contactless cards
US20220417036A1 (en) * 2021-06-29 2022-12-29 Amazon Technologies, Inc. Identity authority

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002297548A (ja) * 2001-03-30 2002-10-11 Matsushita Electric Ind Co Ltd 端末登録システムとそれを構成する装置及び方法
WO2005029763A1 (en) * 2003-09-22 2005-03-31 Impsys Digital Secuirty Ab Data communication security arrangement and method

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3080382B2 (ja) * 1990-02-21 2000-08-28 株式会社日立製作所 暗号通信システム
WO1998032113A1 (fr) * 1997-01-17 1998-07-23 Ntt Data Corporation Procede et systeme de controle de cle pour signature electronique
US6820202B1 (en) * 1998-11-09 2004-11-16 First Data Corporation Account authority digital signature (AADS) system
US6976162B1 (en) * 2000-06-28 2005-12-13 Intel Corporation Platform and method for establishing provable identities while maintaining privacy
JP3890959B2 (ja) * 2001-11-22 2007-03-07 株式会社日立製作所 公開鍵証明書の生成システム及び検証システム
JP3897613B2 (ja) * 2002-02-27 2007-03-28 株式会社日立製作所 公開鍵暗号方式における登録局サーバの運用方法、登録局サーバ、及びプログラム
ATE263391T1 (de) * 2002-03-26 2004-04-15 Soteres Gmbh Verfahren zum schutz der integrität von programmen
JP4504099B2 (ja) * 2003-06-25 2010-07-14 株式会社リコー デジタル証明書管理システム、デジタル証明書管理装置、デジタル証明書管理方法、更新手順決定方法およびプログラム
US20050120203A1 (en) * 2003-12-01 2005-06-02 Ryhwei Yeh Methods, systems and computer program products for automatic rekeying in an authentication environment
US7983420B2 (en) * 2004-05-24 2011-07-19 Sharp Laboratories Of America, Inc. Imaging job authorization
US7693280B2 (en) * 2005-04-22 2010-04-06 Microsoft Corporation Rights management system for streamed multimedia content
US7613915B2 (en) * 2006-11-09 2009-11-03 BroadOn Communications Corp Method for programming on-chip non-volatile memory in a secure processor, and a device so programmed

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002297548A (ja) * 2001-03-30 2002-10-11 Matsushita Electric Ind Co Ltd 端末登録システムとそれを構成する装置及び方法
WO2005029763A1 (en) * 2003-09-22 2005-03-31 Impsys Digital Secuirty Ab Data communication security arrangement and method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009267900A (ja) * 2008-04-28 2009-11-12 Kddi Corp 鍵生成装置、証明書生成装置、サービス提供システム、鍵生成方法、証明書生成方法、サービス提供方法およびプログラム
JP2010279021A (ja) * 2009-05-27 2010-12-09 Avaya Inc 安全な記号ストリングの段階的確立

Also Published As

Publication number Publication date
CN1909452A (zh) 2007-02-07
JP4593533B2 (ja) 2010-12-08
US20070116269A1 (en) 2007-05-24
ATE374478T1 (de) 2007-10-15
US7974415B2 (en) 2011-07-05
DE602005002652T2 (de) 2008-07-10
EP1750389B1 (en) 2007-09-26
EP1750389A1 (en) 2007-02-07
DE602005002652D1 (de) 2007-11-08
CN100521601C (zh) 2009-07-29

Similar Documents

Publication Publication Date Title
JP4593533B2 (ja) 公開鍵暗号方式に使用する鍵を更新するシステムおよび方法
Zhang et al. Deco: Liberating web data using decentralized oracles for tls
US11652644B1 (en) Quantum-resistant double signature system
EP3364598B1 (en) Determining a common secret for the secure exchange of information and hierarchical, deterministic cryptographic keys
EP3318043B1 (en) Mutual authentication of confidential communication
EP3257006B1 (en) Personal device security using elliptic curve cryptography for secret sharing
CN109743171B (zh) 一种解决多方数字签名、时间戳及加密的密钥串联方法
Barker Guideline for using cryptographic standards in the federal government: Cryptographic mechanisms
US7246379B2 (en) Method and system for validating software code
US10880100B2 (en) Apparatus and method for certificate enrollment
CN110545279A (zh) 兼具隐私和监管功能的区块链交易方法、装置及系统
CN109450843B (zh) 一种基于区块链的ssl证书管理方法及系统
JP2001051596A (ja) データ生成装置およびデータ検証装置ならびにその方法
CN110113150B (zh) 基于无证书环境的可否认认证的加密方法和系统
US20150043735A1 (en) Re-encrypted data verification program, re-encryption apparatus and re-encryption system
CN111769938B (zh) 一种区块链传感器的密钥管理系统、数据验证系统
JP2022521525A (ja) データを検証するための暗号方法
CN113034135A (zh) 基于区块链的信息处理方法、装置、设备、介质和产品
CN114448641A (zh) 一种隐私加密方法、电子设备、存储介质以及芯片
Sathya et al. A comprehensive study of blockchain services: future of cryptography
Barker Cryptographic Standards in the Federal Government: Cryptographic Mechanisms
CN110572257B (zh) 基于身份的数据来源鉴别方法和系统
KR100453113B1 (ko) 결정적 디피-헬만군에서id에 기반한 디지털 서명 및 그인증 방법
Bojanova et al. Cryptography classes in bugs framework (BF): Encryption bugs (ENC), verification bugs (VRF), and key management bugs (KMN)
CN112950356A (zh) 基于数字身份的个人贷款处理方法及系统、设备、介质

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100105

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100303

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100604

RD13 Notification of appointment of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7433

Effective date: 20100707

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20100707

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100817

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

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

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

Free format text: PAYMENT UNTIL: 20130924

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4593533

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250