JP5468157B2 - 公開鍵を検証可能に生成する方法及び装置 - Google Patents

公開鍵を検証可能に生成する方法及び装置 Download PDF

Info

Publication number
JP5468157B2
JP5468157B2 JP2013086303A JP2013086303A JP5468157B2 JP 5468157 B2 JP5468157 B2 JP 5468157B2 JP 2013086303 A JP2013086303 A JP 2013086303A JP 2013086303 A JP2013086303 A JP 2013086303A JP 5468157 B2 JP5468157 B2 JP 5468157B2
Authority
JP
Japan
Prior art keywords
key
message
public key
signature
short
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2013086303A
Other languages
English (en)
Other versions
JP2013140402A (ja
Inventor
ブラウン ダニエル・アール
Original Assignee
サーティコム コーポレーション
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 サーティコム コーポレーション filed Critical サーティコム コーポレーション
Publication of JP2013140402A publication Critical patent/JP2013140402A/ja
Application granted granted Critical
Publication of JP5468157B2 publication Critical patent/JP5468157B2/ja
Anticipated expiration legal-status Critical
Active legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/045Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply hybrid encryption, i.e. combination of symmetric and asymmetric encryption
    • 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
    • H04L9/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • 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/0861Generation of secret information including derivation or calculation 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/321Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
    • 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
    • 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/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • 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/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • H04L9/3252Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures using DSA or related signature schemes, e.g. elliptic based signatures, ElGamal or Schnorr schemes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Algebra (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)
  • Computer And Data Communications (AREA)
  • Mobile Radio Communication Systems (AREA)

Description

本発明は、公開鍵の検証可能な生成のための方法及び装置に関する。
公共ネットワークを介して動作する通信システムにおいて通信するときには、多くの場合、暗号技術を用いて通信の安全を保護する。暗号技術は、暗号化とデジタル署名とのそれぞれを通じて機密性及び/又は認証を提供することができる。公開鍵暗号システムでは、ユーザの鍵は、秘密鍵と、数学的に関係のある公開鍵とを含む。公開鍵だけが与えられても、秘密鍵を決定することは不可能である。すべての機関のための公開鍵は公表が可能であるし、そうでなくとも、その通信システムのそれ以外の通信者(correspondents)に配布することが可能である。
公開鍵のために受け入れられているよい慣習には、公開鍵の検証(PKV)と、関連する秘密鍵のための所有の証明(POP)とが含まれる。これらの慣習は、公開鍵の潜在的な濫用を回避するのに有用なテストであると考えられている。
公開鍵の検証には、意図された公開鍵を、そのタイプの秘密鍵との一致についてテストすることが含まれる。このテストは、関連する秘密鍵の持ち主の参加を含む場合と含まない場合とがある。公開鍵の検証は、様々な他のセキュリティ手段が配置されている場合に、意図された公開鍵が安全であることを保証するのに役立つ。
所有の証明には、一方の当事者が別の当事者に対して、与えられた公開鍵と関連する秘密鍵を知っていることを証明することが含まれる。これは、多くの場合、秘密鍵に依存するデジタル署名を提供することを通じて、行われる。署名の検証に成功すれば、秘密鍵を知っていることが証明される。
公開鍵の検証も所有の証明も、その秘密鍵が(a)盗まれた可能性や(b)不十分なランダム性を用いて生成された可能性を排除できない。鍵が盗まれると、それは、IDの窃盗、公開鍵の窃盗、そして、同様の望まれない詐欺(フロード)を構成する場合がある。不十分なランダム性は、コンピュータ、特に、スマート・カードやそれ以外の強要されたデバイスにおいて一般的な問題である。不十分なランダム性は、推測可能な又は複製された秘密鍵につながるおそれがあり、それによって、セキュリティが著しく損なわれる。
本発明の目的は、これらの問題点を克服することにある。
本発明の発明者は、「検証可能な鍵生成」を実行する方法を開発した。この方法を用いると、第1の当事者は、その第1の当事者は鍵を盗んだのではなく実際に生成したということの他者による検証を可能にする態様で、その鍵のペア(1対の鍵)を生成することができる。更に、信頼のおける機関がその検証可能な鍵生成プロセスに参加して、鍵のペアに追加的なランダム性を提供することができる。
本発明の発明者は、検証可能な鍵生成は上述した鍵の盗難や不十分なランダム性の可能性を排除することに役立つことを見出した。
本発明のある特徴においては、公開鍵の検証可能な鍵生成方法が提供される。この方法によると、自己署名された署名が最初に生成され、次に、秘密鍵と公開鍵とのペアの生成への入力として用いられる。この署名の検証により、これらの鍵が当該署名を用いた鍵生成プロセスから生成されたものであることが証明される。
公開鍵検証、所有の証明及び検証可能な鍵生成の典型的な使用は、公開鍵の認証の間である。認証においては、主体すなわちユーザ又は請求者が、発行者すなわち認証機関(CA)からの認証を請求する。主体は、おそらくは、十分なランダム性を得るに際してCAの助けを用い、鍵のペアを生成する。主体は、また、公開鍵を検証し、公開鍵の生成を検証するのに有用な追加的な情報を生成しうる。次に、主体は、公開鍵又は署名メッセージに署名して、認証リクエストと称されるものを形成し、これを他の情報と共にCAに送る。CAは、主体のIDを確認して、認証リクエストにおける署名を検証し、公開鍵を有効であると認め、鍵のペアの生成を検証する。CAは、いったん満足すると、認証を発行する。
検証可能な鍵生成のある実施例は、既存のデジタル署名技術の基づいて構築されている。自己署名された署名は、署名されたメッセージとして定義され、このメッセージ自体は署名のコピーを含む。本発明は、自己署名された署名と鍵ペアとを同時に生成する方法を含み、従って、自己署名された署名の検証により、鍵ペアが盗まれたのではなくて生成されたことが保証される。
信頼された機関がメッセージにいくらかのランダム性を含ませる場合には、十分なランダム性が保証される。鍵ペアの所有者のセキュリティを強化するためには、ソルト(salt)と長い計算とを用いて鍵ペア所有者による当該鍵ペアへのランダム性の寄与の網羅的なサーチを回避することにより、署名の検証を修正することができる。
例えば、本発明は、以下を提供する。
(項目1)
秘密鍵と公開鍵との対を生成する方法であって、
署名を生成するステップと、
データ・メッセージと上記署名とから自己署名された署名メッセージを形成するステップと、
秘密鍵と公開鍵との上記対を上記自己署名された署名メッセージから計算するステップと、
を含み、上記公開鍵は上記署名と上記自己署名された署名メッセージとから検証可能であることを特徴とする方法。
(項目2)
項目1記載の方法において、
上記データ・メッセージを認証機関から受け取るステップを更に含み、
上記データ・メッセージはランダム性を含むことを特徴とする方法。
(項目3)
項目2記載の方法において、
リクエスト・メッセージを上記認証機関に送るステップと、
上記データ・メッセージを上記認証機関から安全なチャネルを介して受け取るステップと、
を更に含み、上記データ・メッセージは、上記認証機関により上記リクエスト・メッセージから生成され、上記認証機関の秘密鍵を用いて署名されることを特徴とする方法。
(項目4)
項目1記載の方法において、上記署名と上記鍵の対とはDSA署名アルゴリズムに基づいて生成されることを特徴とする方法。
(項目5)
項目1記載の方法において、上記署名と上記鍵の対とはECDSA署名アルゴリズムに基づいて生成されることを特徴とする方法。
(項目6)
項目1記載の方法において、上記署名は整数を含み、上記署名を生成するステップは、
短期公開鍵を生成するステップと、
ソルト値を提供するステップと、
上記ソルト値と上記短期公開鍵との連結の所定の数の反復に対するハッシュ値を計算するステップと、
上記ハッシュ値の整数値を上記整数に割り当てるステップと、
を含むことを特徴とする方法。
(項目7)
項目1記載の方法において、上記署名は整数を含み、上記署名を生成するステップは、
ランダムに選択された整数である短期公開鍵を選択するステップと、
上記短期公開鍵と楕円曲線点との積である署名短期公開鍵を上記短期公開鍵から計算するステップと、
上記署名短期公開鍵に対応する整数値を上記整数に割り当てるステップと、
を含むことを特徴とする方法。
(項目8)
項目1記載の方法において、上記署名は整数を含み、上記自己署名された署名メッセージを形成するステップは、上記データ・メッセージと上記署名とを上記自己署名された署名メッセージに連結するステップを含み、公開鍵と秘密鍵との上記対を計算するステップは、
上記自己署名された署名メッセージの整数ハッシュ値からメッセージ・ダイジェストを計算するステップと、
上記署名と上記メッセージ・ダイジェストとから上記秘密鍵を計算するステップと、
上記秘密鍵から上記公開鍵を計算するステップと、
を含むことを特徴とする方法。
(項目9)
自己署名された署名と、秘密鍵dと公開鍵Qとの対とを同時に生成する方法であって、
素数nよりも小さな非負整数である短期秘密鍵kを選択するステップと、
上記短期秘密鍵kから、上記短期秘密鍵と楕円曲線点Gとの積である署名短期公開鍵を計算するステップと、
上記署名短期公開鍵に対応する整数値を第1の署名整数rに割り当てるステップと、
上記素数nよりも小さな非負整数であり上記第1の署名整数と共に署名を形成するる第2の署名整数sを選択するステップと、
データ・メッセージと上記署名とから自己署名された署名メッセージを形成するステップと、
数式d=(sk−e)/r modnを用いて上記秘密鍵dを計算するステップと、
数式Q=dGを用いて上記公開鍵を計算するステップと、
を含むことを特徴とする方法。
(項目10)
項目9記載の方法において、上記整数値を割り当てるステップは、
ソルト値を提供するステップと、
上記ソルト値と上記署名短期公開鍵との連結の所定の数の反復に対するハッシュ値を計算するステップと、
上記ハッシュ値の整数値を上記第1の署名整数rに割り当てるステップと、
を含むことを特徴とする方法。
(項目11)
コンピュータ上で実行可能であり項目9に記載された方法を実装するプログラムを記憶するコンピュータ読取可能な媒体。
(項目12)
メッセージから、秘密鍵と、上記メッセージと短期公開鍵と秘密鍵との3要素とを生成する方法であって、
整数である短期秘密鍵を選択するステップと、
上記短期秘密鍵から、上記短期秘密鍵と楕円曲線点との積である上記短期公開鍵を計算するステップと、
上記メッセージと上記短期公開鍵との整数ハッシュ値からメッセージ・ダイジェストを計算するステップと、
上記短期秘密鍵と上記メッセージ・ダイジェストとから上記秘密鍵を計算するステップと、
上記秘密鍵と上記短期公開鍵とから上記公開鍵を計算するステップと、
を含むことを特徴とする方法。
(項目13)
コンピュータ上で実行可能であり秘密鍵と公開鍵との対と自己署名された署名とを同時に生成する方法を実装するプログラムを記憶するコンピュータ読取可能な媒体であって、上記プログラムは、上記コンピュータに、
署名を生成させ、
データ・メッセージと上記署名とから自己署名された署名メッセージを形成させ、
秘密鍵と公開鍵との上記対を上記自己署名された署名メッセージから計算させ、
上記公開鍵は上記署名と上記自己署名された署名メッセージとから検証可能であることを特徴とするコンピュータ読取可能な媒体。
(項目14)
コンピュータ上で実行可能であり、メッセージから上記メッセージと短期公開鍵と公開鍵との3要素と秘密鍵とを生成する方法を実装するプログラムを記憶するコンピュータ読取可能な媒体であって、上記プログラムは、上記コンピュータに、
ランダムに選択された整数である短期秘密鍵を選択させ、
上記短期秘密鍵から、上記短期秘密鍵と楕円曲線点との積である上記短期公開鍵を計算させ、
上記メッセージと上記短期公開鍵との整数ハッシュ値からメッセージ・ダイジェストを計算させ、
上記短期秘密鍵と上記メッセージ・ダイジェストとから上記秘密鍵を計算させ、
上記秘密鍵と上記短期公開鍵とから上記公開鍵を計算させる、
ことを特徴とするコンピュータ読取可能な媒体。
(項目15)
認証機関により公開鍵を認証する方法であって、
請求者から公開鍵と自己署名された署名を用いて上記請求者によって署名されたメッセージである認証リクエストとを受け取るステップと、
上記自己署名された署名に基づいて上記公開鍵を検証するステップと、
上記自己署名された署名の検証の成功により上記公開鍵の認証を発行するステップと、
を含むことを特徴とする方法。
(項目16)
項目15記載の方法において、
上記認証リクエストに含まれる上記自己署名された署名を検証するステップを更に含み、
上記認証の発行は、上記自己署名された署名の検証の成功を要することを特徴とする方法。
(項目17)
項目15記載の方法において、
上記公開鍵に所定のテストの組を行うことにより上記公開鍵の有効性を確認するステップを更に含み、
上記認証の発行は上記公開鍵の有効性確認の成功を要することを特徴とする方法。
(項目18)
項目15記載の方法において、
上記認証リクエストを受け取るステップの前に、メッセージ・データを上記請求者に提供し上記請求者からの上記認証リクエストを生成するステップを更に含み、
上記メッセージ・データはランダム性を含むことを特徴とする方法。
(項目19)
項目18記載の方法において、上記メッセージ・データは安全なチャネルを介して上記請求者に提供されることを特徴とする方法。
(項目20)
項目18記載の方法において、上記メッセージ・データを提供するステップは、
上記請求者からリクエスト・メッセージを受け取るステップと、
上記認証機関の公開鍵を用いて上記リクエスト・メッセージに署名するステップと、
上記署名されたリクエスト・メッセージから上記メッセージ・データを形成するステップと、
を更に含むことを特徴とする方法。
(項目21)
項目15記載の方法において、自己署名された署名を用いて署名されたメッセージは公開鍵であることを特徴とする方法。
(項目22)
項目15記載の方法において、自己署名された署名を用いて署名されたメッセージは上記自己署名された署名であることを特徴とする方法。
本発明の好適実施例の以上の及びそれ以外の特徴は、添付の図面を参照してなされる以下の詳細な説明から明らかである。
通信システムの概略的な表現である。 図1の通信システムにおいて実行される鍵生成を示すフローチャートである。 図2の中の1つのステップに関する変更を示すフローチャートである。 図1の通信システムにおいて実行される鍵生成方法の別の実施例を示すフローチャートである。 図1の通信システムにおいて実行される鍵生成方法の更に別の実施例を示すフローチャートである。 図5の方法によって生成された鍵と共に用いられる検証方法を示すフローチャートである。 図1の認証機関によって実行される方法の概略的な表現である。
図1を参照すると、通信システムが、全体として参照番号10によって示されている。この通信システムは、1対の通信者12、14と、認証機関16とを含む。それぞれの通信者12、14は、それぞれ、暗号演算を実行する暗号ユニット18、20を有する。通信者12は、秘密鍵22と、対応する公開鍵24とを有する。認証機関16は、詳細は後述するが、公開鍵24を認証する認証(certificate)26を発行する。認証26は、後
述するように、通信者14に公開鍵24と暗号的保証とを提供するために、通信者14との間で共有される。
図1の通信者は、多くの暗号的なプロトコルを実行して、様々な暗号上の目的、特に、秘密鍵22と公開鍵24と認証26との生成を、達成することができる。
まず、「自己署名された署名」及び「検証可能な鍵生成」について述べる。通信者は、DSA及びECDSAなどの様々なデジタル署名アルゴリズムに基づいて、「自己署名された署名」を生成する以下の方法を実行することができる。便宜上、この方法を、ECDSAを用いて説明する。
図2を参照すると、通信者12によって実行される自己署名された署名を生成する方法の全体が、参照番号50によって示されている。ECDSAの手順に従い、最初に、Z上で定義された楕円曲線の上にあり位数(order)nの点Gが選択される。ここで、nは
、大きな素数である。ステップ52では、通信者12は、区間[0,n−1]の中にある整数kをランダムに選択する。次に、通信者12は、ステップ54で、楕円曲線の点R=kGを計算する。ここで、Rは署名短期公開鍵と称され、kは短期秘密鍵と称される。
署名データ(r,s)は、2つの整数r及びsを含む。楕円曲線の点Rに対応する整数値は、ステップ56で、整数rに割り当てられる。理解できるように、ECDSAによって特定される方法を含み、楕円曲線の点Rを整数に変換するのには、多くの方法を用いることができる。ステップ58では、通信者は、好ましくはランダムに、区間[0,n−1]の中の整数sを選択する。
次に、ステップ60では、プレメッセージ・データmを取得する。このプレメッセージ・データmは任意のメッセージ・データでよい。これは、署名されるメッセージとなりうる。これは、検証可能な鍵の所有者に関する情報を含みうる。また、認証機関によって証明され結果的な鍵ペアに与えられるランダム性など、外部のソースから受け取られる情報を含みうる。そして、通信者は、ステップ62において、例えば連結するなど、プレメッセージ・データmと署名データ(r,s)とを組み合わせて、自己署名された署名メッセージmを作成する。
ステップ64において、通信者は、メッセージ・ダイジェストe=Hash(m)を計算する。ただしここで、関数Hashは、整数の結果を与える暗号的なハッシュ関数である。ステップ66では、通信者は、数式d=(sk−e)/r modnを用いて、メッセージ・ダイジェストeから秘密鍵を計算する。ステップ68では、公開鍵が、数式Q=dGを用いて、秘密鍵の値から計算される。注意すべきは、公開鍵は、秘密鍵dに関する上述の数式を用いて、Q=(1/r modn)(sR−eG)として表現できるということである。
以上をまとめると、上述の方法は、以下のステップを含む。
1.例えば[0,n−1]からランダムに、何らかの整数kを選択する。
2.楕円曲線の点であるR=kGを計算する。これは、署名短期公開鍵である
3.Rを整数rに変換する。
4.例えば[0,n−1]からランダムに、何らかの整数sを選択する。
5.何らかのプレメッセージ・データmを取得する。これは、ランダム性など外部ソースからの情報を含みうる。
6.例えば連結するなど、プレメッセージ・データmと署名データ(r,s)とを組み合わせて、メッセージmを作成する。
7.メッセージ・ダイジェストe=Hash(m)を整数形式で計算する。
8.秘密鍵d=(sk−e)/r modnを計算する。
9.公開鍵Q=dGを計算する。あるいは、Q=(1/r modn)(sR−eG)とも表現できる。
ECDSA検証アルゴリズムをトリプレット(3つ組)、すなわちトリプル(m,(r,s),Q)に適用される場合には、検証アルゴリズムの結果、このトリプルが有効な署名となる。署名されたメッセージmは署名(r,s)を含むから、この署名は、「自己署名された署名」である。
別の当事者の既存の公開鍵Qが与えられている場合には、新たな自己署名された署名を見つけることは、署名を偽造することと同等であり、これは、実行不可能であると考えられる。更に、前もって存在している秘密鍵dを用いる場合でも、敵対者がその秘密鍵を盗むであろうことを想定すると、新たな自己署名された署名を見つけることは、実行不可能である。というのは、自己署名された署名を生成すれば、その結果、新たな秘密鍵が生じ、この新たな秘密鍵が古い秘密鍵ではないことはほとんど確実であるからである。
従って、自己署名された署名は、「検証可能な鍵生成」を構成する。ECDSA検証アルゴリズムによると、署名の検証により、上述の鍵生成プロセスが用いられたことが証明され、秘密鍵が単に盗まれたものであるとか別のソースからの再使用であるという可能性が排除される。
次に、検証可能なランダム性を用いた鍵生成について説明する。自己署名された署名を用いた検証可能な鍵生成では、メッセージmが鍵ペアの値に影響を与え、このメッセージの一部に寄与することにより、認証機関などの信頼される機関は、所望のセキュリティ・レベルに十分なレベルまで鍵ペアのランダム性を補うことができる。これは、鍵ペアの所有者がランダム性を生成する能力に関して制限がある場合に、特に有用である。
信頼された機関はデータtを生成し、これを、鍵ペアの生成器がmに含む。値tは、所望のセキュリティ・レベルに従って、十分なランダム性を含む。
値tは、安全に鍵ペアの生成器まで運ばれる必要があるが、その理由は、鍵ペアのセキュリティはある程度までtに依存するからである。tを安全に運ぶことは、tを機密性(confidentiality)及び真正性(authenticity)をもって運ぶことである。
真正性をもってtを運ぶ1つの方法は、tにデジタル署名を含ませることである。鍵ペア生成器は、署名を検証して、その署名が信頼できる機関からのものであることを保証する。(tが敵対者からのものである場合には、セキュリティは著しく脆弱化する。)一般に、デジタル署名も同様に必要なランダム性を提供するのであるが、その理由は、デジタル署名が信頼される機関の秘密鍵に依存するからである。ECDSAなどの確率的な署名アルゴリズムが用いられる場合には、更なるランダム性が存在することができる。従って、tが完全にデジタル署名で構成されることも十分でありうる。tのために署名されたメッセージは、機関と鍵生成器とからのメッセージの組合せでありうる。
機密性を伴うtの輸送は、様々な手段によって達成することができる。安全なチャネルが確立することができる場合には、暗号化を用いることができる。鍵ペアの生成器は、一次的なセッション鍵を生成し、信頼される機関まで、この機関の公開鍵を用いて、このセッション鍵を安全に送ることができる。一次的な公開鍵が検証可能に生成される鍵から独立であることが重要である。
典型的には、信頼される機関は、CAであり、何らかの非暗号的方法を用いて鍵ペアの生成器の真正を確認する。
図3を参照すると、プレメッセージmを提供する方法の全体が参照番号70によって示されている。ステップ72では、通信者は、まず、認証機関に鍵生成に関する情報を請求する。このリクエストに応答して、認証機関は、ステップ74で、メッセージを生成する。上述したように、このメッセージは、認証機関だけによって生成されたものでもありうるし、通信者と認証機関とからのメッセージの組合せでもありうる。組合せが用いられる場合には、ステップ72において作られるリクエストは、認証機関のメッセージに含まれる通信者からのメッセージを含む。
次に、ステップ76において、認証機関は、それ自身の鍵を用いてメッセージに署名し、CA署名を取得する。CA署名は、ステップ78で、安全なチャネルを介して通信者に送られる。安全なチャネルは、上述したように、暗号化によって達成することができる。そして、通信者は、プレメッセージ・データmとして、この署名を用いる。通信者は、ステップ60において、この署名を用いて、図2の方法により、鍵ペアと自己署名された署名とを生成する。
次に、鍵ペア生成器の弱い秘密の保護について説明する。鍵ペア生成器が検証可能な鍵生成のために自己署名された署名を用い、図2の方法によって生成された秘密値kのランダム性が不十分である場合には、以下のようなセキュリティ上の問題が結果として生じる。このセキュリティ問題は、以下で図4を参照して詳細を説明するように、自己署名された署名において用いられたECDSAアルゴリズムを若干修正することにより緩和することができる。
このセキュリティ問題とは、敵対者が信頼される機関であるか鍵生成を検証することを希望するそれ以外の者である場合にそうなのであるが、敵対者がkを推測することができ、r、s及びmのコピーを有しているのならば、この敵対者は鍵ペア生成器が用いるのと同じ数式を用いて秘密鍵を回復することができるということである。
kの網羅的な推測を可能な限り困難にするために、図2の方法を、図4に示されるように修正する。図4の方法におけるステップは、図2におけるステップに類似している。
ステップ92では、通信者12は、区間[0,n−1]の中にある整数kをランダムに選択する。次に、通信者12は、ステップ94で、署名短期公開鍵と称される楕円曲線の点R=kGを計算する。
ステップ96では、通信者は、r=Hash(A‖R‖A‖R‖・・・‖A‖R)を計算する。ただし、ここで、反復の回数は、希望するだけまだ便宜によっていくらでも多くすることができる。「‖」は、ビット・ストリングの連結を意味する。反復回数が多くなればなるほど、計算に要する時間が長くなる。kのそれぞれの推測には、rの1階の計算を要する。従って、長い計算は、kを推測しようとしている敵対者により多くの作業を強制することになる。よって、反復の回数は、通信者とCAとが認容できる最大のものであるであることが好ましい。値Aはソルト値であり、鍵ペア生成器に対して一意的である。ソルトは、kからrの関数が鍵ペア生成器にとって一意的であることを保証し、それにより、敵対者が、異なる鍵ペア生成器のために再利用可能な計算された値の辞書を構築することを防止する。
ステップ98では、通信者は、区間[0,n−1]の中からランダムに整数sを選択する。次に、ステップ100では、プレメッセージ・データmを取得する。このプレメッセージ・データmは、結果的な鍵ペアに与えられるランダム性を含みうる。そして、通信者は、ステップ102において、プレメッセージ・データmと署名データ(r,s)とを連結して、メッセージmを作成する。ステップ104において、通信者は、メッセージ・ダイジェストe=Hash(m)を計算する。ここで、関数Hashは、整数の結果を与える暗号的なハッシュ関数である。通信者は、ステップ106で秘密鍵d=(sk−e)/r modnを計算し、ステップ108で公開鍵Q=dGを計算する。注意すべきは、公開鍵は、秘密鍵dに関する上述の数式を用いて、Q=(1/r modn)(sR−eG)として表現できるということである。
他の通信者や認証機関は、修正された自己署名された署名を検証できる。第1に、検証者は、楕円曲線の点R‘=(1/s modn)(eG+rQ)を計算するが、これは、ECDSAの検証プロセスの一部である。これには、メッセージmのコピーと公開鍵Qとが必要である。検証者は、鍵ペア生成器がrを計算するのに用いたソルトAと反復回数とを必要とする。検証者は、次に、r’=Hash(A‖R‘‖A‖R’‖・・・‖A‖R‘)を計算する。r’=rである場合には、検証者は署名を受け入れ、そうでない場合には、検証者は署名を拒絶する。
敵対者がkを網羅的に推測することを阻止するには、他の長い計算が必要になる可能性がある。敵対者は、秘密鍵に対する数式であるd=(sk−e)/r modnと公開鍵Qの知識とを用いて、秘密kに対するすなわち秘密鍵dに対する推測を確認することができる。kを推測するアプローチを遅くさせるためには、メッセージmをm=r‖s‖t‖r‖s‖t‖・・・‖r‖s‖tという形式で選択することができる。その場合、e=H
ash(m)の計算には長い時間を要し、kのそれぞれの推測に対して別個に行わなければならない。メッセージmの形式は、用いられるデジタル署名アルゴリズムへの更なる修正を必要としない。
これら2つの方法を組み合わせることで、鍵ペア所有者の私的事項を、tを生成する信頼される機関や、信頼される機関とは独立にQの生成を検証することを望みm、r、s及びQを取得する任意の他の当事者から、保護することに役立つ。
次に、自己署名された署名を用いない代替的方法について説明する。図5に示されている別の実施例では、通信者は、あるメッセージmとシードすなわち短期公開鍵Rと公開鍵Qとで構成されるハッシュ指数トリプル(m,R,Q)を生成する方法を実行する。これは、ECDSA署名を用いる方法への代替的方法である。便宜のため、この方法を、楕円曲線(EC)公開鍵の用語を用いて説明する。この方法は、全体として参照番号110によって示されている。
通信者は、まず、ステップ112で、区間[0,n−1]の中の整数kを選択する。次に、通信者は、ステップ114で、シード公開鍵として用いられる楕円曲線R=kGを計算する。ステップ116では、整数の形式でメッセージ・ダイジェストf=SHA−1(m,R)が計算される。次に、ステップ118において秘密鍵d=kfが計算され、ステップ120において公開鍵Q=fRが計算される。
ハッシュ指数トリプル(m,R,Q)を受け取ると、受け手は、参照番号130で図6に示されている方法を用いてこのトリプルを検証することができる。検証者は、まず、ステップ132で、整数形式でメッセージ・ダイジェストf=SHA−1(m,R)を計算する。次に、検証者は、ステップ134でT=fRを計算し、ステップ136でQ=Tであることを確認する。Q=Tであるときには、ハッシュ検証トリプルは、検証者に受け入れられる。ソフトウェアでなければ、無効として拒絶される。
ハッシュ指数トリプルは自己署名された署名と類似の性質を有しており、同様の態様で機能しうることがわかっている。
次に、検証可能な鍵生成を用いた通信について説明する。図1のシステムにおける典型的な通信セッションでは、このシステムのユーザすなわち通信者12は、まず、認証機関14との通信を開始して認証26を得る。この場合に、通信者12は、認証の「主体」(subject)と称される。図7を参照すると、認証機関は、ステップ152において、主体
に入力を提供してランダム性を与える。認証機関によって提供された入力は、例えば、認証機関の署名である。主体は、ステップ154で鍵ペアを生成し、ステップ156で認証リクエストを形成する。認証リクエストは、主体の自己署名された署名を用いて署名される。認証リクエストは、例えば、主体の署名された公開鍵であるか、又は、単純に、主体の自己署名された署名である。主体は、認証リクエストと公開鍵とを、認証のために認証機関へ送る。主体は、主体の名前などの他の情報を、認証リクエスト及び公開鍵と共に送ることもありうる。認証リクエストと公開鍵とを(更に、それ以外の情報も)受け取ると、認証機関は、典型的には、ステップ158において、主体のIDを確認する。CAは、次に、ステップ160で、認証リクエストの中の署名を検証することがある。CAは、ステップ162において公開鍵の有効性を確認するが、これには、公開鍵が「有効」であることを保証するいくつかのテストが含まれる。CAは、次に、ステップ164において、鍵ペアの生成を検証する。この検証の詳細は既に上述したとおりである。公開鍵が実行されるテストに合格すると、CAは、ステップ166において、認証を発行する。認証には、情報に関するCAのデジタル署名が含まれ、これには、主体のIDと公開鍵とが含まれる。
認証を発行するCAが公開鍵の有効性確認と鍵生成の認証とを行う場合には、認証は、当該認証とその公開鍵との他のユーザに、当該公開鍵は有効であり、盗まれたものではなく、十分なランダム性を有していることを保証するのに役立つ。認証の他のユーザが認証を発行するCAを完全には信頼しない場合には、そのユーザは、公開鍵の有効性確認と鍵生成検証とを直接に実行することを可能にする情報を見ることを求めることができる。
以上では、本発明の様々な特定の実施例について詳細に説明した。この技術分野の当業者であれば、本発明の範囲から逸脱せずに、多くの修正、適用及び改変をこれらの実施例に対して行うことが可能であることを理解するはずである。上述した最良の形態の変更やそれへの追加は本発明の本質、精神又は範囲から逸脱することなく行うことができるので、本発明は、以上で述べた詳細に限定されることなく、冒頭の特許請求の範囲によってのみ範囲が画定される。

Claims (17)

  1. 通信システム内の計算デバイスの秘密鍵を生成するための、コンピュータに実装された方法であって、前記計算デバイスは、暗号ユニットを有し、前記方法は、
    前記暗号ユニットが、デジタル署名を生成することと、
    前記計算デバイスが、メッセージ・データを取得することと、
    前記暗号ユニットが、前記メッセージ・データと前記デジタル署名とに基づいて、自己署名された署名メッセージを生成することであって、前記デジタル署名は、前記自己署名された署名メッセージの署名に対応する、ことと、
    前記暗号ユニットが、前記自己署名された署名メッセージに基づいて前記秘密鍵を計算することと、
    公開鍵と前記秘密鍵との対が前記自己署名された署名メッセージを利用して鍵生成プロセスから生成されたことを前記自己署名された署名メッセージの検証が証明するように、前記暗号ユニットが、前記秘密鍵に基づいて公開鍵を計算することと
    を含む、方法。
  2. 前記計算デバイスが、信頼された機関から前記メッセージ・データの少なくとも一部を受信することをさらに含む、請求項1に記載の方法。
  3. 前記メッセージ・データの一部は、ランダム性を含む、請求項2に記載の方法。
  4. 前記計算デバイスが、リクエスト・メッセージを認証機関に送信することと、
    前記計算デバイスが、前記メッセージ・データの少なくとも一部を前記認証機関から安全なチャネルを介して受信することと
    をさらに含み、
    前記メッセージ・データの少なくとも一部は、前記認証機関によって前記リクエスト・メッセージから生成され、前記認証機関の秘密鍵を用いて署名される、請求項3に記載の方法。
  5. 前記デジタル署名と、前記秘密鍵と、前記公開鍵とは、デジタル署名アルゴリズム(DSA)に基づいて生成される、請求項1に記載の方法。
  6. 前記デジタル署名と、前記秘密鍵と、前記対応する公開鍵とは、楕円曲線デジタル署名アルゴリズムに基づいて生成される、請求項1に記載の方法。
  7. 前記デジタル署名は、整数を含む、請求項1に記載の方法。
  8. 前記デジタル署名を生成することは、
    前記暗号ユニットが、短期公開鍵を生成することと、
    前記暗号ユニットが、ソルト値を取得することと、
    前記暗号ユニットが、前記ソルト値と前記短期公開鍵との連結の所定の数の反復のハッシュ値を計算することと
    を含む、請求項1に記載の方法。
  9. 前記デジタル署名は、整数を含み、
    前記デジタル署名を生成することは、
    前記暗号ユニットが、短期秘密鍵を選択することであって、前記短期秘密鍵は、ランダムに選択された値である、ことと、
    前記暗号ユニットが、前記短期秘密鍵から短期公開鍵を計算することであって、前記短期公開鍵は、前記短期秘密鍵と楕円曲線点との積である、ことと、
    前記暗号ユニットが、前記短期公開鍵に対応する整数値を前記整数に割り当てることと
    を含む、請求項1に記載の方法。
  10. 前記メッセージ・データと前記デジタル署名とに基づいて、自己署名された署名メッセージを生成することは、前記メッセージ・データと前記デジタル署名とを前記自己署名された署名メッセージに連結することを含み、
    前記秘密鍵を計算することは、
    前記暗号ユニットが、前記自己署名された署名メッセージの整数ハッシュ値からメッセージ・ダイジェストを計算することと、
    前記暗号ユニットが、前記デジタル署名と前記メッセージ・ダイジェストとから前記秘密鍵を計算することと
    を含む、請求項1に記載の方法。
  11. 前記デジタル署名を生成することは、
    前記暗号ユニットが、短期秘密鍵kを選択することであって、前記短期秘密鍵kは、素数nよりも小さい非負整数である、ことと、
    前記暗号ユニットが、前記短期秘密鍵kから短期公開鍵を計算することであって、前記短期公開鍵は、前記短期秘密鍵と、位数として前記素数を有する楕円曲線点Gとの積である、ことと、
    前記暗号ユニットが、前記短期公開鍵に対応する整数値を第1の整数rに割り当てることと、
    前記暗号ユニットが、第2の整数sを選択することであって、前記第2の整数は、前記素数nよりも小さい非負整数であり、前記第1の整数rと前記第2の整数sとは、前記デジタル署名を形成する、ことと
    を含む、請求項1に記載の方法。
  12. 前記秘密鍵を計算することは、
    前記暗号ユニットが、前記自己署名された署名メッセージの整数ハッシュ値からメッセージ・ダイジェストeを計算することと、
    前記暗号ユニットが、数式d=(sk−e)/r mod nを用いて前記秘密鍵dを計算することと
    を含む、請求項11に記載の方法。
  13. 前記暗号ユニットが、数式Q=dGを用いて前記公開鍵Qを計算する、請求項12に記載の方法。
  14. 前記暗号ユニットが、数式Q=(1/r mod n)(sR−eG)を用いて前記公開鍵Qを計算する、請求項12に記載の方法。
  15. 前記暗号ユニットが、前記整数値を割り当てることは、
    ソルト値を提供することと、
    前記ソルト値と前記短期公開鍵との連結の所定の数の反復に対するハッシュ値を計算することと、
    前記ハッシュ値の整数値を前記第1の整数rに割り当てることと
    を含む、請求項11に記載の方法。
  16. 通信システム内の計算デバイスの秘密鍵を生成するための非一時的コンピュータ読み取り可能な媒体であって、前記非一時的コンピュータ読み取り可能な媒体には、請求項1〜15のいずれか一項に記載の方法を実行することを前記計算デバイスに行わせるためのコンピュータ実行可能な命令が格納されている、非一時的コンピュータ読み取り可能な媒体。
  17. 暗号ユニットを含む計算デバイスであって、請求項1〜15のいずれか一項に記載の方法を実行するように構成されている計算デバイス。
JP2013086303A 2003-10-28 2013-04-17 公開鍵を検証可能に生成する方法及び装置 Active JP5468157B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US51468703P 2003-10-28 2003-10-28
US60/514,687 2003-10-28

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2011023146A Division JP5497677B2 (ja) 2003-10-28 2011-02-04 公開鍵を検証可能に生成する方法及び装置

Publications (2)

Publication Number Publication Date
JP2013140402A JP2013140402A (ja) 2013-07-18
JP5468157B2 true JP5468157B2 (ja) 2014-04-09

Family

ID=34549345

Family Applications (3)

Application Number Title Priority Date Filing Date
JP2006537016A Active JP4741503B2 (ja) 2003-10-28 2004-10-28 公開鍵を検証可能に生成する方法及び装置
JP2011023146A Active JP5497677B2 (ja) 2003-10-28 2011-02-04 公開鍵を検証可能に生成する方法及び装置
JP2013086303A Active JP5468157B2 (ja) 2003-10-28 2013-04-17 公開鍵を検証可能に生成する方法及び装置

Family Applications Before (2)

Application Number Title Priority Date Filing Date
JP2006537016A Active JP4741503B2 (ja) 2003-10-28 2004-10-28 公開鍵を検証可能に生成する方法及び装置
JP2011023146A Active JP5497677B2 (ja) 2003-10-28 2011-02-04 公開鍵を検証可能に生成する方法及び装置

Country Status (6)

Country Link
US (4) US9240884B2 (ja)
EP (1) EP1687931B1 (ja)
JP (3) JP4741503B2 (ja)
CN (2) CN102868528B (ja)
CA (1) CA2543796C (ja)
WO (1) WO2005043807A1 (ja)

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2421407A (en) * 2004-12-18 2006-06-21 Hewlett Packard Development Co Generating a shared symmetric key using identifier based cryptography
ATE533103T1 (de) * 2005-01-18 2011-11-15 Certicom Corp Beschleunigte verifikation digitaler signaturen und öffentlicher schlüssel
US8467535B2 (en) * 2005-01-18 2013-06-18 Certicom Corp. Accelerated verification of digital signatures and public keys
US7720221B2 (en) * 2005-05-20 2010-05-18 Certicom Corp. Privacy-enhanced e-passport authentication protocol
US20070071243A1 (en) * 2005-09-23 2007-03-29 Microsoft Corporation Key validation service
CN101296482B (zh) * 2007-04-28 2012-12-12 华为技术有限公司 实现消息认证的方法、基站、中继站及中继通信系统
US20090076962A1 (en) * 2007-07-30 2009-03-19 Hitchen Stephen M Digital certification method and apparatus
CA2698000C (en) * 2007-09-04 2015-10-27 Certicom Corp. Signatures with confidential message recovery
JP5053032B2 (ja) * 2007-10-16 2012-10-17 株式会社バッファロー データ管理装置、データ管理方法およびデータ管理プログラム
FR2931326A1 (fr) * 2008-05-16 2009-11-20 St Microelectronics Rousset Verification d'integrite d'une cle de chiffrement
US9252941B2 (en) * 2009-11-06 2016-02-02 Nikolajs VOLKOVS Enhanced digital signatures algorithm method and system utilitzing a secret generator
US8386790B2 (en) * 2010-02-25 2013-02-26 GM Global Technology Operations LLC Method of using ECDSA with winternitz one time signature
US8566596B2 (en) * 2010-08-24 2013-10-22 Cisco Technology, Inc. Pre-association mechanism to provide detailed description of wireless services
EP2705629A4 (en) 2011-05-06 2015-07-29 Certicom Corp VALIDATION OF A LOT OF IMPLIED CERTIFICATES
US20130080768A1 (en) * 2011-09-26 2013-03-28 Erik Lagerway Systems and methods for secure communications using an open peer protocol
US8745376B2 (en) 2011-10-14 2014-06-03 Certicom Corp. Verifying implicit certificates and digital signatures
US8868910B2 (en) * 2012-02-09 2014-10-21 Hewlett-Packard Development Company, L.P. Elliptic curve cryptographic signature
CN103578547B (zh) * 2012-07-31 2016-07-06 英华达(南京)科技有限公司 可排列集成电路芯片中的不可视区域的烧录方法
US9705683B2 (en) * 2014-04-04 2017-07-11 Etas Embedded Systems Canada Inc. Verifiable implicit certificates
EP3041186A1 (en) * 2014-12-31 2016-07-06 Gemalto Sa Method and device for associating two credentials relating to a user
US9813392B2 (en) 2015-03-06 2017-11-07 Qualcomm Incorporated Apparatus and method for providing a public key for authenticating an integrated circuit
EP3104320B1 (fr) * 2015-06-12 2018-08-15 EM Microelectronic-Marin SA Procédé de programmation de données bancaires dans un circuit intégré d'une montre
CN107534551B (zh) 2015-07-30 2021-02-09 慧与发展有限责任合伙企业 提供加密数据的方法、计算设备和计算机可读介质
US10075557B2 (en) 2015-12-30 2018-09-11 Amazon Technologies, Inc. Service authorization handshake
US10541817B2 (en) * 2016-03-14 2020-01-21 Ricoh Company, Ltd. Data generation apparatus, data recording system, and program product
US10521775B2 (en) 2016-04-18 2019-12-31 R3 Ltd. Secure processing of electronic transactions by a decentralized, distributed ledger system
US10803537B2 (en) 2016-04-18 2020-10-13 R3 Ltd. System and method for managing transactions in dynamic digital documents
TW201810989A (zh) * 2016-05-18 2018-03-16 納格維遜股份有限公司 用以保護密碼指數的方法及系統
US10425417B2 (en) 2017-03-08 2019-09-24 Bank Of America Corporation Certificate system for verifying authorized and unauthorized secure sessions
US10374808B2 (en) 2017-03-08 2019-08-06 Bank Of America Corporation Verification system for creating a secure link
US10361852B2 (en) 2017-03-08 2019-07-23 Bank Of America Corporation Secure verification system
US10432595B2 (en) 2017-03-08 2019-10-01 Bank Of America Corporation Secure session creation system utililizing multiple keys
US10700875B1 (en) 2017-05-01 2020-06-30 Wells Fargo Bank, N.A. Systems and methods for value transfers using signcryption
CN107342866A (zh) * 2017-06-30 2017-11-10 上海策赢网络科技有限公司 电子文书验证方法、设备及系统
CN107347008A (zh) * 2017-06-30 2017-11-14 上海策赢网络科技有限公司 电子文书验证方法、设备及系统
CN107707358B (zh) * 2017-10-30 2019-12-24 武汉大学 一种ec-kcdsa数字签名生成方法及系统
WO2019116249A1 (en) * 2017-12-15 2019-06-20 nChain Holdings Limited Computer-implemented systems and methods for authorising blockchain transactions with low-entropy passwords
US11263630B2 (en) 2018-10-12 2022-03-01 Blackberry Limited Method and system for single purpose public keys for public ledgers
TWI774902B (zh) * 2018-12-28 2022-08-21 新唐科技股份有限公司 密鑰保護方法及密鑰保護系統
CN109859846A (zh) * 2019-01-08 2019-06-07 重庆邮电大学 一种基于私有链的个人健康档案存储方法
EP3590084B1 (en) * 2019-03-04 2022-05-11 Advanced New Technologies Co., Ltd. Methods and devices for testing signature verification for blockchain system

Family Cites Families (74)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4008971A1 (de) 1990-03-20 1991-09-26 Siemens Nixdorf Inf Syst Verfahren zur authentifizierung eines eine datenstation benutzenden anwenders
US5199070A (en) * 1990-12-18 1993-03-30 Matsushita Electric Industrial Co., Ltd. Method for generating a public key
JP2629452B2 (ja) 1990-12-18 1997-07-09 松下電器産業株式会社 公開鍵生成方法と鍵共有方法
US5371794A (en) * 1993-11-02 1994-12-06 Sun Microsystems, Inc. Method and apparatus for privacy and authentication in wireless networks
US5515441A (en) * 1994-05-12 1996-05-07 At&T Corp. Secure communication method and apparatus
US5557346A (en) * 1994-08-11 1996-09-17 Trusted Information Systems, Inc. System and method for key escrow encryption
US5606617A (en) * 1994-10-14 1997-02-25 Brands; Stefanus A. Secret-key certificates
US7334127B2 (en) * 1995-04-21 2008-02-19 Certicom Corp. Key agreement and transport protocol
US5745574A (en) * 1995-12-15 1998-04-28 Entegrity Solutions Corporation Security infrastructure for electronic transactions
CN1224555A (zh) * 1996-06-05 1999-07-28 格姆普拉斯有限公司 使用公共密钥的加密方法
GB9621274D0 (en) * 1996-10-11 1996-11-27 Certicom Corp Signature protocol for mail delivery
JPH10133576A (ja) * 1996-10-31 1998-05-22 Hitachi Ltd 公開鍵暗号方法および装置
US6705517B1 (en) * 1996-11-27 2004-03-16 Die Old, Incorporated Automated banking machine system and method
CA2228185C (en) * 1997-01-31 2007-11-06 Certicom Corp. Verification protocol
JPH10327147A (ja) * 1997-05-21 1998-12-08 Hitachi Ltd 電子認証公証方法およびシステム
US6058188A (en) * 1997-07-24 2000-05-02 International Business Machines Corporation Method and apparatus for interoperable validation of key recovery information in a cryptographic system
US6233685B1 (en) * 1997-08-29 2001-05-15 Sean William Smith Establishing and employing the provable untampered state of a device
AU9426598A (en) 1997-10-14 1999-05-03 Certicom Corp. Key validation scheme
JP4307589B2 (ja) 1997-10-31 2009-08-05 サーティコム コーポレーション 認証プロトコル
US6279110B1 (en) 1997-11-10 2001-08-21 Certicom Corporation Masked digital signatures
EP0918274A3 (en) * 1997-11-13 2000-02-02 Hewlett-Packard Company System and method for securing and validating data using signatures, encryption, and feedback
US6233687B1 (en) * 1998-01-21 2001-05-15 Nortel Networks Limited Method and apparatus for providing configuration information in a network
CA2235359C (en) 1998-03-23 2012-04-10 Certicom Corp. Implicit certificate scheme with ca chaining
US6553493B1 (en) * 1998-04-28 2003-04-22 Verisign, Inc. Secure mapping and aliasing of private keys used in public key cryptography
US6336188B2 (en) * 1998-05-01 2002-01-01 Certicom Corp. Authenticated key agreement protocol
DE19837405A1 (de) * 1998-08-18 2000-02-24 Siemens Ag Verfahren und Anordnung zur Bildung eines geheimen Kommunikationsschlüssels zu einem zuvor ermittelten asymmetrischen kryptographischen Schlüsselpaar
KR100358426B1 (ko) * 1998-08-18 2003-01-29 한국전자통신연구원 전자현금거래방법
FR2787264B1 (fr) * 1998-12-15 2001-11-02 Bull Sa Procede de creation et gestion d'au moins une cle cryptographique et systeme pour sa mise en oeuvre
US6430688B1 (en) * 1998-12-22 2002-08-06 International Business Machines Corporation Architecture for web-based on-line-off-line digital certificate authority
AU3185600A (en) * 1999-02-26 2000-09-14 Accenture Llp A system, method and article of manufacture for an electronic commerce interfaceto the government
US7707420B1 (en) * 1999-06-23 2010-04-27 Research In Motion Limited Public key encryption with digital signature scheme
US6363480B1 (en) * 1999-09-14 2002-03-26 Sun Microsystems, Inc. Ephemeral decryptability
US7194620B1 (en) * 1999-09-24 2007-03-20 Verizon Business Global Llc Method for real-time data authentication
US6842863B1 (en) * 1999-11-23 2005-01-11 Microsoft Corporation Certificate reissuance for checking the status of a certificate in financial transactions
US20020184485A1 (en) * 1999-12-20 2002-12-05 Dray James F. Method for electronic communication providing self-encrypting and self-verification capabilities
US7010683B2 (en) * 2000-01-14 2006-03-07 Howlett-Packard Development Company, L.P. Public key validation service
US7020778B1 (en) 2000-01-21 2006-03-28 Sonera Smarttrust Oy Method for issuing an electronic identity
US7426750B2 (en) * 2000-02-18 2008-09-16 Verimatrix, Inc. Network-based content distribution system
FR2807898B1 (fr) * 2000-04-18 2002-06-28 Gemplus Card Int Procede de cryptographie sur courbes elliptiques
US20020007453A1 (en) * 2000-05-23 2002-01-17 Nemovicher C. Kerry Secured electronic mail system and method
CA2350118C (en) 2000-06-09 2013-08-13 Certicom Corp. A method for the application of implicit signature schemes
US7356690B2 (en) * 2000-12-11 2008-04-08 International Business Machines Corporation Method and system for managing a distributed trust path locator for public key certificates relating to the trust path of an X.509 attribute certificate
US20020071563A1 (en) * 2000-12-12 2002-06-13 Kurn David Michael Method and apparatus for cryptographic key rollover during operation
JP2002207426A (ja) * 2001-01-10 2002-07-26 Sony Corp 公開鍵証明書発行システム、公開鍵証明書発行方法、および電子認証装置、並びにプログラム記憶媒体
US20020099668A1 (en) * 2001-01-22 2002-07-25 Sun Microsystems, Inc. Efficient revocation of registration authorities
WO2002063825A2 (en) * 2001-02-05 2002-08-15 Asiansign Co., Ltd An optical storage medium for storing a public key infrastructure (pki)-based private key and certificate, a method and system for issuing the same and a method for using such
US7415609B1 (en) * 2001-04-23 2008-08-19 Diebold, Incorporated Automated banking machine system and method
US7110986B1 (en) * 2001-04-23 2006-09-19 Diebold, Incorporated Automated banking machine system and method
US20020199102A1 (en) * 2001-06-21 2002-12-26 Carman David W. Method and apparatus for establishing a shared cryptographic key between energy-limited nodes in a network
US20030059041A1 (en) * 2001-06-26 2003-03-27 Mackenzie Philip D. Methods and apparatus for two-party generation of DSA signatures
US7113594B2 (en) * 2001-08-13 2006-09-26 The Board Of Trustees Of The Leland Stanford University Systems and methods for identity-based encryption and related cryptographic techniques
JP4969745B2 (ja) * 2001-09-17 2012-07-04 株式会社東芝 公開鍵基盤システム
US20030065619A1 (en) * 2001-09-28 2003-04-03 Canon Kabushiki Kaisha Information processing device, information processing method, network system, security method for digital information, storage medium and program
US20030084298A1 (en) * 2001-10-25 2003-05-01 Messerges Thomas S. Method for efficient hashing of digital content
US7769690B2 (en) 2001-11-06 2010-08-03 International Business Machines Corporation Method and system for the supply of data, transactions and electronic voting
CA2365441C (en) * 2001-12-19 2010-02-16 Diversinet Corp. Method of establishing secure communications in a digital network using pseudonymic digital identifiers
CA2369545C (en) * 2001-12-31 2013-01-08 Certicom Corp. Method and apparatus for elliptic curve scalar multiplication
US7349538B2 (en) * 2002-03-21 2008-03-25 Ntt Docomo Inc. Hierarchical identity-based encryption and signature schemes
JP2004005643A (ja) * 2002-05-30 2004-01-08 Internatl Business Mach Corp <Ibm> 定義されたパーティにより検証可能な匿名支払方法
US7404078B2 (en) * 2002-06-26 2008-07-22 Lucent Technologies Methods and apparatus for private certificates in public key cryptography
GB0215590D0 (en) * 2002-07-05 2002-08-14 Hewlett Packard Co Method and apparatus for generating a cryptographic key
GB0215524D0 (en) * 2002-07-05 2002-08-14 Hewlett Packard Co Method and apparatus for generating a cryptographic key
GB0215911D0 (en) * 2002-07-10 2002-08-21 Hewlett Packard Co Method and apparatus for encrypting data
FR2844656B1 (fr) * 2002-09-18 2005-01-28 France Telecom Procede de signature electronique, programme et serveur pour la mise en oeuvre du procede
US7424115B2 (en) * 2003-01-30 2008-09-09 Nokia Corporation Generating asymmetric keys in a telecommunications system
US8108678B1 (en) * 2003-02-10 2012-01-31 Voltage Security, Inc. Identity-based signcryption system
US7409544B2 (en) * 2003-03-27 2008-08-05 Microsoft Corporation Methods and systems for authenticating messages
US20040221158A1 (en) * 2003-05-02 2004-11-04 Secure Data In Motion, Inc. Digital signature and verification system for conversational messages
EP1499136A1 (en) * 2003-07-14 2005-01-19 Sony International (Europe) GmbH Illumination unit, projection engine and method for generating illumination light
US7370206B1 (en) * 2003-09-04 2008-05-06 Adobe Systems Incorporated Self-signing electronic documents
US7539869B1 (en) * 2003-09-17 2009-05-26 Sun Microsystems, Inc. System and methods for using a signature protocol by a nonsigning client
US7103911B2 (en) * 2003-10-17 2006-09-05 Voltage Security, Inc. Identity-based-encryption system with district policy information
US7751568B2 (en) * 2003-12-31 2010-07-06 International Business Machines Corporation Method for securely creating an endorsement certificate utilizing signing key pairs
US7539889B2 (en) 2005-12-30 2009-05-26 Avega Systems Pty Ltd Media data synchronization in a wireless network

Also Published As

Publication number Publication date
WO2005043807A1 (en) 2005-05-12
US20140325227A1 (en) 2014-10-30
US9160530B2 (en) 2015-10-13
US8713321B2 (en) 2014-04-29
US9240884B2 (en) 2016-01-19
US9967239B2 (en) 2018-05-08
CN1902853B (zh) 2012-10-03
JP2007510336A (ja) 2007-04-19
JP2011091868A (ja) 2011-05-06
CA2543796C (en) 2015-12-08
JP5497677B2 (ja) 2014-05-21
EP1687931B1 (en) 2021-12-29
US20160248735A1 (en) 2016-08-25
US20050135606A1 (en) 2005-06-23
EP1687931A4 (en) 2010-11-03
JP4741503B2 (ja) 2011-08-03
CA2543796A1 (en) 2005-05-12
CN102868528A (zh) 2013-01-09
CN102868528B (zh) 2015-09-09
EP1687931A1 (en) 2006-08-09
CN1902853A (zh) 2007-01-24
US20130013916A1 (en) 2013-01-10
JP2013140402A (ja) 2013-07-18

Similar Documents

Publication Publication Date Title
JP5468157B2 (ja) 公開鍵を検証可能に生成する方法及び装置
JP3522447B2 (ja) 認証交換方法および付加型公衆電子署名方法
Brickell et al. Enhanced privacy ID: A direct anonymous attestation scheme with enhanced revocation capabilities
JP4588874B2 (ja) 内在的証明書方式
JP5205398B2 (ja) 鍵認証方式
US7590850B2 (en) Digital signature method based on identification information of group members, and method of acquiring identification information of signed-group member, and digital signature system for performing digital signature based on identification information of group members
US9882890B2 (en) Reissue of cryptographic credentials
US8589693B2 (en) Method for two step digital signature
JP6043804B2 (ja) 組み合わされたデジタル証明書
KR102372718B1 (ko) 발행인 익명성 인증서 시스템을 위한 분산화된 그룹 서명 방법
JP2005520364A (ja) デジタル署名された証明書を更新しかつ拡張するシステムおよび方法
TW202318833A (zh) 臨界簽章方案
JP4307589B2 (ja) 認証プロトコル
Priyadarshini et al. Digital signature and its pivotal role in affording security services
Biswal et al. A Novel Blind Signature Scheme Based On Discrete Logarithm Problem With Un-traceability

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130516

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130516

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140128

R150 Certificate of patent or registration of utility model

Ref document number: 5468157

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250