JP2008545353A - 未知の通信当事者間における信頼できる関係の確立 - Google Patents

未知の通信当事者間における信頼できる関係の確立 Download PDF

Info

Publication number
JP2008545353A
JP2008545353A JP2008520029A JP2008520029A JP2008545353A JP 2008545353 A JP2008545353 A JP 2008545353A JP 2008520029 A JP2008520029 A JP 2008520029A JP 2008520029 A JP2008520029 A JP 2008520029A JP 2008545353 A JP2008545353 A JP 2008545353A
Authority
JP
Japan
Prior art keywords
party
communication
communicating
data set
work
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.)
Abandoned
Application number
JP2008520029A
Other languages
English (en)
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.)
Nokia Oyj
Original Assignee
Nokia Oyj
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 Nokia Oyj filed Critical Nokia Oyj
Publication of JP2008545353A publication Critical patent/JP2008545353A/ja
Abandoned legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/22Arrangements for preventing the taking of data from a data transmission channel without authorisation
    • 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/3218Cryptographic 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 proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • 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/3006Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
    • H04L9/3013Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters involving the discrete logarithm problem, e.g. ElGamal or Diffie-Hellman systems
    • 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
    • H04L9/3073Public 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 involving pairings, e.g. identity based encryption [IBE], bilinear mappings or bilinear pairings, e.g. Weil or Tate pairing
    • 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
    • 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/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/3297Cryptographic 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 time stamps, e.g. generation of time stamps
    • 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
    • H04L2209/805Lightweight hardware, e.g. radio-frequency identification [RFID] or sensor

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)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Communication Control (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本発明は、信頼できる第3者を利用せずに、通信システムにおける互いに未知の2つの通信当事者間での信頼できる関係の確立を提供する。本発明は、信頼できる関係の確立の目的に限られた非インタラクティブな作業証明と、問題インスタンスの解を求めるためのこのような作業証明を利用して、通信当事者間で転送すべき情報に暗号で署名を行うこと、並びに、この作業証明を検証し、該検証が肯定の結果をもたらす場合には、信頼できる関係を得るためのセッション・オブジェクトを生成することに基づいている。
【選択図】図2

Description

本発明は、暗号プロトコルの分野を対象とし、未知の通信当事者間における信頼できる関係の確立に関する。詳細には、本発明は、信頼できる第3者を利用せずに、通信システムにおいて互いに未知の2つの通信当事者間での信頼できる関係を確立する手段に関する。通信システムは、例えば、インターネット又はアドホック・ネットワークである。
近年、通信技術は、ユーザの数及び通信サービスのユーザによる利用量の点では広く行き渡ってきている。このことはまた、既存の通信システムを介して交換される情報量及びデータ量の莫大な増加をもたらした。
これにより、通信システムのユーザにとっては、ユーザが受け取る莫大な情報量の取り扱い、特に要求していない情報や望ましくない情報の取り扱いに関する問題が顕著に現れてきた。このようなスパミング情報(スパミング:すなわち、何らかの電子通信媒体を利用して、要求していないメッセージを無差別に大量に送信すること)は、望ましい「本物の」情報の量を圧倒的に容易に上回ることがある。このような状況は、ユーザが、ユーザの望む「本物の」情報を選別して取り出すことを少なくとも面倒な及び/又は困難なものにするだけでなく、例えば個人用メール・ボックスの保存スペースなどの情報システムの容量のオーバーロードを生じ易くする原因にもなる。
現在、上記で概説した問題は、インターネットにおいて、特にアドホック・ネットワーク及び/又はセンサネットワークにおいて蔓延している。しかしながら、この問題は、上記のタイプのネットワークに限られたことではなく、特に、未知の(場合によっては未登録の)通信当事者が存在するあらゆる通信システムに関連する問題である。現状の認識から判断して、上記の問題は、例えば、集中型ネットワーク及び/又はユーザ管理機能、セキュリティ機能、又は同様のもの等を処理する中央当事者を有していない通信システムについて特に当てはまる。このようなシステムを表す一実施例として、ピアツーピア(P2P)システムなどにおける分散型システム環境について述べることができる。この問題に関する既存の事例には以下が含まれる。
−電子メール。開放型電子メール・インフラストラクチャの要件は、事前に互いの紹介を行うことなく、誰でもが電子メールを他の誰かに送信できることである。
−WWW(ワールド・ワイド・ウェブ)サイト自体により管理される永続的ユーザ識別子を有するWWWサイト。
−例えば移動通信装置のような極度にリソースが制約された装置により、例えば、無線プロキシミティ・ネットワークを通じて提供されるネットワーク・サービス。
これらの状況又は設定の多くにおいて、統一的な特徴として、ユーザの「識別子」は、(中央当事者により統制されないため)任意に生成される可能性があり、いずれの中央当事者によっても管理を受けない点が挙げられる。
悪意のある当事者により実行された場合、ユーザ(又はユーザ機器)又はネットワーク要素などの1当事者が複数の識別子を偽って請求するような状況は、文献で「シビル・アタック」と呼ばれてきた。すなわち、この「シビル・アタック」は、一種の悪意のある識別子の偽造と考えることができ、この結果、悪意のある当事者が複数の(偽造された)識別子を他の当事者に提示するという点で、識別子とエンティティとの間に想定される対応付けを損ねるものである。
「シビル・アタック」は、文献で広く論じられており、最初に紹介されたのは、John R. Douceurによる「シビル・アタック」、ピアツーピアシステムに関する第1回国際ワークショップ(IPTPS02)の会報、米国マサチューセッツ州ケンブリッジ、2002年3月である(非特許文献1)。
シビル・アタックにより引き起こされる問題は、悪意のある当事者が、例えばインターネット上でワーム及びトロイの木馬並びに他のマルウェアを介してネットワーク接続されたコンピュータの相当量及び場合によっては莫大な量を制御することができるという危険性により悪化する。すなわち、システムの重要な部分が悪意のある当事者により制御され、これによって、例えば、セキュリティの脅威に対抗するために実際に意図されたシステムの冗長性が損なわれる可能性がある。その結果、既存の正当な認証及び識別子が危殆化され、悪意のある当事者の制御下に置かれる可能性がある。
このような問題は、現在インターネット上に存在するスパム(すなわち要求していない大量の電子メール)問題の土台を成すものである。
上述のDouceurの論文で提案されているような公知の従来技術による解決策は、識別子を証明するように構成された信頼できる第3者をシステムの中に組み入れるというものである。しかしながら、このような信頼できる第3者は、通信システムに対する(例えば管理又は実装に関する)追加のコスト及び労力を伴うことになる。
上記の問題を解決又は少なくとも軽減する別のアプローチは、「作業証明(proof−of−work)」というキーワードにより参照される。概説すれば、作業証明システムとは、通信当事者などの装置が何らかの「作業」を行ったことを証明するのに用いるシステムであり、通常は、装置が幾らかの処理時間及び/又は容量を費やしたことを意味する。従って、例えばスパム阻止などに関して、電子メールの送信を望むいずれのコンピュータも、受信機が該コンピュータからの電子メールを受け入れる前に上記のような作業証明を生成する必要がある。この着想は、当事者が、どちらかといえば無用の作業を実施することで正当で「良い性質」であることを証明しなければならず、これにより不正利用又は違法行為を阻止する。
作業証明に関しては幾つかの従来技術が存在する。
例えば、Microsoftの研究における「penny black」プロジェクトが、作業証明に関する論文をhttp://research.microsoft.com/research/sv/PennyBlackで提示している。
作業証明という着想は、C. Dwork及びM. Naorによる論文「Pricing via Processing or Combatting Junk Mail(迷惑メールの処理又は対抗にかかる価格設定)」、Computer Science(1993年、会報CRYPTO’92)の講義ノート、pp.137〜147に提示されている(非特許文献2)。この論文では、署名方式に基づく作業証明も用いられている。しかしながら、この論文では、上記方式は作業証明の適用性を限定しておらず、更に明らかにもしていない。従って、上記方式は、上記問題の解決に適したものではなく、すなわち、例えば新しい識別子を互いに導入するようなものではない。
本来セッション・オブジェクト枯渇攻撃に対抗するように設計されたクライアント・パズルというコンセプトを通じて、インタラクティブな作業証明が導入された。このクライアント・パズルは、A. Juels及びJ. Brainardによる論文「Client Puzzles: A Cryptographic Countermeasure Against Connection Depletion Attacks(クライアント・パズル:接続枯渇攻撃に対抗する暗号対策)」、S. Kent編集、NDSS’99会報(ネットワーク及び分散型セキュリティシステム)、p.151〜165、(1999年)に紹介されている(非特許文献3)。これらのプロトコルは、作業証明の適用性を限定することはできるが、インタラクティブなものであり、従って、例えば蓄積転送型ネットワークにおいて適用可能ではない。更に、上記問題を解決するためにこのようなプロトコルをどのように使用できるか、即ち、新たな識別子を互いに導入する方法については提案されておらず、示唆さえなされていない。
「bread pudding protocols」という概念を通じて、コンピュータの処理能力を単に浪費するのではなく、何か「有用な」ことを行うために作業証明を利用するという着想が導入された。これは、M. Jakobsson及びA. Juelsによる「Proofs of work and bread pudding protocols(作業証明及びブレッド・プディング・プロトコル)」、通信及びマルチメディア・セキュリティに関するIFIP TC6及びTC11共同作業会議(CMS’99)の会報、1999年9月、ベルギー、ルーバンで紹介された(非特許文献4)。
しかしながら、従来技術による上述のアプローチのいずれも上記の状況、特にSybil Attackに関連する好適な解決策を提供するものではない。従って、公知の従来技術は、本発明の基礎となる問題を実際に許容可能な方法で解決するのには適していないことになる。
このように、信頼できる第3者が存在しないときに互いに未知の2つの通信当事者の紹介の改善を可能にする上記の問題及び欠点に対する解決策が依然として必要とされている。
John R. Douceurによる「シビル・アタック」、ピアツーピアシステムに関する第1回国際ワークショップ(IPTPS02)の会報、米国マサチューセッツ州ケンブリッジ、2002年3月 C. Dwork及びM. Naorによる論文「Pricing via Processing or Combatting Junk Mail(迷惑メールの処理又は対抗にかかる価格設定)」、Computer Science(1993年、会報CRYPTO’92)の講義ノート、pp.137〜147 A. Juels及びJ. Brainardによる論文「Client Puzzles: A Cryptographic Countermeasure Against Connection Depletion Attacks(クライアント・パズル:接続枯渇攻撃に対抗する暗号対策)」、S. Kent編集、NDSS’99会報(ネットワーク及び分散型セキュリティシステム)、p.151〜165、(1999年) M. Jakobsson及びA. Juelsによる「Proofs of work and bread pudding protocols(作業証明及びブレッド・プディング・プロトコル)」、通信及びマルチメディア・セキュリティに関するIFIP TC6及びTC11共同作業会議(CMS’99)の会報、1999年9月、ベルギー、ルーバン
従って、本発明の目的は、従来技術に内在する上記欠点を取り除き、その結果として改善された方法、通信装置、システム及びコンピュータプログラム製品を提供することである。
本発明の第1の態様によれば、本発明の目的は、例えば、信頼できる第3者を利用せずに、通信システムにおいて互いに未知の2つの通信当事者間で信頼できる関係を確立するための方法により達成され、該方法は、
(i)2つの通信当事者のうちの第1の通信当事者側で、
2つの通信当事者の少なくとも識別子と、第1の通信当事者から第2の通信当事者へ転送すべき情報とを含むデータセットを作成するステップと、
第1の通信当事者の識別子に関連する作成済みのデータセットに基づいて暗号計算を実行して、問題インスタンスを導き出すステップと、
導き出された問題インスタンスの解を求めるステップと、
問題インスタンスの解を求めるため、信頼できる関係の確立の目的に限られる作業証明を生成するステップと、
データ及び作業証明を第2の通信当事者に転送するステップと、
を実行し、その後、
(ii)第2の通信当事者側で、
問題インスタンスの解を求めるための作業証明を検証するステップと、
検証ステップが肯定の結果をもたらす場合、信頼できる関係を得るためのセッション・オブジェクトを生成して、第1の通信当事者に送信するステップと、
を実行する、
ことを含む。
本発明の第2の態様によれば、本発明の目的は、例えば、信頼できる第3者を利用せずに、通信システムにおいて互いに未知の2つの通信当事者間で信頼できる関係の確立を開始するための方法により達成され、該方法は、2つの通信当事者のうちの第1の通信当事者側で行われ、
2つの通信当事者の少なくとも識別子と、第1の通信当事者から第2の通信当事者へ転送すべき情報とを含むデータセットを作成するステップと、
第1の通信当事者の識別子に関連する作成済みのデータセットに基づいて暗号計算を実行して、問題インスタンスを導き出すステップと、
導き出された問題インスタンスの解を求めるステップと、
問題インスタンスの解を求めるため、信頼できる関係の確立の目的に限られる作業証明を生成するステップと、
データ及び作業証明を第2の通信当事者に転送するステップと、
を含む。
本発明の第3の態様によれば、本発明の目的は、例えば、信頼できる第3者を利用せずに、通信システムにおいて互いに未知の2つの通信当事者間で信頼できる関係の確立を完了するための方法により達成され、該方法は、2つの通信当事者の第2の通信当事者側で行われ、
第1の通信当事者から受信した問題インスタンスの解を求めるため、信頼できる関係の確立の目的に限られる作業証明を、2つの通信当事者の少なくとも識別子と第1の通信当事者から第2の通信当事者へ転送すべき情報とを含むデータと共に検証するステップと、
検証ステップが肯定の結果をもたらす場合、信頼できる関係を得るためのセッション・オブジェクトを生成して、これを上記第1の通信当事者に送信するステップと、
を含む。
更に好適な展開によれば、以下の1又はそれ以上が適用される。
−作業証明は問題インスタンスに対する解であり、データセットは、第1の通信当事者の公開鍵を含む。
−作業証明は、問題インスタンスに対する解の知識証明に基づくデジタル署名であり、作業証明は問題インスタンスの解を公開せず、デジタル署名は、データセットの全て又は一部にわたって計算される。
−暗号計算を実行するステップは、作成済みのデータセットの少なくとも一部に対して擬似ランダム関数を実行するステップを含む。
−暗号計算を実行するステップは、擬似ランダム関数の結果を問題インスタンスにマッピングするためのマッピング関数を実行するステップを更に含む。
−本方法は、解を求めるステップが失敗した場合、作成済みのデータセットの少なくとも一部を修正し、該修正済みのデータセットに基づいて暗号計算を実行するステップを更に含む。
−作業証明を検証するステップは、第1の通信当事者側での暗号計算のベースとなるデータセットに基づいて暗号計算を実行するステップと、受信した作業証明が暗号計算の実行に対応することを検証するステップとを含む。
−データセットを作成するステップは、このデータセット内にタイムスタンプを作成するステップを更に含む。
−作業証明を検証するステップは、タイムスタンプが有効であるようにチェックを行うステップを含む。
−セッション・オブジェクトは暗号鍵を含む。
−本方法は、生成したセッション・オブジェクトの送信前に暗号化を行うステップを更に含む。及び/又は、
−セッション・オブジェクトを暗号化するステップは、作成済みのデータセットに含まれる第1の通信当事者の公開鍵に基づいて行われる。
本発明の第4の態様によれば、本発明の目的は、例えば、信頼できる第3者を利用せずに第1の通信当事者としての通信装置と第2の通信当事者との間での信頼できる関係の確立を開始するように構成された通信システム内の通信装置により達成され、これら2つの通信当事者は互いに未知の当事者であり、該通信装置が、
2つの通信当事者の少なくとも識別子と、第1の通信当事者から第2の通信当事者へ転送すべき情報とを含むデータセットを作成するように構成される作成器と、
第1の通信当事者の識別子に関連する作成済みのデータセットに基づいて暗号計算を実行して、問題インスタンスを導き出すように構成される実行器と、
導き出された問題インスタンスの解を求めるように構成される解決器と、
問題インスタンスの解を求めるため、信頼できる関係の確立の目的に限られる作業証明を生成するように構成される生成器と、
データ及び作業証明を第2の通信当事者に送信し、第2の通信当事者からセッション・オブジェクトを受信するように構成される送受信器と、
を備える。
本発明の第5の態様によれば、本発明の目的は、例えば、信頼できる第3者を利用せずに第1の通信当事者としての通信装置と第2の通信当事者との間での信頼できる関係の確立を開始するように構成された通信システム内の通信装置により達成され、これら2つの通信当事者は互いに未知の当事者であり、該通信装置が、
2つの通信当事者の少なくとも識別子と、第1の通信当事者から第2の通信当事者へ転送すべき情報とを含むデータセットを作成する手段と、
第1の通信当事者の識別子に関連する作成済みのデータセットに基づいて暗号計算を実行して、問題インスタンスを導き出す手段と、
導き出された問題インスタンスの解を求める手段と、
問題インスタンスの解を求めるため、信頼できる関係の確立の目的に限られる作業証明を生成する手段と、
データ及び作業証明を第2の通信当事者に送信し、第2の通信当事者からセッション・オブジェクトを受信する手段と、
を含む。
更に好適な展開によれば、以下の1又はそれ以上が適用される。
−実行器は、作成器により作成されたデータセットの少なくとも一部において擬似ランダム関数を実行するように更に構成される。
−実行器は、擬似ランダム関数の結果を問題インスタンスにマッピングするためのマッピング関数を実行するように更に構成される。
−解決器は、該解決器が問題インスタンスの解を求められなかった場合、作成済みのデータセットの少なくとも一部を作成器に修正させて、該修正済みのデータセットに基づいて実行器に暗号計算を実行させるように更に構成される。
−生成器は、問題インスタンスに対する解として作業証明を生成するように更に構成され、データセットは第1の通信当事者の公開鍵を含む。
−生成器は、問題インスタンスに対する解の知識証明に基づいてデジタル署名として作業証明を生成するように更に構成され、作業証明は問題インスタンスの解を公開せず、デジタル署名はデータセットの全て又は一部にわたって計算される。及び/又は、
−作成器はデータセット内にタイムスタンプを作成するように更に構成される。
本発明の第6の態様によれば、本発明の目的は、例えば、信頼できる第3者を利用せずに第1の通信当事者と第2の通信当事者としての通信装置との間での信頼できる関係の確立を完了するように構成された通信システム内の通信装置により達成され、これら2つの通信当事者は互いに未知の当事者であり、該通信装置が、
問題インスタンスに対する解を得るため、信頼できる関係の確立の目的に限られる作業証明を、2つの通信当事者の少なくとも識別子と第1の通信当事者から第2の通信当事者へ転送すべき情報とを含むデータと共に第1の通信当事者から受信するように構成される送受信器と、
受信した作業証明を検証するように構成される検証器と、
検証器が肯定の結果をもたらす場合、信頼できる関係を得るためのセッション・オブジェクトを生成するように構成される生成器と、
を備え、
送受信器は、生成器によって生成されたセッション・オブジェクトを第1の通信当事者に送信するように更に構成される。
本発明の第7の態様によれば、本発明の目的は、例えば、信頼できる第3者を利用せずに第1の通信当事者と第2の通信当事者としての通信装置との間での信頼できる関係の確立を完了するように構成された通信システム内の通信装置により達成され、これら2つの通信当事者は互いに未知の当事者であり、通信装置が、
問題インスタンスに対する解を得るため信頼できる関係の確立の目的に限られる作業証明を、2つの通信当事者の少なくとも識別子と第1の通信当事者から第2の通信当事者へ転送すべき情報とを含むデータと共に第1の通信当事者から受信する手段と、
検証器が肯定の結果をもたらす場合、信頼できる関係を得るためのセッション・オブジェクトを生成する手段と、
生成器によって生成されたセッション・オブジェクトを第1の通信当事者に送信する手段と、
を含む。
更に好適な展開によれば、以下の1又はそれ以上が適用される。
−検証器は、第1の通信当事者側での暗号計算のベースとなるデータセットに基づいて暗号計算を実行して、受信した作業証明が暗号計算の実行に対応することを検証するように更に構成される。
−検証器は、タイムスタンプが有効になるようにチェックを行うように更に構成される。
−生成器は、暗号鍵を含むセッション・オブジェクトを生成するように更に構成される。
−生成器は、セッション・オブジェクトの送信前に、生成したセッション・オブジェクトを暗号化するように更に構成される。及び/又は、
−生成器は、第1の通信当事者の公開鍵に基づいてセッション・オブジェクトを暗号化するように更に構成される。
本発明の第8の態様によれば、本発明の目的は、例えば、信頼できる第3者を利用せずに通信システムにおいて互いに未知の2つの通信当事者間で信頼できる関係を確立するシステムにより達成され、該システムは、
(i)第1の通信当事者としての本発明の第4又は第5の態様の何れか一方の態様による少なくとも1つの第1の通信装置と、
(ii)第2の通信当事者としての本発明の第6又は第7の態様の何れか一方の態様による少なくとも1つの第2の通信装置と、
を備える。
本発明の第9の態様によれば、本発明の目的は、例えば、コンピュータ可読媒体上で具現化され、且つ通信システム内の通信装置のデジタル処理手段のメモリにロード可能なコンピュータプログラム製品であって、該製品がデジタル処理手段上で実行された場合、本発明の第1又は第2の態様の何れか一方の態様によるステップを実行するためのソフトウェアコード部を備えるコンピュータプログラム製品により達成される。
本発明の第10の態様によれば、本発明の目的は、例えば、コンピュータ可読媒体上で具現化され、且つ通信システム内の通信装置のデジタル処理手段のメモリにロード可能なコンピュータプログラム製品であって、該製品がデジタル処理手段上で実行された場合、本発明の第1又は第3の態様の何れか一方の態様によるステップを実行するためのソフトウェアコード部を備えるコンピュータプログラム製品により達成される。
本発明の複数の実施形態によれば、作業証明に対する2つの基本的な使用例が存在する。第1の使用例では、知識証明プロトコルが用いられ、従って、作業証明は情報を秘匿するというプロパティを有することになる。すなわち、生成された問題インスタンスの解が作業証明によって公開されるのではなく、解かれた問題インスタンスのみが公開される。第2の使用例では、知識証明プロトコルは用いられず、従って、作業証明は情報を秘匿するものではない。すなわち、この作業証明では問題インスタンスの解も公開される。しかしながら、この場合でさえも、第1の通信当事者により作成されたデータセットで定められる限定された適用性に起因して、(情報を秘匿するものではないとしても)この作業証明を別の目的に利用することはできないので、通信当事者間での信頼できる関係を適切に確立することができる。
本発明の利点は、信頼できる第3者が存在しないときに互いに未知の2つの通信当事者の紹介が行われることである。
本発明の実施形態の利点は、非インタラクティブな及び/又は情報を秘匿する作業証明、すなわち、証明自体を公開しない作業証明を、互いに未知の2つの通信当事者の紹介のために提供することである。
本発明の実施形態の更なる利点は、作業証明に基づく署名方式の利用を提示することである。
有利には、本発明の実施形態は、ある量の労力が費やされたことの証明を通して、識別子と(おそらく公開鍵を含む)関連データとを導入する方法に対する実行可能な解決策を提供する。換言すれば、何らかの作業が行われたことの証明を用いて任意の情報に暗号で署名を行う方法に対する解決策が好適に提供される。
更に、提示される解決策により以下の利点のすべてが達成される。
−解かれた問題であることを示す証拠は公開されず、従って、攻撃者は作業証明それ自体を実行することにより利益を得ることはない。
−提示されるプロトコルは非インタラクティブなものであり、蓄積転送型ネットワークで利用することができるものである。
−証拠は公開されず(上記を参照)、Fiat−Shamirヒューリスティックを介してその証拠を利用して、公開鍵を含む任意のデータに署名することができ、この結果、順方向秘匿性(Forward Secrecy)が得られる。
最終的に、本発明に関連する計算上の構成は(完全に)パラメータ化することが可能であり、従って、重すぎることがないため実施可能である。
以下、添付図面を参照しながら本発明について更に詳述する。
本発明について非限定的な特定の実施例を参照しながら本明細書で説明する。当業者であれば、本発明がこの実施例に限定されるわけではなく、より広範に適用可能であることは理解されるであろう。
詳細には、本発明は一般に、暗号プロトコルの分野を対象とし、例えば、インターネット及び何らかのアドホック・ネットワーク又はセンサネットワークなどの、それぞれのアーキテクチャを有するあらゆる環境において未知の通信当事者間での信頼できる関係の確立に関するものである。
本明細書に示される実施形態についての説明は、本発明の基礎をなす基本的な一般概念の特定の実施を意味し、従って、本発明は、与えられたあらゆる具体的な実施例に限定されるものではない。
概説すれば、本発明は、信頼できる第3者が存在しないときに、互いに未知の2つの通信当事者間での信頼できる関係を導入すなわち確立する暗号プロトコルを実装するための一般的フレーム・ワークを提示するものである。
図1は、本発明の1つの実施形態に従う汎用プロトコルのフローチャートを示す。描かれているプロトコルの通信当事者が、証明器P(すなわち証明側)及び検証器V(すなわち検証側)により示されている。図1に従う汎用プロトコルは以下の通りである。
証明器通信当事者Pは、データのセットAを作成することにより検証器通信当事者Vとの信頼できる関係の確立を開始する(ステップS1)。作成されたデータセットAには、例えば、P用の識別子、V用の識別子、及びソルトS_1(すなわち「初期ベクトル」、例えば鍵導出関数への入力として使用される一連のランダムビット)が含まれる。セットAはまた、公開鍵又は公開鍵の暗号ハッシュ、タイムスタンプ及び/又は検証器Vに送信すべきメッセージなどの補助データを含んでもよい。
第2のステップであるステップS2で、証明器は、暗号計算と呼ぶことができる算出を実行する。この算出は、作成されたデータセットAに基づいて実行される。上述の作業証明というコンセプトに照らせば、これらの計算は、基本的に例えば別の当事者へのメッセージの送信を望む当事者によって行われるべき「作業」である。
本実施形態によれば、図1のステップS2の計算は、例示的にS21からS22までのステップに細分化することができる。
ステップS21で、証明器は、作成済みのデータセットAに適用される擬似ランダム関数hの結果としてのビット列S、すなわちS=h(a)の計算を行う。この擬似ランダム関数は、例えば、(SHA1などの)ある種の暗号ハッシュ関数とすることができる。ステップS22で、問題インスタンスに対して任意のビット列をマッピングするためにマッピング関数mを適用することにより、証明器Pは、自ら解くことになる計算上の問題x、すなわちx=m(s)を作成/導出する。この問題インスタンスは、解を求めるのが平均して(非常に)困難である(例えば、問題のサイズでは超多項式を解く試みを必要とする)。x=m(s)は、Pが計算を行う「困難な」問題インスタンスを示す記述式とする。
ステップS3で、証明器Pは、問題インスタンスxを解いて、解wを求める。
問題に解がなければ、すなわちステップS4で「いいえ」であれば、証明器Pは、計算のベースとなる最初に作成されたデータセットAの少なくとも一部を修正し、この修正のためにステップS1に戻り、ステップS2の暗号計算及びステップS3の解法を再び開始する。例えば、セットAのソルトS_1を変更することができる。
ステップS4で「はい」であれば、すなわち問題インスタンスxに解wがあれば、プロトコルはステップS5に進み、そこで、証明器Pは、問題インスタンスの解について、及び更に上述の計算の実行についての作業証明を生成する。この生成された作業証明は、その適用性において、関与する通信当事者間での信頼できる関係の確立に限定される。
ステップS6で、証明器Pは、作業証明p(w)と、入力セットM及びAとを第2の通信当事者すなわち検証器Vに送信する。
証明器Pから受信した作業証明p(w)の検証(ステップS7)において、検証器Vは、最初に、ステップS71で、それぞれの暗号計算m(h(a))を実行し、すなわち問題インスタンスxの再計算を行う。次のステップS72で、検証器Vは、セットAから導き出された問題xに対する解wについての知識に作業証明p(w)が対応していることを確認する。
ステップS71及びS72の検証が肯定結果をもたらさない場合、すなわちステップS73で「いいえ」であれば、検証器はプロトコルの実行を中断し、すなわち、信頼できる関係は確立されない。この場合、PからVに送信されるメッセージは、信頼できる通信当事者から送信されたものとは見なされない。これらのメッセージに関する取り扱い、及びこの場合の処理の進め方の決定は、(検証器Vの)ローカル・セキュリティ・ポリシに左右される。ステップS73で「はい」の場合、すなわち、作業証明が正しかったことにより証明器Pの紹介(PとVとの間での信頼できる関係)が受け入れられた場合には、検証器Vは、実行されたばかりの紹介プロトコルなしで通信を行うのに必要なあらゆる情報を生成して証明器Pに送信する。本質的に、この情報は、いわゆるセッション・オブジェクトにより本明細書で表されるものである。上記情報又はセッション・オブジェクトはまた、セットA又はMの何れかに含まれる情報を用いて暗号化し、暗号形式でPに送信することができる。これらのステップは、図1のS8、S81及びS82でそれぞれ示されている。
ステップS3の関数w=solve(x)は、ステップS72からS73までの確認関数に比べて著しく計算が困難でなければならない。そうでなければ、検証器Vは、Pとほぼ同量の作業量を費やす必要があり、結果として信頼性がほとんど得られなくなる。
本発明の実施形態によれば、ステップS62でのセッション・オブジェクトの暗号化は、以下の2つの方法で実施することができる。
i.)問題インスタンスxは情報の暗号化に使用できる公開鍵を表わし、この情報は(証明器側及び検証器側の双方が既知である)xを用いて解読することもできる。但し、これは、ステップS82で送信された情報が、問題インスタンスxの解を得たい何れの敵対ノードによっても(任意の時間内で)解読できることを意味する。
ii.)或いは、セットM又はセットA内の情報は証明器Pの公開鍵を含む。この場合、検証器Vは、この公開鍵を用いて情報又はセッション・オブジェクトを暗号化することができ、これにより、セッション・オブジェクトをこの公開鍵に限ることができる。
以下では、本発明の実施形態の上述の2つの使用例について説明する。
セットAの情報が、作業証明の適用性を証明器Pに限定するようなものである場合、p(w)は、wを出力する関数(例えばw=p(w))となることができる。これは、セットMとセットAとが互いに等しいことを要件とする。作業証明の有用性を証明器Pに限ることは、Pの識別子に対応する公開鍵をセットAに含めることにより達成できる。これにより、個別の知識証明プロトコルが不要になる。この場合、解いた問題インスタンスの解(すなわち、いわゆる証拠)は、作業証明により公開される。しかしながら、このことは、作業証明の適用性が限定されているので、提案された方法の実行に対してどのような問題も引き起こすものではない。
別の使用例では知識証明プロトコルが用いられる。この場合、作業証明は通常通り解かれた問題インスタンスを公開するが、この問題インスタンスの対応する解(すなわち証拠)は公開しない。この理由として、検証器Vは、作業証明を検証するために(常に)問題インスタンスを知っている必要があるが、知識証明を用いる場合、検証器Vは、問題インスタンスの解を知る必要がないためである。
知識証明p(w)はまた、セットAから導き出された鍵ペアを用いて、特にセットAにより定められた証明器Pの公開鍵を用いてセットMに対して行われる署名として理解することができる。署名器(すなわち証明器P)により作成された疑似ランダム・チャレンジ・データと共に知識証明を利用することは、Fiat−Shamirヒューリスティックと呼ばれ、公開鍵署名方式を生成するのに一般に用いられている。
使用される知識証明プロトコルは、入力セットMに対してFiat−Shamirヒューリスティックを使用することに限られた本発明の実施形態によるものである。これらの入力Mは、例えば、ステップS1で作成されたデータセットAの要素の一部を組み合わせたものとすることができる。しかしながら、知識証明プロトコルの疑似ランダム関数により生成される乱数が、ステップS22の問題インスタンスx又はステップS22のビット列sと同じである場合、具体的な暗号プロトコルがその時点で機能しなくなる可能性がある。従って、このような機能不良を防止するために、セットMの中に異なるソルトS_2を含めるようにしてもよい。
別の選択肢として、検証器は、作業証明が(有効期限の点で)十分に「新鮮」なものであることを要求することができる。このようにすれば、検証器は、セットM又はセットAの何れかがタイムスタンプを含んでいることを検証し、そのタイムスタンプが有効なタイムスタンプであること、すなわち、そのタイムスタンプの値が将来の値ではなく、十分に最近(例えば過去1分以内)に作成された値であり、必要な精度で作成されていることをチェックする。
かなり詳細且つ例示的に上述した方法又はプロトコルはまた、実質的に以下のより一般的なステップに対応することも理解できよう。
証明器Pは、証明器Pと検証器Vとの間でセッションqを識別するあるセットから計算上難かしい問題を導き出す。
この問題が解かれる。
(任意選択的に)証明器Pと検証器Vとの間のセッションqに限られた別のメッセージが、Fiat−Shamirヒューリスティック及び知識証明を用いて署名される。
検証器Vは、セッションqに基づいて具体的なセッション・オブジェクトと応答し、上記セッション・オブジェクトは証明器Pに送信される。
中核となる基本的な考え方は、証明器Pが、作業証明を用いて新たなセッション又は(公開鍵のような)識別子を検証器Vに紹介することができ、検証器Vが上記証明を受け入れた場合、証明器Pと検証器Vとの間の将来の通信において、この証明(又は類似の証明)を再び行う必要がないようにするというものである。
証明器Pが自ら問題インスタンスxを解くことができる(図1のステップS23及びS24を参照のこと)ので、上記問題インスタンスxが可解であることは明らかであるが、この問題インスタンスxは、証明器Pがある問題を解いたこと、すなわち何らかの「作業」を行ったことをコミットしている点に更に留意されたい。この「作業」は、未知の2つの当事者を互いに「紹介」するのに必要な労力の量に相応する十分な量の労力を構成するように、システムをパラメータ化することができる。証明器P又は敵対するノードが行うことのできる事前計算量は、データセットAにどのような要素が含まれることが必要とされるかに依存する。
図2は、本発明の実施形態に従う汎用プロトコルの別の図表である。図2では、本実施形態の方法又はプロトコルの進行が矢印で示されており、データセットAの作成から始まり、証明器P側でのセッション・オブジェクトの受信で終了する。この接続図では、関係する異なる通信当事者側で行われる処理は、水平の実線で分離されて垂直方向に並べられている点に留意されたい。この処理はまた、証明器及び検証器それぞれを示すそれぞれの文字P及びVで指示する連結括弧によっても示されている。
更に、図1及び図3において同じ参照番号及び記号は、同じパラメータ、処理及び情報をそれぞれ示している。従って、図2は、図1と比較した場合、すなわち時間的な進行の点ではなくむしろ論理的な進行という点で別の表現であると推測できるが、全く同様の方法やプロトコルを例示したものである。従って、図2の詳細な説明については省略し、図1の説明を参照する。
要約してより一般的に述べれば、本発明は、信頼できる第3者を利用せずに、通信システムにおいて互いに未知の2つの通信当事者間で信頼できる関係を確立するための方法を提供し、該方法は、
(i)2つの通信当事者のうちの第1の通信当事者側で、
2つの通信当事者の少なくとも識別子と、第1の通信当事者から第2の通信当事者へ転送すべき情報とを含むデータセットを作成するステップと、
第1の通信当事者の識別子に関連する作成済みのデータセットに基づいて暗号計算を実行して、問題インスタンスを導き出すステップと、
導き出された問題インスタンスの解を求めるステップと、
問題インスタンスの解を求めるため、信頼できる関係の確立の目的に限られた作業証明を生成するステップと、
データ及び作業証明を第2の通信当事者に転送するステップと、
を実行し、その後、
(ii)第2の通信当事者側で、
問題インスタンスの解を求めるための作業証明を検証するステップと、
上記検証ステップが肯定の結果をもたらす場合、信頼できる関係を得るためのセッション・オブジェクトを生成して、これを第1の通信当事者に送信するステップと、
を実行すること、
を含む。
既に上述したように、上記作業証明に対する2つの基本的使用例がある。第1の使用例では、知識証明プロトコルが用いられ、従って、作業証明は、情報を秘匿するというプロパティを有することになる。すなわち、生成された問題インスタンスの解が作業証明によって公開されるのではなく、解かれた問題インスタンスのみが公開される。第2の使用例では、知識証明プロトコルは用いられず、従って、作業証明は情報を秘匿するものではない。すなわち、この作業証明では問題インスタンスの解も公開する。しかしながら、この場合でも、通信当事者(すなわち証明器と検証器)間での信頼できる関係を適切に確立することができ、なぜなら、第1の通信当事者(すなわち証明器)により作成されたデータセットで定められる限定された適用性に起因して、(情報を秘匿するものではないとしても)この作業証明を別の目的に利用することはできないからである。要するに、知識証明プロトコルを用いる(問題インスタンスの解が公開されない)か、証明器の公開鍵がデータセットAの中に存在しなければならないかの何れかとなる。
すなわち、第1及び第2の通信当事者側において、すなわち、例えば図1のステップS1からS82において行われるそれぞれの方法段階を含む方法が提供される。
本発明の別の態様によれば、第1の通信当事者P側において、すなわち、例えば図1のステップS1からS6において行われるそれぞれの方法段階を含む方法が提供される。
本発明の別の実施形態によれば、第2の通信当事者V側において、すなわち、例えば図1のステップS7からS82において行われるそれぞれの方法段階を含む方法も提供される。
本発明の基本的な着想によれば、生成された作業証明は、2つの通信当事者PとVとを互いに紹介し合うという適用性に限られる。作業証明は、前記問題インスタンスに対する直接的な解であるか、又は証明器Pを検証器Vに紹介するデータセットを介してFiat−Shamirヒューリスティックで使用される解の知識証明に基づくデジタル署名とすることができる。
以下のセクションでは、本発明の実施形態に従うプロトコルの実施について、同じ実施形態を具現化する第1の詳細な実施例としてごく手短に説明する。下記の実施例は、離散対数及び公開鍵暗号システムについての知識に基づく知識証明に基づくものである。通信当事者は、ここでもまたP(証明器)とV(検証器)とにより示されている。
使用するグローバル・パラメータ及び演算を以下のように定義する。
q、pの双方が素数であるような整数q=2p+1とする。
|<g>|=pであるように、gを巡回乗法群のqを法とする生成元とする。群の演算は、qを法とする乗算である。gはqを法とする平方剰余とする。
h(k,m)をセキュア・ハッシュ・アルゴリズム1(SHA1)に基づくHMAC関数(HMAC:メッセージ認証のための鍵付ハッシング)とする。
id_P及びid_Vを証明器P及び検証器Vの識別子を表わすビット列とする。
||は、(ビット列を含む)文字列の連結演算子の意味とする。
K_Pをある暗号システムにおけるPの公開鍵とする。
このようにして実装されるプロトコルは以下のようになる。
1.Pはビット列S_1をランダムに選択する。
2.auxを、例えばセッションをブートするか、又はPからVに送信するのに必要とされるある(補助)情報を表わすビット列とする。
a.この情報(又はメッセージ)が既存のメッセージmの最上部にピギーバックされると、auxは当該メッセージmの表示を含まなければならない。
b.作業証明が「新鮮」であることが要求される場合、ビット列auxは、タイムスタンプを含む必要がある。
すなわち、作成されたデータセットA={id_P,id_V,K_P S_1,aux}となる。
3.Pは、x=h(S_1,id_P || id_V || aux)を計算する。
4.Pは、gを底とするxの離散対数の解を求め、結果として、g^w=x mod qであるようなwを得る。上記wが存在しなければ、ステップ1に戻り、別のS_1を選択する。
5.Pは、ビット列s_2及びs_3をランダムに選択する。
6.Pは、r=h(s_2,id_P || id_V || K_P || aux)を計算する。
7.Pは、G=g^s_3 mod qを計算する。
8.Pは、c=s_3+r wを計算する。
9.Pは、G、s_1、s−2、c、id_P、id_V、K_P及びauxをVに送信する。
10.Vは、r=h(s−2,id_P || id_V || K_p || aux)を計算する。
11.Vは、x=h(S_1,id_|| id_V || aux)を計算する。
12.Vは、g^c=G x^rかどうかをチェックする。そうであれば、Vは知識証明を受け入れる。そうでなければ、Vはプロトコルを中断し、2つの当事者を互いに紹介することは行わない。
13.auxがタイムスタンプを含む場合、Vは、タイムスタンプが有効であること、すなわち、正しい精度を有し、十分に最近のものであり、将来のものではないことをチェックする。
14.Vは、場合によっては暗号鍵を含む1つのセッション・オブジェクトを生成し、k_pを用いてこのセッション・オブジェクトを暗号化し、これをPに返信する。
従って、このようにして実装されたプロトコルは、Schnorr識別、すなわち離散対数の標準的な知識証明に基づくものとする。
以下のセクションでは、本発明の実施形態に従うプロトコルの実施について同じ実施形態を具現化する第2の詳細な実施例としてごく手短に説明する。以下の実施例は、暗号ハッシュ関数の原像についての知識を用いて、セットAを証明器Pに限ることに基づいている。すなわち、知識証明プロトコルは必要とせず、セットA及びセットMは互いに等しいものである。
使用するグローバルなパラメータ及び演算は以下のように定義される。
h(k)をSHA1関数などのハッシュ関数とする。
msb(n、x)がxの最上位ビットnを表わすものとする。
id_P及びid_Vを証明器P及び検証器Vの識別子を表わすビット列とする。
||は、(ビット列を含む)文字列の連結演算子の意味とする。
K_Pをある暗号システムにおけるPの公開鍵とする。
nを1から160までの間の整数とする。
上記のようにして実装されるプロトコルは以下のようになる。
1’.auxを、例えばセッションをブートするか、又はPからVに送信するのに必要とされるある(補助)情報を表わすビット列とする。
a.この情報(又はメッセージ)が既存のメッセージmの最上部にピギーバックされると、auxは当該メッセージmの表示を含まなければならない。
b.作業証明が「新鮮」であることが要求される場合、ビット列auxは、タイムスタンプを含む必要がある。
すなわち、作成されたデータセットA={id_P,id_V,K_P,aux}となる。
2’.x=id_P || id_V || K_P || auxとする。
3’.msb(n,x)=msb(n,h(w))であるようなwを計算する。
4’.Pは、A={id_P,id_V,K_P and aux} and wをVに送信する。
5’.Vは、受信したAにより定義される、x’=id_P || id_V || K_P || auxを計算する。
6’.Vは、msb(n,x’)=msb(n,h(w))であることをチェックする。
7’.auxがタイムスタンプを含む場合、Vは、タイムスタンプが有効であること、すなわち、正しい精度を有し、十分に最近のものであり、将来のものではないことをチェックする。
8’.Vは、場合によっては暗号鍵を含む1つのセッション・オブジェクトを生成し、k_pを用いてこのセッション・オブジェクトを暗号化し、これをPに返信する。
図3は、本発明の別の実施形態による2つの通信装置のブロック図を示す。この図に関して、本発明によるシステムの実施形態も図示されているが、但し、このシステムはまた、3つ以上のこうした通信装置も同様に含むことができる。図3の矢印は、個々のブロック間の物理的及び/又は論理的な接続並びに処理のフローを示している。
本実施形態によれば、Pで示される第1の通信装置は、図1及び図2の証明器に対応し、Vで示される第2の通信装置は、図1及び図2の検証器に対応する。
通信装置Pは、信頼できる第3者を利用せずに、通信装置P自体と第2の通信装置Vとの間の信頼できる関係の確立の開始、すなわちV側での通信装置P自体の紹介の開始を希望する。本実施形態による装置Pは、作成器P1、実行器P2、解決器P3、生成器P4及び送受信器P5を備える。
作成器P1は、データセットAを作成(図1のステップS1を参照のこと)し、このセットを実行器P2に渡すように具現化される。次いで、実行器P2は、証明器Pの識別子に関連する上記データセットに基づいて暗号計算を実行して、問題インスタンスを導き出す。この目的のために、実行器P2は、以下の処理のうちの1又はそれ以上を実行するように構成することができる。
作成器により作成されたデータセットの少なくとも一部について擬似ランダム関数を実行(図1のステップS21を参照のこと)すること、
上記擬似ランダム関数の結果を問題インスタンスにマッピングするためのマッピング関数を実行(図1のステップS22を参照のこと)すること。
本発明の別の実施形態によれば、実行器P2は、上記処理のうちの1つ又はそれ以上の処理を実行する別の手段、例えば、マッピング処理用のマッパーを含むことができる。
実行器P2は、導き出された問題インスタンスを解決器P3に供給し、該解決器P3は、上記問題インスタンスの解を求めるように構成されている(図1のステップS3を参照のこと)。解決器P3側で計算済みの問題インスタンスの解が求まると、装置Pの生成器P4は、問題インスタンスの解を求めるための作業証明を生成する(図1のステップS5を参照のこと)。導き出された問題インスタンスの解が入手できなければ(すなわち、図1のステップS5で「いいえ」であれば)、解決器P3は、例えば、作成済みのデータセットの少なくとも一部を作成器P1に修正させ、該修正されたデータセットに基づいてそれぞれの処理を再開するように構成される。図2では、この処理は、解決器P3から作成器P1に戻る矢印によって示されている。
次いで、装置Pの送受信器P5は、作業証明及び関連する情報(すなわちデータ)を第2の通信装置Vに送信する。
通信装置Vは、装置Pが開始した信頼できる関係の確立を完成する必要があるので、第2の通信当事者として機能する。本実施形態による装置Vは、送受信器V1、検証器V2及び生成器V3を備える。
送受信器V1は最初に、暗号計算を実行するために署名済みの情報及び作業証明を第1の装置Pから受信し、次いでこのデータを検証器V2に渡す。検証器V2は、送受信器V1から受信した作業証明を検証する(図1のステップS7を参照のこと)。この目的のために、検証器V2は、以下の処理のうちの1又はそれ以上を実行するよう構成することができる。
第1の通信当事者側における暗号計算のベースとなるデータセットに基づいて暗号計算を実行すること。
受信した作業証明が暗号計算の実行に対応することを検証すること。
タイムスタンプが有効であることをチェックすること。
本発明の別の実施形態によれば、検証器はまた、(図1のステップS71及びS72に相当する)上記処理のうちの1又はそれ以上を実行する別の手段、例えば、タイムスタンプをチェックするチェッカを含むことができる。
次いで、検証器が肯定の結果をもたらす場合、生成器V3は、信頼できる関係を得るためのセッション・オブジェクトのような必要な情報を生成する。この場合、生成器V3は、生成したセッションキーを送受信器V1に渡してこれを第1の通信当事者Pに送信し、その結果、装置Pの送受信器P4がこのセッションキーを受信する。
上記生成器はまた、
暗号鍵を含むセッション・オブジェクトを生成し、
セッション・オブジェクトの送信前に生成済みのセッション・オブジェクトを暗号化し、及び/又は、
第1の通信当事者の公開鍵に基づいてセッション・オブジェクトを暗号化する、
別の手段を実行又は含むように構成することができるようにする。
図3の2つの通信装置P及びVの何れか一方は、移動型であるか非移動型であるかにかかわらず、例えばネットワーク要素又は端末装置とすることができる。
従って、図3に示す通信装置(従って、通信装置に含まれるシステム)は、添付の請求項に定められるように、信頼できる関係を確立する方法で使用するように構成される。
一般に、本発明による署名器又は検証器などの上述の機能エレメントは、該機能エレメントが、それぞれの部品の上述の機能を実行するように適合されている場合にのみ、ハードウェア及び/又はソフトウェアの何れかの形式の何れかの公知の手段によってそれぞれ実装することができることに留意されたい。例えば、装置Vの検証器は、受信した作業証明を検証するように構成され、従って添付の請求項で定められるように、マイクロプロセッサなどの何らかのデータ処理ユニットにより実装することができる。上述の部品はまた、個々の機能ブロックで、又は個々の装置により実現することもでき、或いは、上述の部品の1又はそれ以上は、単一の機能ブロックにおいて又は単一の装置により実現することができる。同様に、上記図3の例図は、例証の目的であり、いかなる点でも本発明の実施を限定するものではない。
更に、ソフトウェアコード部分として実装される可能性の高い方法段階、及び、ピアエンティティのうちの1つにおいてプロセッサを用いて実行される方法段階は、独立したソフトウェアコードであり、C、C++及びアセンブラなどの何らかの公知の又は将来開発されるプログラム言語を用いて仕様化することができる。ピアエンティティのうちの1つにおいてハードウェアコンポーネントとして実装される可能性が高い方法段階、及び/又は装置或いは手段は、独立したハードウェアであり、一例として、例えばASICコンポーネント又はDSPコンポーネントを用いたMOS、CMOS、BiCMOS、ECL、TTL、その他などのあらゆる公知の又は将来開発されるハードウェア技術、又はこれらの何らかのハイブリッド技術を用いて実装することができる。一般に、何れの方法段階も、本発明の着想を変えることなくソフトウェアとして又はハードウェアによって実施するのに好適である。本装置及び手段は、個々の装置として実装することができるが、これは、装置の機能性が保たれている限り、システム全体に分散して実装されることを除外するものではない。このような原理及び類似の原理は、当業者には公知のものと考えるべきものである。
提案したプロトコル並びに構成は、アクティブな中間者からの攻撃に際して、識別子が検証されるか、或いはセッション・オブジェクトを用いて機密性を保護又は完全な真正性を提供するケース向けに設計されていないが、提案のプロトコル及び構成はこうした攻撃を少なくとも遅くするのには適してしいる。むしろ、本発明の着想は、2つの当事者を紹介して、これら2つの当事者間でセッションを確立することができるように適用可能である。従って、本発明は、例えばアドホック・ネットワーク及びオーバーレイ・ネットワーク又は信用システムなどにおいて、基本的なセキュリティ問題を解決するためのシステム内の(少なくとも)構成要素として適用可能であるばかりでなく、有用でもある。本発明は、例えば、(電子メール又はインスタント・メッセージなどの)メッセージフィルタリング・システム又はアドホック・ネットワークのインプリンティング問題に適用することができる。更に別のアプリケーションの実施例として、ファイティング・スパム、及びブラウザ閲覧のアクセス・コントロール、並びに、認可方式に対する信用のブートストラップ(低レベル)がある。更に、本発明は、中間者からの攻撃を全て阻止できないまでも、少なくともある程度までは少なくとも遅くして、これによって上記攻撃に対抗するのに適している。
要約すれば、本発明は、作業証明を用いて未知の2つの通信当事者を互いに紹介し合うためのプロトコルを作成する方法の可能性を提示し、この作業証明は何か他の目的のために再利用又は利用することはできず、更に、別の作業証明を必要とすることなくこの(1回の)紹介に基づいて別の通信を行うことができるようにされる。すなわち、本発明は、別の目的のために「何者も」作業証明を再利用できないように該作業証明を限る機能を提案し、すなわち、本作業証明は、公開鍵又はセッション・オブジェクトを別の当事者に紹介するなどの定められた目的に対する適用性に基本的に限定される。このようにして、「誰でも」(例えば、別の通信当事者とのセッションの確立を試みる通信当事者)、Fiat−Shamirヒューリスティックと共に知識証明プロトコルを適用することにより、作業証明によって定められた解を用いて「何にでも」(すなわち或るデータセットに)署名を行うことができるようにさせる。
換言すれば、本発明は、信頼できる第3者を利用せずに、通信システムにおける互いに未知の2つの通信当事者間での信頼できる関係の確立を提供するものである。本発明は、信頼できる関係の確立の目的に限られた非インタラクティブな作業証明と、問題インスタンスの解を求めるためのこのような作業証明を利用して、通信当事者間で転送すべき情報に暗号で署名を行うこと、並びに、この作業証明を検証し、該検証が肯定の結果をもたらす場合には、信頼できる関係を得るためのセッション・オブジェクトを生成することに基づいている。
以上、添付図面に従って実施例を参照しながら本発明を説明してきたが、本発明がこれらに限定されるものではないことは明らかである。むしろ、当業者には明らかなように、本発明は、添付の請求項で開示される本発明の着想の範囲から逸脱することなく様々に修正を行うことが可能である。
本発明の実施形態による汎用プロトコルのフロー図を示す。 本発明の実施形態による汎用プロトコルの別の例示的な表現である。 本発明の実施形態による2つの通信装置のブロック図を示す。

Claims (32)

  1. 信頼できる第3者を利用せずに、通信システムにおいて互いに未知の2つの通信当事者間で信頼できる関係を確立するための方法であって、
    (i)前記2つの通信当事者のうちの第1の通信当事者側で、
    前記2つの通信当事者の少なくとも識別子と、前記第1の通信当事者から第2の通信当事者へ転送すべき情報とを含むデータセットを作成するステップと、
    前記第1の通信当事者の識別子に関連する前記作成済みのデータセットに基づいて暗号計算を実行して、問題インスタンスを導き出すステップと、
    前記導き出された問題インスタンスの解を求めるステップと、
    前記問題インスタンスの解を求めるため、前記信頼できる関係の確立の目的に限られた作業証明を生成するステップと、
    前記データ及び前記作業証明を前記第2の通信当事者に転送するステップと、を実行し、その後、
    (ii)前記第2の通信当事者側で、
    前記問題インスタンスの解を求めるための前記作業証明を検証するステップと、
    前記検証ステップが肯定の結果をもたらす場合、前記信頼できる関係を得るためのセッション・オブジェクトを生成して、これを前記第1の通信当事者に送信するステップと、
    を実行する、
    ことを含む方法。
  2. 信頼できる第3者を利用せずに、通信システムにおいて互いに未知の2つの通信当事者間で信頼できる関係の確立を開始するための方法であって、該方法は、前記2つの通信当事者のうちの第1の通信当事者側で行われ、
    前記2つの通信当事者の少なくとも識別子と、前記第1の通信当事者から第2の通信当事者へ転送すべき情報とを含むデータセットを作成するステップと、
    前記第1の通信当事者の識別子に関連する前記作成済みのデータセットに基づいて暗号計算を実行して、問題インスタンスを導き出すステップと、
    前記導き出された問題インスタンスの解を求めるステップと、
    前記問題インスタンスの解を求めるため、前記信頼できる関係の確立の目的に限られた作業証明を生成するステップと、
    前記データ及び前記作業証明を前記第2の通信当事者に転送するステップと、
    を含む方法。
  3. 信頼できる第3者を利用せずに、通信システムにおいて互いに未知の2つの通信当事者間で信頼できる関係の確立を完了するための方法であって、該方法は、前記2つの通信当事者の第2の通信当事者側で行われ、
    第1の通信当事者から受信した問題インスタンスの解を求めるため前記信頼できる関係の確立の目的に限られた作業証明を、前記2つの通信当事者の少なくとも識別子と前記第1の通信当事者から前記第2の通信当事者へ転送すべき情報とを含むデータと共に検証するステップと、
    前記検証ステップが肯定の結果をもたらす場合、前記信頼できる関係を得るためのセッション・オブジェクトを生成して、これを前記第1の通信当事者に送信するステップと、
    を含む方法。
  4. 前記作業証明が前記問題インスタンスに対する解であり、前記データセットが前記第1の通信当事者の公開鍵を含む、
    ことを特徴とする請求項1から3の何れか1項に記載の方法。
  5. 前記作業証明が、前記問題インスタンスに対する解の知識証明に基づくデジタル署名であり、前記作業証明が、前記問題インスタンスの解を公開せず、前記デジタル署名が、前記データセットの全て又は一部にわたって計算される、
    ことを特徴とする請求項1から3の何れか1項に記載の方法。
  6. 前記暗号計算を実行する前記ステップが、前記作成済みのデータセットの少なくとも一部に対して擬似ランダム関数を実行するステップを含む、
    ことを特徴とする請求項1又は2に記載の方法。
  7. 前記暗号計算を実行する前記ステップが更に、前記擬似ランダム関数の結果を問題インスタンスにマッピングするためのマッピング関数を実行するステップを含む、
    ことを特徴とする請求項6に記載の方法。
  8. 前記解を求めるステップが失敗した場合、前記作成済みのデータセットの少なくとも一部を修正し、該修正済みのデータセットに基づいて前記暗号計算を実行するステップを更に含む、
    ことを特徴とする請求項1又は2に記載の方法。
  9. 前記作業証明を検証する前記ステップが、
    前記第1の通信当事者側での前記暗号計算のベースとなる前記データセットに基づいて前記暗号計算を実行するステップと、
    前記受信した作業証明が前記暗号計算の実行に対応することを検証するステップと、
    を含むことを特徴とする請求項1又は3に記載の方法。
  10. データセットを作成する前記ステップが、前記データセット内にタイムスタンプを作成するステップを更に含む、
    ことを特徴とする請求項1又は2に記載の方法。
  11. 前記作業証明を検証する前記ステップは、タイムスタンプが有効であるようにチェックを行うステップを含む、
    ことを特徴とする請求項1又は3に記載の方法。
  12. 前記セッション・オブジェクトが暗号鍵を含む、
    ことを特徴とする請求項1又は3に記載の方法。
  13. 前記生成したセッション・オブジェクトの送信前に暗号化を行うステップを更に含む、
    ことを特徴とする請求項1又は3に記載の方法。
  14. 前記セッション・オブジェクトを暗号化する前記ステップが、前記作成済みのデータセットに含まれる前記第1の通信当事者の公開鍵に基づいて行われる、
    ことを特徴とする請求項13に記載の方法。
  15. 通信システムにおける通信装置であって、信頼できる第3者を利用せずに第1の通信当事者としての前記通信装置と第2の通信当事者との間での信頼できる関係の確立を開始するように構成される通信装置において、
    前記2つの通信当事者が互いに未知の当事者であり、前記通信装置が、
    前記2つの通信当事者の少なくとも識別子と、前記第1の通信当事者から前記第2の通信当事者へ転送すべき情報とを含むデータセットを作成するように構成される作成器と、
    前記第1の通信当事者の識別子に関連する前記作成済みのデータセットに基づいて暗号計算を実行して、問題インスタンスを導き出すように構成される実行器と、
    前記導き出された問題インスタンスの解を求めるように構成される解決器と、
    前記問題インスタンスの解を求めるため、前記信頼できる関係の確立の目的に限られる作業証明を生成するように構成される生成器と、
    前記データ及び前記作業証明を前記第2の通信当事者に送信し、前記第2の通信当事者からセッション・オブジェクトを受信するように構成される送受信器と、
    を備えることを特徴とする通信装置。
  16. 通信システムにおける通信装置であって、信頼できる第3者を利用せずに第1の通信当事者としての前記通信装置と第2の通信当事者との間での信頼できる関係の確立を開始するように構成される通信装置において、
    前記2つの通信当事者が互いに未知の当事者であり、前記通信装置が、
    前記2つの通信当事者の少なくとも識別子と、前記第1の通信当事者から前記第2の通信当事者へ転送すべき情報とを含むデータセットを作成する手段と、
    前記第1の通信当事者の識別子に関連する前記作成済みのデータセットに基づいて暗号計算を実行して、問題インスタンスを導き出す手段と、
    前記導き出された問題インスタンスの解を求める手段と、
    前記問題インスタンスの解を求めるため、前記信頼できる関係の確立の目的に限られる作業証明を生成する手段と、
    前記データ及び前記作業証明を前記第2の通信当事者に送信し、前記第2の通信当事者からセッション・オブジェクトを受信する手段と、
    を含むことを特徴とする通信装置。
  17. 前記実行器は、前記作成器により作成された前記データセットの少なくとも一部において擬似ランダム関数を実行するように更に構成される、
    ことを特徴とする請求項15に記載の通信装置。
  18. 前記実行器は、前記擬似ランダム関数の結果を問題インスタンスにマッピングするためのマッピング関数を実行するように更に構成される、
    ことを特徴とする請求項17に記載の通信装置。
  19. 前記解決器は、
    前記解決器が前記問題インスタンスの解を求めることができなかった場合、前記作成済みのデータセットの少なくとも一部を前記作成器に修正させて、該修正済みのデータセットに基づいて前記実行器に前記暗号計算を実行させる、
    ように更に構成されている、
    ことを特徴とする請求項15に記載の通信装置。
  20. 前記生成器は、前記問題インスタンスに対する解として前記作業証明を生成するように更に構成され、前記データセットは、前記第1の通信当事者の公開鍵を含む、
    ことを特徴とする請求項15に記載の通信装置。
  21. 前記生成器は、前記問題インスタンスに対する解の知識証明に基づいてデジタル署名として前記作業証明を生成するように更に構成され、前記作業証明は前記問題インスタンスの解を公開せず、前記デジタル署名は前記データセットの全て又は一部にわたって計算される、
    ことを特徴とする請求項15に記載の通信装置。
  22. 前記作成器が、前記データセット内にタイムスタンプを作成するように更に構成される、
    ことを特徴とする請求項15に記載の通信装置。
  23. 通信システムにおける通信装置であって、信頼できる第3者を利用せずに第1の通信当事者と第2の通信当事者としての前記通信装置との間での信頼できる関係の確立を完了するように構成される通信装置において、
    前記2つの通信当事者が互いに未知の当事者であり、前記通信装置が、
    問題インスタンスに対する解を得るための前記信頼できる関係の確立の目的に限られる作業証明を、前記2つの通信当事者の少なくとも識別子と前記第1の通信当事者から前記第2の通信当事者へ転送すべき情報とを含むデータと共に前記第1の通信当事者から受信するように構成される送受信器と、
    前記受信した作業証明を検証するように構成される検証器と、
    前記検証器が肯定の結果をもたらす場合、前記信頼できる関係を得るためのセッション・オブジェクトを生成するように構成される生成器と、
    を備え、
    前記送受信器が、前記生成器によって生成された前記セッション・オブジェクトを前記第1の通信当事者に送信するように更に構成される、
    ことを特徴とする通信装置。
  24. 通信システムにおける通信装置であって、信頼できる第3者を利用せずに第1の通信当事者と第2の通信当事者としての前記通信装置との間での信頼できる関係の確立を完了するように構成される通信装置において、
    前記2つの通信当事者は互いに未知の当事者であり、前記通信装置が、
    問題インスタンスに対する解を得るための前記信頼できる関係の確立の目的に限られる作業証明を、前記2つの通信当事者の少なくとも識別子と前記第1の通信当事者から前記第2の通信当事者へ転送すべき情報とを含むデータと共に前記第1の通信当事者から受信する手段と、
    前記受信した作業証明を検証する手段と、
    前記検証器が肯定の結果をもたらす場合、前記信頼できる関係を得るためのセッション・オブジェクトを生成する手段と、
    前記生成器によって生成された前記セッション・オブジェクトを前記第1の通信当事者に送信する手段と、
    を含む通信装置。
  25. 前記検証器が、
    前記第1の通信当事者側での前記暗号計算のベースとなるデータセットに基づいて暗号計算を実行し、
    前記受信した作業証明が前記暗号計算の実行に対応することを検証する、
    ように更に構成される、
    ことを特徴とする請求項23に記載の通信装置。
  26. 前記検証器は、タイムスタンプが有効であるようにチェックを行うよう更に構成される、
    ことを特徴とする請求項23に記載の通信装置。
  27. 前記生成器は、暗号鍵を含むセッション・オブジェクトを生成するように更に構成される、
    ことを特徴とする請求項23に記載の通信装置。
  28. 前記生成器は、前記セッション・オブジェクトの送信前に、前記生成したセッション・オブジェクトを暗号化するように更に構成される、
    ことを特徴とする請求項23に記載の通信装置。
  29. 前記生成器は、前記第1の通信当事者の公開鍵に基づいて前記セッション・オブジェクトを暗号化するように更に構成される、
    ことを特徴とする請求項28に記載の通信装置。
  30. 信頼できる第3者を利用せずに、通信システムにおいて互いに未知の2つの通信当事者間で信頼できる関係を確立するシステムであって、
    (i)第1の通信当事者としての少なくとも1つの第1の通信装置であって、
    前記2つの通信当事者の少なくとも識別子と、前記第1の通信当事者から第2の通信当事者へ転送すべき情報とを含むデータセットを作成するように構成される作成器と、
    前記第1の通信当事者の識別子に関連する前記作成済みのデータセットに基づいて暗号計算を実行して、問題インスタンスを導き出すように構成される実行器と、
    前記導き出された問題インスタンスの解を求めるように構成される解決器と、
    前記問題インスタンスの解を求めるため、前記信頼できる関係の確立の目的に限られる作業証明を生成するように構成される第1の生成器と、
    前記データ及び前記作業証明を前記第2の通信当事者に送信し、前記第2の通信当事者からセッション・オブジェクトを受信するように構成される第1の送受信器と、
    を含む第1の通信装置と、
    (ii)前記第2の通信当事者としての少なくとも1つの第2の通信装置であって、
    前記問題インスタンスの解を求めるための前記信頼できる関係の確立の目的に限られる前記作業証明を、前記2つの通信当事者の少なくとも前記識別子と、前記第1の通信当事者から前記第2の通信当事者へ転送すべき情報とを含む前記データと共に前記第1の通信当事者から受信するように構成される第2の送受信器と、
    前記受信した作業証明を検証するように構成される検証器と、
    前記検証器が肯定の結果をもたらす場合、前記信頼できる関係を得るための前記セッション・オブジェクトを生成するように構成される第2の生成器と、
    を含む第2の通信装置と、
    を備え、
    前記第2の送受信器は、前記第2の生成器によって生成された前記セッション・オブジェクトを前記第1の通信当事者に送信するように更に構成される、
    ことを特徴とするシステム。
  31. コンピュータ可読媒体上で具現化され、且つ通信システム内の通信装置のデジタル処理手段のメモリにロード可能なコンピュータプログラム製品であって、前記コンピュータプログラム製品が、
    前記デジタル処理手段上で実行されたときに、
    2つの通信当事者の少なくとも識別子と、第1の通信当事者から第2の通信当事者へ転送すべき情報とを含むデータセットを作成するステップと、
    前記第1の通信当事者の識別子に関連する前記作成済みのデータセットに基づいて暗号計算を実行して、問題インスタンスを導き出すステップと、
    前記導き出された問題インスタンスの解を求めるステップと、
    前記問題インスタンスの解を求めるため、信頼できる関係の確立の目的に限られる作業証明を生成するステップと、
    前記データ及び前記作業証明を前記第2の通信当事者に転送するステップと、
    を実行するためのソフトウェアコード部を含む、
    ことを特徴とするコンピュータプログラム製品。
  32. コンピュータ可読媒体上で具現化され、且つ通信システムにおいて通信装置のデジタル処理手段のメモリにロード可能なコンピュータプログラム製品であって、前記コンピュータプログラム製品が、
    前記デジタル処理手段上で実行されたときに、
    前記第1の通信当事者から受信した問題インスタンスに対する解を得るため、前記信頼できる関係の確立の目的に限られる作業証明を、2つの通信当事者の少なくとも識別子と第1の通信当事者から第2の通信当事者へ転送すべき情報とを含むデータと共に検証するステップと、
    前記検証ステップが肯定の結果をもたらす場合、前記信頼できる関係を得るためのセッション・オブジェクトを生成して、これを前記第1の通信当事者に送信するステップと、
    を実行するためのソフトウェアコード部を含む、
    ことを特徴とするコンピュータプログラム製品。
JP2008520029A 2005-07-07 2006-05-11 未知の通信当事者間における信頼できる関係の確立 Abandoned JP2008545353A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP05014787 2005-07-07
US11/237,881 US8132005B2 (en) 2005-07-07 2005-09-29 Establishment of a trusted relationship between unknown communication parties
PCT/IB2006/051481 WO2007007214A1 (en) 2005-07-07 2006-05-11 Establishment of a trusted relationship between unknown communication parties

Publications (1)

Publication Number Publication Date
JP2008545353A true JP2008545353A (ja) 2008-12-11

Family

ID=37619574

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008520029A Abandoned JP2008545353A (ja) 2005-07-07 2006-05-11 未知の通信当事者間における信頼できる関係の確立

Country Status (7)

Country Link
US (1) US8132005B2 (ja)
EP (1) EP1900141B1 (ja)
JP (1) JP2008545353A (ja)
KR (1) KR100956482B1 (ja)
CN (1) CN101243643B (ja)
TW (1) TW200704097A (ja)
WO (1) WO2007007214A1 (ja)

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8321955B2 (en) * 2003-08-26 2012-11-27 Wu-Chang Feng Systems and methods for protecting against denial of service attacks
US8874477B2 (en) 2005-10-04 2014-10-28 Steven Mark Hoffberg Multifactorial optimization system and method
CN101572614B (zh) 2009-06-12 2013-12-04 阿里巴巴集团控股有限公司 一种社会化网络中处理认证请求消息的方法及装置
US9524345B1 (en) 2009-08-31 2016-12-20 Richard VanderDrift Enhancing content using linked context
US8799754B2 (en) * 2009-12-07 2014-08-05 At&T Intellectual Property I, L.P. Verification of data stream computations using third-party-supplied annotations
US9639707B1 (en) 2010-01-14 2017-05-02 Richard W. VanderDrift Secure data storage and communication for network computing
TWI459749B (zh) 2010-12-27 2014-11-01 Ind Tech Res Inst 數位資訊編碼方法、解碼方法、資訊傳播裝置及資訊管理裝置
US8880880B2 (en) * 2011-07-29 2014-11-04 Qualcomm Incorporated Facilitating access control in peer-to-peer overlay networks
US9495668B1 (en) * 2013-05-10 2016-11-15 EMC IP Holding Company LLC Computing solutions to a problem involving inversion of a one-way function
JP6283180B2 (ja) * 2013-08-08 2018-02-21 株式会社ニューフレアテクノロジー 荷電粒子ビーム描画装置及び荷電粒子ビーム描画方法
DE102014205331A1 (de) * 2014-03-21 2015-09-24 Siemens Aktiengesellschaft Sender zum Senden einer Nachricht und Empfänger zum Empfangen einer Nachricht
US10565588B2 (en) * 2015-03-12 2020-02-18 International Business Machines Corporation Cryptographic methods implementing proofs of work in systems of interconnected nodes
US9930027B2 (en) 2015-03-27 2018-03-27 Amazon Technologies, Inc. Authenticated messages between unmanned vehicles
US9714088B2 (en) * 2015-03-27 2017-07-25 Amazon Technologies, Inc. Unmanned vehicle rollback
US9663226B2 (en) 2015-03-27 2017-05-30 Amazon Technologies, Inc. Influencing acceptance of messages in unmanned vehicles
US9912655B2 (en) 2015-03-27 2018-03-06 Amazon Technologies, Inc. Unmanned vehicle message exchange
SG11201708000PA (en) 2015-03-31 2017-10-30 Nasdaq Inc Systems and methods of blockchain transaction recordation
US10015017B2 (en) * 2015-04-09 2018-07-03 Qualcomm Incorporated Proof of work based user identification system
DE102015211566B4 (de) * 2015-06-23 2017-03-16 Siemens Aktiengesellschaft Verfahren, Komponente und Computerprogrammprodukt zum Bestimmen eines abgeleiteten Schlüssels
AU2016288644A1 (en) 2015-07-02 2018-02-22 Nasdaq, Inc. Systems and methods of secure provenance for distributed transaction databases
US20230125560A1 (en) * 2015-12-20 2023-04-27 Peter Lablans Cryptographic Computer Machines with Novel Switching Devices
US10262164B2 (en) 2016-01-15 2019-04-16 Blockchain Asics Llc Cryptographic ASIC including circuitry-encoded transformation function
GB2560587A (en) * 2017-03-17 2018-09-19 Univ Oxford Innovation Ltd Secure data exchange
US10372943B1 (en) 2018-03-20 2019-08-06 Blockchain Asics Llc Cryptographic ASIC with combined transformation and one-way functions
US10404454B1 (en) 2018-04-25 2019-09-03 Blockchain Asics Llc Cryptographic ASIC for derivative key hierarchy
US20190332814A1 (en) * 2018-04-27 2019-10-31 Nxp B.V. High-throughput privacy-friendly hardware assisted machine learning on edge nodes
US10715471B2 (en) * 2018-08-22 2020-07-14 Synchronoss Technologies, Inc. System and method for proof-of-work based on hash mining for reducing spam attacks
US11374771B2 (en) * 2019-03-08 2022-06-28 Ares Technologies, Inc. Methods and systems for implementing mixed protocol certificates
EP3959637A1 (en) * 2019-04-24 2022-03-02 Sony Group Corporation Blockchain-based crowdsourcing
US11558195B2 (en) 2020-02-06 2023-01-17 Ford Global Technologies, Llc Proof-of-work vehicle message authentication
US11272363B2 (en) 2020-03-25 2022-03-08 Nxp B.V. Authentication method in a communication system
US11949795B2 (en) 2021-08-27 2024-04-02 Bank Of America Corporation System for tracking resources using non-fungible tokens
US11882219B2 (en) 2021-09-02 2024-01-23 Bank Of America Corporation System for dynamically tracking resources using non-fungible tokens
US11902443B2 (en) 2021-09-08 2024-02-13 Bank Of America Corporation System for linking and partitioning non-fungible tokens
US11811931B2 (en) 2021-09-15 2023-11-07 Bank Of America Corporation System for real-time assessment of authenticity of a resource using non-fungible tokens
US11902444B2 (en) 2021-10-18 2024-02-13 Bank Of America Corporation System for virtualization of non-fungible tokens
US11893587B2 (en) 2021-12-10 2024-02-06 Bank Of America Corporation System for enhanced authentication using non-fungible tokens (NFTs)
US11983529B2 (en) 2022-01-18 2024-05-14 Bank Of America Corporation System for detection and recordation of functional code logic components on a distributed development platform
US11966915B2 (en) 2022-02-03 2024-04-23 Bank Of America Corporation System for tracking and tagging communication using electronic non-fungible resources within a distributed network
US11860862B2 (en) 2022-02-09 2024-01-02 Bank Of America Corporation System for identification and recordation of base components of a resource within a virtual medium

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69127965T2 (de) * 1990-08-29 1998-02-12 Hughes Aircraft Co Verteiltes benutzerauthentisierungsprotokoll
US5315658B1 (en) * 1992-04-20 1995-09-12 Silvio Micali Fair cryptosystems and methods of use
US5299263A (en) * 1993-03-04 1994-03-29 Bell Communications Research, Inc. Two-way public key authentication and key agreement for low-cost terminals
US5724425A (en) * 1994-06-10 1998-03-03 Sun Microsystems, Inc. Method and apparatus for enhancing software security and distributing software
US5815665A (en) * 1996-04-03 1998-09-29 Microsoft Corporation System and method for providing trusted brokering services over a distributed network
US6226383B1 (en) * 1996-04-17 2001-05-01 Integrity Sciences, Inc. Cryptographic methods for remote authentication
US6088450A (en) * 1996-04-17 2000-07-11 Intel Corporation Authentication system based on periodic challenge/response protocol
US6073237A (en) * 1997-11-06 2000-06-06 Cybercash, Inc. Tamper resistant method and apparatus
GB9802152D0 (en) * 1998-01-30 1998-04-01 Certicom Corp Secure one way authentication communication system
US7197639B1 (en) * 1999-02-05 2007-03-27 Rsa Security Inc. Cryptographic countermeasures against connection depletion attacks
US6428155B1 (en) * 1999-05-25 2002-08-06 Silverbrook Research Pty Ltd Printer cartridge including machine readable ink
US6886102B1 (en) * 1999-07-14 2005-04-26 Symantec Corporation System and method for protecting a computer network against denial of service attacks
US7356696B1 (en) * 2000-08-01 2008-04-08 Lucent Technologies Inc. Proofs of work and bread pudding protocols
WO2002057865A2 (en) * 2001-01-17 2002-07-25 Contentguard Holdings, Inc. System and method for digital rights management using a standard rendering engine
US20020157004A1 (en) * 2001-02-15 2002-10-24 Smith Ned M. Method of enforcing authorization in shared processes using electronic contracts
FR2826811B1 (fr) * 2001-06-27 2003-11-07 France Telecom Procede d'authentification cryptographique
US7137004B2 (en) * 2001-11-16 2006-11-14 Microsoft Corporation Manifest-based trusted agent management in a trusted operating system environment
GB2384402B (en) * 2002-01-17 2004-12-22 Toshiba Res Europ Ltd Data transmission links
US6944663B2 (en) * 2002-03-06 2005-09-13 Sun Microsystems, Inc. Method and apparatus for using client puzzles to protect against denial-of-service attacks
US8046832B2 (en) * 2002-06-26 2011-10-25 Microsoft Corporation Spam detector with challenges
US7069438B2 (en) * 2002-08-19 2006-06-27 Sowl Associates, Inc. Establishing authenticated network connections
US7149801B2 (en) * 2002-11-08 2006-12-12 Microsoft Corporation Memory bound functions for spam deterrence and the like
US7305705B2 (en) * 2003-06-30 2007-12-04 Microsoft Corporation Reducing network configuration complexity with transparent virtual private networks
US20050080858A1 (en) * 2003-10-10 2005-04-14 Microsoft Corporation System and method for searching a peer-to-peer network
KR20050050257A (ko) * 2003-11-25 2005-05-31 엘지엔시스(주) 데이터 통신 암호화 방법
US7600255B1 (en) * 2004-04-14 2009-10-06 Cisco Technology, Inc. Preventing network denial of service attacks using an accumulated proof-of-work approach

Also Published As

Publication number Publication date
TW200704097A (en) 2007-01-16
WO2007007214A1 (en) 2007-01-18
EP1900141B1 (en) 2013-11-20
KR100956482B1 (ko) 2010-05-07
US8132005B2 (en) 2012-03-06
EP1900141A1 (en) 2008-03-19
US20070011453A1 (en) 2007-01-11
KR20080025202A (ko) 2008-03-19
CN101243643B (zh) 2011-02-09
CN101243643A (zh) 2008-08-13

Similar Documents

Publication Publication Date Title
JP2008545353A (ja) 未知の通信当事者間における信頼できる関係の確立
CN107948189B (zh) 非对称密码身份鉴别方法、装置、计算机设备及存储介质
US8670563B2 (en) System and method for designing secure client-server communication protocols based on certificateless public key infrastructure
KR100842267B1 (ko) 다중 인증 수단을 가지는 시스템의 통합 사용자 인증 서버,클라이언트 및 방법
CN110020524B (zh) 一种基于智能卡的双向认证方法
JP2020532928A (ja) デジタル署名方法、装置及びシステム
CN112351037B (zh) 用于安全通信的信息处理方法及装置
CN112468490B (zh) 一种用于电网终端层设备接入的认证方法
Khan et al. Resource efficient authentication and session key establishment procedure for low-resource IoT devices
Zhang et al. Authentication methods for internet of vehicles based on trusted connection architecture
Ashraf et al. Robust and lightweight symmetric key exchange algorithm for next-generation IoE
Heninger RSA, DH, and DSA in the Wild
CN113098681B (zh) 云存储中口令增强且可更新的盲化密钥管理方法
KR101131929B1 (ko) 공개키 기반 인증장치 및 방법
CN111245611B (zh) 基于秘密共享和可穿戴设备的抗量子计算身份认证方法及系统
CN117155564A (zh) 一种双向加密认证系统及方法
KR20080005344A (ko) 인증서버가 사용자단말기를 인증하는 시스템
Chen et al. An anonymous authentication scheme with the enhanced security for wireless communications
CN113014376B (zh) 一种用户与服务器之间安全认证的方法
JP5004086B2 (ja) 短い系列を用いた認証システム
CN113918971A (zh) 基于区块链的消息传输方法、装置、设备及可读存储介质
CN109218016B (zh) 数据传输方法及装置、服务器、计算机设备和存储介质
Yap et al. On the security of a lightweight authentication and encryption scheme for mobile ad hoc network
Cheng et al. Secure session between an IoT device and a cloud server based on elliptic curve cryptosystem
Chen et al. Public key authentication schemes for local area networks

Legal Events

Date Code Title Description
A762 Written abandonment of application

Free format text: JAPANESE INTERMEDIATE CODE: A762

Effective date: 20100730