"データ通信システムにおける第1の通信部と第2の通信部との間での対称鍵の合意の方法であって、該第1の通信部および該第2の通信部は、それぞれ、マスター鍵Kを有し、該方法は、該第1の通信部が第1の値Xを生成し、該第1の値Xを該第2の通信部に提供するステップと、該第2の通信部が第2の値Yを生成し、該第1の値Xと該第2の値Yとの組み合わせにおいて鍵付き暗号関数を作用させることによって、共有鍵kを計算するステップであって、該第2の通信部は、該マスター鍵Kを、該鍵付き暗号関数に対する入力として用い、該第2の通信部により計算された該共有鍵kは、鍵付きハッシュ関数に対する入力として用いられ、該鍵付きハッシュ関数は、該第1の値X、該第2の値Y、ならびに該第1の通信部および該第2の通信部のうちの一方の識別情報の組み合わせにおいて作用させるためのものである、ステップと、該第2の通信部が該第2の値Yを該第1の通信部に提供するステップと、該第1の通信部が、該第1の値Xと該第2の値Yとの組み合わせにおいて該鍵付き暗号関数を作用させることによって、該共有鍵kを計算するステップであって、該第1の通信部は、該マスター鍵Kを、該鍵付き暗号関数に対する入力として用い、該第1の通信部により計算された該共有鍵kは、該鍵付きハッシュ関数に対する入力として用いられる、ステップとを包含する、方法。前記第2の通信部が、第1のハッシュ値を生成するために、前記第1の値X、前記第2の値Y、ならびに前記第1の通信部および該第2の通信部のうちの一方の識別情報の組み合わせに、前記鍵付きハッシュ関数を適用するステップであって、該第2の通信部は、該第2の通信部によって計算された前記共有鍵kを、該鍵付きハッシュ関数に対する入力として用いる、ステップと、該第2の通信部が、該第1のハッシュ値を該第1の通信部に提供するステップと、該第1の通信部が、第2のハッシュ値を生成するために、該第1の値X、該第2の値Y、ならびに該第1の通信部および該第2の通信部のうちの該一方の該識別情報の組み合わせに、該鍵付きハッシュ関数を適用するステップであって、該第1の通信部は、該第1の通信部によって計算された該共有鍵kを、該鍵付きハッシュ関数に対する入力として用いる、ステップと、該第1の通信部が、該第1のハッシュ値が該第2のハッシュ値に等しいことを検証するステップとをさらに包含する、請求項1に記載の方法。前記第1の通信部が、第3のハッシュ値を生成するために、前記第1の値X、前記第2の値Y、ならびに該第1の通信部および前記第2の通信部のうちのもう一方の識別情報の組み合わせに、前記鍵付きハッシュ関数を適用するステップであって、該第1の通信部は、該第1の通信部によって計算された前記共有鍵kを、該鍵付きハッシュ関数に対する入力として用いる、ステップと、該第1の通信部が、該第3のハッシュ値を該第2の通信部に提供するステップと、該第2の通信部が、第4のハッシュ値を生成するために、該第1の値X、該第2の値Y、ならびに該第1の通信部および該第2の通信部のうちの該もう一方の該識別情報の組み合わせに、該鍵付きハッシュ関数を適用するステップであって、該第2の通信部は、該第2の通信部によって計算された該共有鍵kを、該鍵付きハッシュ関数に対する入力として用いる、ステップと、該第2の通信部が、該第3のハッシュ値が該第4のハッシュ値に等しいことを検証するステップとをさらに包含する、請求項2に記載の方法。前記第1のハッシュ値および前記第2のハッシュ値は、それぞれ、hkY∥X∥IdAの形態であり、前記第3のハッシュ値および前記第4のハッシュ値は、それぞれ、hkX∥Y∥IdBの形態であり、hは前記鍵付きハッシュ関数であり、IdAは、前記第1の通信部および前記第2の通信部のうちの前記一方の前記識別情報であり、IdBは、該第1の通信部および該第2の通信部のうちの前記もう一方の前記識別情報である、請求項3に記載の方法。前記第1の値Xは、前記第1の通信部によって生成されたランダムな整数であり、前記第2の値Yは、前記第2の通信部によって生成されたランダムな整数である、請求項1~4のいずれかに記載の方法。前記鍵付き暗号関数は別の鍵付きハッシュ関数である、請求項1~5のいずれかに記載の方法。前記鍵付き暗号関数は前記鍵付きハッシュ関数である、請求項1~5のいずれかに記載の方法。前記共有鍵kは、hkX∥Yの形態である、請求項6または7に記載の方法。データ通信システムにおける第1の通信部と第2の通信部との間での対称鍵の合意の方法であって、該第1の通信部および該第2の通信部は、それぞれ、マスター鍵Kを有し、該方法は、該第1の通信部が、第1の値Xを生成し、該第1の値Xを該第2の通信部に提供するステップと、該第1の通信部が、該第2の通信部によって生成された第2の値Yを取得するステップと、該第1の通信部が、該第1の値Xと該第2の値Yとの組み合わせにおいて鍵付き暗号関数を作用させることによって、共有鍵kを計算するステップであって、該第1の通信部は、該マスター鍵Kを、該鍵付き暗号関数に対する入力として用い、該第1の通信部により計算された該共有鍵kは、鍵付きハッシュ関数に対する入力として用いられ、該鍵付きハッシュ関数は、該第1の値X、該第2の値Y、ならびに該第1の通信部および該第2の通信部のうちの一方の識別情報の組み合わせにおいて作用させるためのものであり、該共有鍵kは、また、該マスター鍵Kを該鍵付き暗号関数に対する入力として用いることによって、該第1の値Xおよび該第2の値Yの該組み合わせにおいて、該第2の通信部が該鍵付き暗号関数を作用させることによって、該第2の通信部によって計算可能であり、該第2の通信部により計算可能な該共有鍵kは、また、該鍵付きハッシュ関数に対する入力として該第2の通信部によって用いることが可能である、ステップとを包含する、方法。前記第1の通信部が、前記第2の通信部から第1のハッシュ値を受信するステップであって、該第1のハッシュ値は、該第2の通信部が、該第2の通信部により計算された前記共有鍵kを用いて、前記第1の値X、前記第2の値Y、ならびに前記第1の通信部および該第2の通信部のうちの一方の識別情報の組み合わせに前記鍵付きハッシュ関数を適用することによって、該第2の通信部により計算される、ステップと、該第1の通信部が、第2のハッシュ値を生成するために、該第1の値X、該第2の値Y、ならびに該第1の通信部および該第2の通信部のうちの該一方の該識別情報の組み合わせに、該鍵付きハッシュ関数を適用するステップであって、該第1の通信部は、該第1の通信部によって計算された該共有鍵kを、該鍵付きハッシュ関数に対する入力として用いる、ステップと、該第1の通信部が、該第1のハッシュ値が該第2のハッシュ値に等しいことを検証するステップとをさらに包含する、請求項9に記載の方法。前記第1の通信部が、第3のハッシュ値を生成するために、前記第1の値X、前記第2の値Y、ならびに該第1の通信部および前記第2の通信部のうちのもう一方の識別情報の組み合わせに、前記鍵付きハッシュ関数を適用するステップであって、該第1の通信部は、該第1の通信部によって計算された前記共有鍵kを、該鍵付きハッシュ関数に対する入力として用いる、ステップと、該第1の通信部が、検証のために該第3のハッシュ値を該第2の通信部に提供するステップであって、これにより、該第2の通信部は、第4のハッシュ値を生成するために該第2の通信部により計算された該共有鍵kを用いて、該第1の値X、該第2の値Y、ならびに該第1の通信部および前記第2の通信部のうちの該もう一方の該識別情報の組み合わせに、該鍵付きハッシュ関数を適用することによって、該第3のハッシュ値を検証し、次いで、該第3のハッシュ値が該第4のハッシュ値に等しいことを検証することが可能である、ステップとをさらに包含する、請求項10に記載の方法。前記第2のハッシュ値は、hkY∥X∥IdAの形態であり、前記第3のハッシュ値は、hkX∥Y∥IdBの形態であり、hは前記鍵付きハッシュ関数であり、IdAは、前記第1の通信部および前記第2の通信部のうちの前記一方の前記識別情報であり、IdBは、該第1の通信部および該第2の通信部のうちの前記もう一方の前記識別情報である、請求項11に記載の方法。前記第1の値Xは、前記第1の通信部によって生成されたランダムな整数である、請求項9~12のいずれかに記載の方法。前記鍵付き暗号関数は別の鍵付きハッシュ関数である、請求項9~13のいずれかに記載の方法。前記鍵付き暗号関数は前記鍵付きハッシュ関数である、請求項9~13のいずれかに記載の方法。前記共有鍵kは、hkX∥Yの形態である、請求項14または15に記載の方法。前記鍵付きハッシュ関数は暗号ハッシュ関数である、請求項1~16のいずれかに記載の方法。第1の通信部と第2の通信部とを含むシステムであって、該第1の通信部と該第2の通信部とは、共に、請求項1~8のいずれかに記載の方法を実行するように構成されている、システム。請求項9~16のいずれかに記載の方法を実行するように構成されている暗号ユニットを有する通信部。請求項9~16のいずれかに記載の方法を実行する複数のコンピュータ読み取り可能命令を格納したコンピュータ読み取り可能媒体。上記および関連するプロトコルは、鍵確立に十分で従来の盗聴者あるいは途中に介在する者の攻撃に強い、と考えられていた。いくつかの状況では、敵が、第2の通信者の真実の同一性に関して1つの通信者を誤解させることが有利かもしれない。そのような攻撃では、活動的な敵、即ち、途中介在者interloperEは、AとBの間で交換されるメッセージを修正すると、その結果として、Bは、彼がEと鍵Kを共有すると信じ、一方で、AがBと同じ鍵Kを共有すると信じる。たとえEがKの値を知らないとしても、通信者の同一性に関する偽の情報は有用となり得る。そのような攻撃が成功裡に始められるかもしれない場合、実際的なシナリオは下記である。Bが銀行支店で、Aが口座所有者である、と仮定する。証明書は銀行本部によって出され、証明書内には、所有者の口座情報がある。資金の電子預金用のプロトコルは、相互に認証された鍵合意によって銀行支店で鍵を交換することであると仮定する。一旦Bが送信するものを認証したならば、暗号化された資金は証明書にある口座番号に預け入れられる。それ以上、認証が、暗号化された預金メッセージ帯域幅を保存するその場合かもしれない中でそのとき行われなければ、預金はEの口座に為されるだろう。従って、上記の損失が除去される、或いは軽減されるプロトコルを提供することが本発明の目的である。よって、本発明によれば、通信者A,Bの組の間で認証する方法であって、その間で情報の交換を可能にする方法であり、前記通信者の各々は、それぞれの秘密鍵a,bと、これらの秘密鍵の各々と生成元器generatorαから得られる公開鍵pAとpBとを持ち、下記のステップを含む方法が提供される。iはじめに第1の通信者が、第1の無作為の整数xを選択し、前記生成元を含む関数fを指数gxでべき乗して、第1のべき乗された指数関数fgxを提供するステップ。ii前記第1の通信者Aが、前記第1の指数関数fgxを含むメッセージを第2の通信者Bへ移送するステップ。iii前記通信者Bが、第2の無作為の整数yを選択し、前記生成元を含む関数fを指数gyでべき乗して、第2のべき乗された指数関数fgyを提供するステップ。iv前記第2の通信者Bが、前記第1の通信者Aによって公開された情報と、前記第2の通信者Bの秘密即ちBだけが知る私用の情報とからセッション鍵Kを構築するステップであり、また、このセッション鍵が、前記第1の通信者Aによっても、Bによって公開された情報と、前記第1の通信者Aの秘密の情報のために構築されるステップ。v前記第2の通信者Bが、関数の値hを生成するステップ但し、関数はとKとを共に用いた暗号関数であり、はBによって与えられた公開情報のサブセット、即ち部分集合であり、これによってとKの値を結びつける。vi前記第2の通信者Bが、前記第1の通信者Aに、前記第2の指数関数fgyと、関数の値hとをを含むメッセージを移送するステップ。vii前記第1の通信者が、前記メッセージを受取り、前記第1の通信者の秘密と、前記第2の通信者Bによって公開されたものによる情報からセッション鍵K’を計算するステップ。viii前記第1の通信者Aが、暗号関数の値h’を計算するステップ。ixこれらの通信を検証即ち、認証するために、前記暗号関数Fから得られた前記値を比較するステップ。セッション鍵Kが、AかBのいずれかに秘密の情報を使ってのみ生成させることができるため、Kをと暗号関数hとに結合することによって、EがKを抽出すること、或いは、Aによって得られるものと一致させるような新たな値の関数を差し挟むことを防止する。本発明は、例えば、以下を提供する。項目1データ通信システムで第1および第2の通信者を認証する方法において、a前記第1の通信者が、第1の値GAを生成し、前記第1の値を前記第2の通信者に送出するステップと、b前記第2の通信者が、第2の値GBを生成するステップと、c前記通信者が各々、共有鍵Kを得るステップと、d前記第2の通信者が、前記第1の通信者の識別情報および前記第1および第2の値の第1の鍵付きハッシュを計算するステップであって、前記第1の鍵付きハッシュが前記共有鍵Kを使用するステップと、e前記第2の通信者が、前記第1の鍵付きハッシュ、前記識別情報、および前記第2の値を、前記第1の通信者に送出するステップと、f前記第1の通信者が、前記第1の通信者の識別情報、および前記第1および第2の値の第1の検証鍵付きハッシュを計算するステップであって、前記第1の検証鍵付きハッシュが前記共有鍵Kを使用するステップと、g前記第1の通信者が、前記第1の鍵付きハッシュが前記第1の検証鍵付きハッシュと同じであることを検証するステップと、を含む方法。項目2項目1に記載の方法において、h前記第1の通信者が、前記第2の通信者の識別情報、および、前記第1および第2の値の第2の鍵付きハッシュを計算するステップであって、前記第2の鍵付きハッシュが前記共有鍵Kを使用するステップと、i前記第1の通信者が、前記第2の通信者の前記識別情報および前記第2の鍵付きハッシュを前記第2の通信者に送出するステップと、j前記第2の通信者が、前記第2の通信者の識別情報および前記第1および第2の値の第2の検証鍵付きハッシュを計算するステップであって、前記第2の鍵付きハッシュが前記共有鍵Kを使用するステップと、k前記第2の通信者が、前記第2の検証鍵付きハッシュが前記第2の鍵付きハッシュと同じであるかを検証するステップと、をさらに含むことを特徴とする方法。項目3データ通信システムで第1の通信者と第2の通信者との間で認証された鍵の合意の方法であって、前記通信者の各々は公開鍵暗号システムにおける公開鍵と秘密鍵とのペアを有し、前記方法が、a前記第1の通信者が、第1の値GAを生成し、この第1の値を前記第2の通信者に送出するステップと、b前記第2の通信者が、第2の値GBを生成するステップと、c前記通信者の各々は、自分だけの秘密である情報および他の通信者に公開されている情報から共有鍵Kを計算するステップと、d前記第2の通信者が、前記第1の通信者の識別情報および前記第1および第2の値の第1の鍵付きハッシュを計算するステップであって、前記鍵付きハッシュが前記共有鍵Kを使用するステップと、e前記2の通信者が、前記第1の鍵付きハッシュ、前記識別情報、および、前記第2の値を前記第1の通信者に送出するステップと、f前記第1の通信者が、前記第1の通信者の識別情報、前記第1および第2の値の第1の検証鍵付きハッシュを計算するステップであって、前記検証鍵付きハッシュが前記共有鍵Kを使用するステップと、g前記第1の通信者が、前記第1の鍵付きハッシュが前記第1の検証鍵付きハッシュと同じであるかを検証するステップと、を含む方法。項目4項目1に記載の方法において、h前記第1の通信者が、前記第2の通信者の識別情報、前記第1および第2の値の第2の鍵付きハッシュを計算するステップであって、前記第2の鍵付きハッシュが前記共有鍵Kを使用するステップと、i前記第1の通信者が、前記第2の鍵付きハッシュ、および、前記第2の通信者の識別情報を前記第2の通信者に送出するステップと、j前記第2の通信者が、前記第2の通信者の識別情報、および、前記第1および第2の値の第2の検証鍵付きハッシュを計算するステップであって、前記第2の鍵付きハッシュが共有鍵Kを使用するステップと、k前記第2の通信者が、前記第2の検証鍵付きハッシュが前記第2の鍵付きハッシュと同じであるかを検証するステップと、をさらに含むことを特徴とする方法。項目5項目1,2,3,4のいずれか1項に記載の方法を実装する暗号ユニット。したがって、図1を参照すると、通信者A、通信者Bのペアは、通信チャネル14を介して情報を交換する。暗号ユニット16および18は、通信者10、12の各々と、チャネル14との間に置かれる。鍵20は、各ユニット1618とそれぞれの通信者1012との間で運ばれる平文を変換して、チャネル14で運ばれる暗号文にするために、暗号ユニット16および18の各々に関連付けられる。操作においては、通信者Aによって生成されたメッセージは、鍵20を備えたユニット16によって暗号化され、ユニット18にチャネル14上、暗号テキスト暗文として送信される。鍵20はユニット18の暗号テキストを操作して、通信者Bのために平文メッセージを生成する。鍵20が通信者に与えられている場合には、通信者12が受け取ったメッセージは通信者10によって送られたものに変換される。図1で示したシステムが作動するためには、それぞれの鍵20は同一のもにする必要があり、したがって、同一の鍵を確立するたに、公開された方法で情報の移送を可能にする鍵合意共有プロトコルは確立される。その実装を、図2-図7に図解で示す。図2を参照して、相互公開鍵認証鍵合意プロトコルは、図の左側に示された、通信者Aと、右側に示された通信者Bの間で補間しあうものである。通信者Aは、公開-秘密私用鍵のペア、PA、SAををそれぞれ持ち、同様に通信者Bは、公開-秘密私用鍵のペア、PB、SBををそれぞれ持つ。最初に、通信者Aは乱数RNDAとしてセッション秘密鍵を生成し、対応する公開セッション鍵GAFを計算する。関数FAは、暗号の一方向性関数であり、典型的には、楕円暗号系のポイント乗算のような集合の生成元器による指数である。公開セッション鍵GAは、セッション秘密鍵RNDBおよび公開セッション鍵GBの対応するパラメーターを生成する通信者Bへ移送される。通信者Bは、Aの公開情報GA、PAと、Bの秘密情報RNDB、SBの関数としてセッション鍵Kを計算する。対応する鍵Kは、Aの秘密プライベート情報およびBの公開情報の公開情報を使用して、Aによって計算することができる。通信者Bが鍵Kを生成した後、彼はストリング文字列をコンパイル、即ち1つにまとめるが、ここで、IdAはAを識別するストリングである。この連結されたストリングは、ストリングhashBを生成するために鍵Kを使用する、鍵付きハッシュ関数である暗号関数hkでハッシュされる。ストリングhashBはIdAとGBと共に通信者Aに移送される。Bからのメッセージを受けて、通信者Aは、上述したように鍵Kを計算する。通信者Aは、さらに、鍵Kによる鍵が付いたハッシュ関数を使用して、ストリングからハッシュhashverifiyBを計算する。通信者Aは、ハッシュを検証して鍵K、Kの同一性が確認証明できるかどうかを検査する。その後、通信者Aは、ストリングにおいて鍵Kを使用して、ハッシュhK’を計算し、通信者BのIdBと一緒のそれを移送する。同様に、通信者Bは、同じストリング上で、鍵Kを使用する鍵付きハッシュ関数hKを使用して、hashverifyAを計算し、hashAhashverifiyAであるかを検証する。図3に相互の実体認証プロトコルを実装するための同様のプロトコルを示す。このプロトコルでは、通信者は、安全なチャネルを介して得られた鍵Kを共有する。通信者A、Bは、各々、AとBのセッション公開鍵としてそれぞれ使用される無作為ランダムなの整数を生成する。その後、鍵付きハッシュ関数で利用されている共有秘密鍵と共に図2に示したように、情報交換と検証が進む。十分な相互公開鍵認証鍵交換プロトコルを図4に示す。信頼を認証されたチャネルを介した公開鍵PA、PBの最初の交換が行われた後に、図4のプロトコル中で示されるような情報交換が続く。この場合、通信者Aは、AがBによる受信を確認することと所望するストリングx2と一緒に、図2を参照して説明したように計算されたGAを送信する。通信者Bは図2のような鍵Kを計算し、ペアのストリングy1y2を生成するが、これらのストリングは、Bが、Aによって認証されること、および、Aによって受信されたことを確認検証することを所望するものである。これらのストリングは、ハッシュhashBと識別情報IdAと共に、Aに送信される。ハッシュhashBは、認証されるべきストリングy1とメッセージx2とを含むストリング上で実施される。通信者Aは鍵Kを計算し、ハッシュが前のものと同じであるか検証する。これは、また、Bによるx2の受領を確認検証する。通信者Aは、次に、ストリングz1z2を生成し、ここで、z1は、AがBによって認証されることを所望するようなストリング文字列であり、z2は、後で述べるプロトコルの後続の実行によって使用することができるようなストリングである。Bの識別情報IdBと一緒のストリングz1およびy2は、ストリングhashAを提供するために鍵Kでハッシュされるストリングに含まれている。これは、ストリングz1z2およびBの識別情報と共に、ハッシュが前のものであるのかを検証するものである通信者Bに送信され、これによって、通信者Aによる、z1の認証およびy2の受信を確認する。したがって、情報は、認証された仕組みで交換され、得られた共通鍵は、安全なチャネル上での後続の通信の交換を可能にする。図4で説明したプロトコルを用いて、ストリングx2、yl、y2、zl、z2をすべて空のストリング文字列にすることによって、相互公開鍵認証鍵合意共有プロトコルを実装することが可能である。あるいは、暗黙の鍵を用いて相互公開鍵認証鍵合意プロトコルを、kの値を鍵Kと共に暗号関数Eに適用した結果であるEKを表わすと仮定されるストリングとしてx2を使用することによって実装することができる。通信者Bは、Kの値を計算することができ、よって、ストリングからkの名目上即ち理論上の値が取り出される。彼は、通信者Aと共に共有セッション鍵としてこれを使用することができる。ylの値は、EKとしてのz1およびEKを表わすために使用することができ、ここでk12、k21は、通信のための異なる鍵、即ち、通信者間で共有される他の秘密情報である。この場合、y2、Z2とが空のストリング文字列である。このように、通信者の間における鍵k21およびkl2の認証された鍵輸送と一緒に共有鍵KABについての鍵合意、および、kについての認証された鍵合意がなされる。さらに、追加情報がそのときストリングx2y2で提供される場合、適正な受信の確認も得られる。図4のプロトコルも、次のセッションの第1のパス中で交換される情報を渡すためにストリングz2を使用することにより、連続セッションの効率を増加させるために使用することもできる。したがって、図5で示すように、ストリングGA、x2は、前のセッションのz2として送られる。その後、以前のように、プロトコルは通信者Bから進行する。図5で見られるように、3番目の伝送は任意に省略することができる。通信者Bは、さらに、y2として交換に次のセッションのため情報GB、y1を含めることによりこの機能の利点を利用することもできる。相互公開鍵認証鍵合意プロトコルも、図6で示すような実体認証実装に適応することができる。この場合、図3でのように、通信者が安全なチャネル上で共有鍵を得たものであるとして、鍵生成が省略される。同様に、図5のそれと同様に、前のセッションにおける情報交換を利用するために図7で例示するように、図6のプロトコルを修正することもできる。従って、特別のニーズを満たすために一般的なプロトコルから多くの汎用で柔軟なプロトコルを開発し得ることがわかる。これらのプロトコルは、楕円曲線暗号手法を実装する、即ち、Zpで操作することができるようにすることが好適である。図3に示した公開鍵認証鍵合意プロトコルのメッセージフローと、図2で示した実体認証プロトコルのものとは同一の構造を持っていることが、容易に分るであろう。さらに、それの検証と同様に、通信者AおよびBによるハッシュ値hashAおよびhashBの計算も、それぞれ入力として同一の構造のストリングをとる。実際、両方のプロトコルは、プロトコルの中で使用される鍵Kを導出する方法だけにおいて異なる。したがって、両方のプロトコルを結合した実装は、メッセージ送受信、エラー処理、同様のものを含む通信フローの共通の取り扱いという利点を得ることができ、また鍵検証ステップの共通の取り扱いの利点を利用することもできる。同様の論法は、は、図4で示した公開鍵認証鍵合意プロトコルの公開鍵の処理ステップ、および、メッセージフロー、および図5に示したそれらのものの形式に適用できる。前者の一部だけの実行から、後者のものが形成されることが認識されるだろう。図4で示した公開鍵認証鍵合意プロトコルを用いて、図3に示したものを実装、即ち実行することができ、そして同様に、図6で示した拡張された実体認証プロトコルを用いて、図2に示したものを実装、即ち実行することができることに注意されたい。したがって、説明したプロトコルはすべて、これらプロトコルの全ておよび各々のプロトコルステップの実装実行のほとんど共通で通信テレコミュニケーションとメッセージフローを扱うための大規模な共通ルーチンで実装実施することができる本発明は、公開鍵ベースの合意プロトコルおよび実体認証プロトコルに言及しながら記述したが、それが対称な鍵合意プロトコル上で等しく利用することができることが認識されるであろう。そのような実施態様では、共有鍵Kの計算は、鍵付きハッシュ関数への1つの入力としてマスター鍵kmを使用して行なうことができる。暫定の鍵GAとGBとの結合は別の入力として使用され、結果として生じる出力は共有鍵Kとして使用される。そのような構成は図8に示してある。"