(57)【要約】【課題】　複数当事者契約を安全に送信及び確認するコンピュータシステム、コンピュータシステムにおける方法、コンピュータ読み取り可能な媒体を提供すること。【解決手段】　本方法、本コンピュータシステム、及び本コンピュータ読み取り可能な記憶媒体は、各当事者により、多者契約の見解を確認者に別々に作成及び送信することを含む。確認者は、その者を認証し、契約の見解が相互に合致するか否かを判定し、その比較結果をその者に通知する。【選択図】　図１
2004072777.tif 000002
【特許請求の範囲】
【請求項１】
　２者契約を安全に送信及び確認するコンピュータシステムであって、当該システムが：
　第１の者により操作され、前記２者契約の第１見解を作成及び送信する第１装置であって、前記第１見解が、暗号化された部分及び暗号化されていないプレインテキスト部分を包含するところの第１装置；
　第２の者により操作され、前記２者契約の第２見解を作成及び送信する第２装置であって、前記第２見解が、暗号化された部分及び暗号化されていないプレインテキスト部分を包含するところの第２装置；及び
　前記第１見解及び前記第２見解を受信し、前記第１見解の前記暗号化された部分及び前記第２見解の前記暗号化された部分の暗号化を解除し、第１見解が前記第１の者により作成されたこと、及び第２見解が前記第２の者により作成されたことを確認し、第１見解の暗号解除された部分と第２見解の暗号解除された部分を比較し、比較結果に基づいて信号を送信する、確認者側を形成する第３装置；
　を備えることを特徴とするコンピュータシステム。
【請求項２】
　前記第１装置が前記第１見解を前記第３装置に送信し且つ前記第２装置が前記第２見解を前記第３装置に別個に送信すること、又は前記第１装置が前記第１見解を前記第２装置に送信し、前記第２装置が前記第１見解及び前記第２見解を連結し且つ連結された見解を前記第３装置に送信することを特徴とする請求項１記載のコンピュータシステム。
【請求項３】
　前記第３装置が、前記第１見解の暗号解除された部分が前記契約に関して前記第２見解の暗号解除された部分に合致することを判定する場合に、又は前記第３装置が、前記第１見解の暗号解除された部分が前記契約に関して前記第２見解の暗号解除された部分に合致しないことを判定する場合に、前記第３装置が前記第１装置及び前記第２装置に応答を送信することを特徴とする請求項２記載のコンピュータシステム。
【請求項４】
　前記第１装置の見解の前記プレインテキスト部が、前記第１装置の装置識別子、及び前記第１装置の取引タイムスタンプを包含し、前記暗号化された部分が、契約に相当するデータ、及び前記第２装置の装置識別子を包含することを特徴とする請求項３記載のコンピュータシステム。
【請求項５】
　前記第３装置から前記第１装置への応答がプレインテキスト部分及び暗号化された部分を包含し、前記応答のプレインテキスト部分が、前記第１装置の装置識別子及び取引タイムスタンプを包含し、選択的に取引ＩＤを包含し、前記暗号化された部分が、契約に対する応答に相当するデータを包含し、前記第１装置の装置識別子、前記第２装置の装置識別子、取引ＩＤ、メッセージダイジェスト、取引タイムスタンプ、前記第１装置のユーザのユーザＩＤ及びパディングデータの内の１つ又はそれ以上を包含することを特徴とする請求項３記載のコンピュータシステム。
【請求項６】
　前記第２装置の見解の前記プレインテキスト部が、前記第２装置の装置識別子、及び前記第２装置の取引タイムスタンプを包含し、前記暗号化された部分が、契約に相当するデータ、及び前記第１装置の装置識別子を包含することを特徴とする請求項３記載のコンピュータシステム。
【請求項７】
　前記第３装置から前記第２装置への応答がプレインテキスト部分及び暗号化された部分を包含し、前記応答のプレインテキスト部分が、前記第２装置の装置識別子及び取引タイムスタンプを包含し、選択的に取引ＩＤを包含し、前記暗号化された部分が、契約に対する応答に相当するデータを包含し、前記第２装置の装置識別子、前記第１装置の装置識別子、取引ＩＤ、メッセージダイジェスト、取引タイムスタンプ、前記第２装置のユーザのユーザＩＤ及びパディングデータの内の１つ又はそれ以上を包含することを特徴とする請求項３記載のコンピュータシステム。
【請求項８】
　Ｎ者間の多者契約を安全に送信及び確認するコンピュータシステムであって、Ｎは２より大きく又は等しく、当該システムは：
　前記契約に関する者によりそれぞれ操作され、前記多者契約の見解を作成及び送信するＮ個の装置群であって、各見解が、暗号化された部分及び暗号化されていないプレインテキスト部分を包含するところの装置群；及び
　Ｎ人の契約者から見解を受信し、各見解の前記暗号化された部分の暗号化を解除し、各見解がそれに関連する契約者により作成されたことを確認し、Ｎ人の契約者からの暗号化された見解を比較し、比較結果に基づいて応答信号を送信する、確認者側を形成するＮ＋１番目の装置；
　を備えることを特徴とするコンピュータシステム。
【請求項９】
　２者契約を安全に送信及び確認するコンピュータシステムにおける方法であって：
　第１の者により操作される第１装置によって、前記２者契約の第１見解を作成及び送信するステップであって、前記第１見解が、暗号化された部分及び暗号化されていないプレインテキスト部分を包含するところのステップ；
　第２の者により操作される第２装置によって、前記２者契約の第２見解を作成及び送信するステップであって、前記第２見解が、暗号化された部分及び暗号化されていないプレインテキスト部分を包含するところのステップ；及び
　確認者側を形成する第３装置によって、前記第１見解及び前記第２見解を受信し、前記第１見解の前記暗号化された部分及び前記第２見解の前記暗号化された部分の暗号化を解除し、第１見解が前記第１の者により作成されたこと及び第２見解が前記第２の者により作成されたことを確認し、第１見解の暗号解除された部分と第２見解の暗号解除された部分を比較し、比較結果に基づいて信号を送信するステップ；
　より成ることを特徴とする方法。
【請求項１０】
　Ｎ者間の多者契約を安全に送信及び確認するコンピュータシステムにおける方法であって、Ｎは２より大きく又は等しく、当該方法は：
　前記契約に関する者によりそれぞれ操作されるＮ個の装置群によって、前記多者契約の見解を作成及び送信するステップであって、各見解が、暗号化された部分及び暗号化されていないプレインテキスト部分を包含するところのステップ；及び
　確認者側を形成するＮ＋１番目の装置によって、Ｎ人の契約者から見解を受信し、各見解の前記暗号化された部分の暗号化を解除し、各見解がそれに関連する契約者により作成されたことを確認し、Ｎ人の契約者からの暗号化された見解を比較し、比較結果に基づいて応答信号を送信するステップ；
　より成ることを特徴とする方法。
【発明の詳細な説明】
【技術分野】
【０００１】
　本発明は、コンピュータシステムに関し、特にリモートコンピュータ間の保全又はセキュア（ｓｅｃｕｒｅ）通信に関する。
【背景技術】
【０００２】
　暗号化及び暗号解除が同一の鍵又はキーを利用する対称的暗号化技法（ｓｙｍｍｅｔｒｉｃ　ｃｒｙｐｔｏｇｒａｐｈｉｃ　ｓｃｈｅｍｅｓ）（又はアルゴリズム）が当該技術分野でよく知られており、それは、鍵管理が容易であること、及び非対称暗号化技法に比べて演算的負担が小さいこと等のいくつかもの望ましい性質を有する。
【０００３】
　今日の多くの保全又はセキュリティ装置は、関連する公開鍵インフラストラクチャ（ＰＫＩ：Ｐｕｂｌｉｃ　Ｋｅｙ　Ｉｎｆｒａｓｔｒｕｃｔｕｒｅ）を利用する公開鍵システムのような非対称暗号化技法を使用し、それは当該技術分野で知られている。しかしながら、関連する技術分野におけるＰＫＩ（公開鍵インフラストラクチャ）システムは、そのインフラストラクチャの形成及び管理に特有のコスト（ｃｏｓｔ）を要する。それらのコストの具体例には、鍵の分配、管理及び保管が含まれる。
【０００４】
　ＰＫＩシステムで使用される非対称暗号化／暗号解除アルゴリズムは、比較的複雑な時間のかかる演算を含む。従って、それらは安価な小型移動計算装置には適切でなく、そのような装置では制限された演算資源（リソース）及びバッテリ電力しか利用できない。
【０００５】
　対称アルゴリズムは、非対称暗号化及び暗号解除よりも実質的に少ない電力消費で済む。対称的暗号化技法で通信する者は、一般的には同一の鍵を共有し、それは以後メッセージデータを暗号化及び暗号解除するためのパラメータとして彼らにより使用される。
【０００６】
　（関連技術）
　本願は、２００２年８月８日に米国特許商標庁に出願された、ヤニス・ラブロウ（Ｙａｎｎｉｓ　Ｌａｂｒｏｕ）、ルゥション・ジィ（Ｌｕｓｈｅｎｇ　Ｊｉ）及びジョナサン・アグレ（Ｊｏｎａｔｈａｎ　Ａｇｒｅ）による“ＭＥＴＨＯＤＳ　ＡＮＤ　ＡＰＰＡＲＡＴＵＳＥＳ　ＦＯＲ　ＳＥＣＵＲＥ　ＭＵＬＴＩ−ＰＡＲＴＹ　ＦＩＮＡＮＣＩＡＬ　ＴＲＡＮＳＡＣＴＩＯＮＳ（Ａ　ＵＮＩＶＥＲＳＡＬ　ＰＥＲＶＡＳＩＶＥ　ＴＲＡＮＳＡＣＴＩＯＮ　ＦＲＡＭＥＷＯＲＫ）”と題する米国仮出願番号６０／４０１，８０７の代理人管理番号１６３４．１００２Ｐに関連し、その全内容が参考に供される。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
　本発明は、上記問題に鑑みてなされたものであり、複数当事者契約を安全に送信及び確認するコンピュータシステム、コンピュータシステムにおける方法、コンピュータ読み取り可能な媒体を提供すること目的とする。
【課題を解決するための手段】
【０００８】
　本発明の一態様によれば、プレインテキストに対する暗号化／暗号解除を適用する場合にクライアント装置でほとんど計算を要しないことに加えて、鍵の暗号化／暗号解除に関して当該技術分野で既知のＰＫＩシステムよりも少ない管理負担しか要しない。
【０００９】
　本発明の他の態様によれば、対称暗号化に基づく他の一般的なセキュア通信システムと対比されるように、全体的なキーそれ自身を共有することなしに、キーを作成する新規な共有されるアルゴリズムが提供される。
【００１０】
　本発明の更なる態様によれば、グループ通信の真性（integrity）を保護する方法が提供されるが、グループメンバ内で共有される秘密鍵を前提とするものではない。本方法は、グループに属しない任意の者が、グループ通信に参加することを防止するだけでなく；グループ通信メンバの誰かが欠如したことをも検出する。
【００１１】
　本発明による保全契約締結プロトコル（ＳＡＳ）の更なる態様によれば、ＳＡＳメッセージの作成を行うことにより、確認者による高度の検出を行うことなしに、第三者はそのキー及びキー導出方法を把握することができなくなる。
【００１２】
　本発明は、第三者（確認者）が安全でない通信環境で、疑われ得る（ｄｉｓｔｒｕｓｔｉｎｇ）２者（契約者）の間で契約を確認する方法に関連する。本発明は、多数当事者契約方法に拡張され、確認者は、非保全通信環境で複数の（２以上の）不信な契約者の中で契約を確認する。
【００１３】
　本発明は、非保全通信環境における不信な契約者及び確認者の間で契約データ及び他の重要なメッセージを搬送する、計算的負担の軽いプロトコルであり、取引中に契約データが保護され、その契約データが矛盾無く示されるようにする。本発明によるプロトコルは、プライバシ、認証、ユーザ匿名性、再生不可能性、非拒絶性のようなセキュリティ特質を有する。
【００１４】
　本発明は、保全契約締結（ＳＡＳ）プロトコルを規定し、それは無線ネットワークのような信頼性の低い通信環境で使用するよう設計される。本発明によるＳＡＳは、契約に関する複数の者が、信頼性の低い通信チャネルでも安全な形式で、別個独立の確認者に契約情報を提出することを可能にする。加えて、本発明のＳＡＳは、契約情報を比較及び確認し、その結果を各人に安全な形式で通知する機構及び手順を与える。以下に開示されるように、本発明は、商品購入、無線投票、仮想トークン収集その他多くの取引形態に適している。
【００１５】
　本発明によるＳＡＳは、暗号化及び暗号解除で同一の共有される鍵が利用される対称的暗号化法に基づく暗号化法を含む。本発明によるＳＡＳは、新規なキー導出及び生成手法を包含し、それは多くの対称的暗号化法と共に使用することが可能であり、非保全通信環境（例えば、無線チャネル）における高度のセキュリティ、演算負担が低いこと、ユーザが、鍵その他の契約加入に関する他の個人識別データ（ユーザ名、アカウントデータ等）を記憶又は送信する必要がないことのようなプロトコルに望まれるいくつもの新しい特質を与える。
【００１６】
　本発明のキー生成法は、通信可能な移動計算装置を利用する。移動計算装置はそのプロトコルを実行し、ユーザからの入力を受け入れる。そのような装置は、特定用途向け装置又はパーソナルディジタルアシスタンス（ＰＤＡ）、プログラム可能なセルラ若しくは移動電話機のような汎用コンピュータプラットフォームであり得る。
【００１７】
　本発明によるキー導出アルゴリズムは、移動計算装置についての情報と、装置のユーザについての情報とを組み合わせる。また、そのアルゴリズムは、装置によりディジタル的に格納された情報と、ユーザにより入力される共有の秘密情報とを組み合わせる。そのような組み合わせは、高い水準で、意図される者のみが暗号解除し且つ通信されるデータにアクセスできることを保証する。仮に装置が紛失又は盗難にあった場合に、それは、その装置自身に格納されていない特定のユーザ入力情報なしに使用され得ない。決定性のキー導出アルゴリズムは一般に知られている。一群の格納済みパラメータは、その装置及び確認者にのみ知られているが、共有される秘密の値に関する知識なしに、そのキーを決定するには不充分である程度に知られていることが好ましい。秘密の値、格納済みパラメータ又はキーは、メッセージで送信されることはない。送信されるものは、キーと共に暗号化されたメッセージ部分であり、そのキーは、格納済みパラメータ及びユーザにより入力された共有される秘密情報から導出される。
【００１８】
　以下に一層明らかになる他の態様及び利点と共に本発明は、以下に充分に説明されるように、詳細な構成及び動作と共に具現化され、その部分を形成するリファレンスが添付図面に示され、各図を通じて同様な番号は同様な部分に対応する。
【発明を実施するための最良の形態】
【００１９】
　以下、本発明の概略が説明される。
【００２０】
　あるアプリケーションに関し、契約は、複数者の間の一般供述内容又はステートメント（ｇｅｎｅｒａｌ　ｓｔａｔｅｍｅｎｔ）であり、そのアプリケーションの状況において、各人がそのステートメントに関して共通の理解を有することの確認を与える確認手続が実行され得るものである。例えば、金融取引契約は、「Ａ者は項目Ｙに関してＢ者に＄Ｘの金額を支払う」、となるであろう。契約内容は契約データによって表現され、その内容は本発明によってではなく、アプリケーションのニーズによって規定される。
【００２１】
　本発明による方法は、契約確認（ａｇｒｅｅｍｅｎｔ　ｖｅｒｉｆｉｃａｔｉｏｎ）を行うために、セキュリティ契約締結（ＳＡＳ：Ｓｅｃｕｒｉｔｙ　Ａｇｒｅｅｍｅｎｔ　Ｓｕｂｍｉｓｓｉｏｎ）プロトコルと呼ばれる新規なプロトコルを包含する。本発明の一態様は、ＳＡＳ暗号化（ＳＡＳＥ）手段であり、これは、安全でない（ｉｎｓｅｃｕｒｅ）通信環境にて、安全な多くの特質を与える。ＳＡＳＥは、ＳＡＳの一部である総てのメッセージの暗号化及び暗号解除をするために使用される。ＳＡＳＥ手段は、契約者及び確認者の各々で実現される。
【００２２】
　本発明は、以下の望ましいセキュリティ特性を与える：
　契約者の認証：包含される契約者の身元は、送信者に特有であって確認者及び特定の契約者にのみ知られる鍵を利用する暗号解除方法を利用して、契約者により送信されたＳＡＳＥコードメッセージが確認者によって暗号解除され理解され得ることに基づいて、確認者による高度の確からしさで、彼らであると申請する者であるように決定され得る。
【００２３】
　確認者の認証：確認者の身元は、契約者に特有であって契約者及び確認者にのみ知られる鍵を利用する暗号解除方法を利用して、確認者により送信されたＳＡＳＥコードメッセージが契約者によってのみ暗号解除され理解され得ることに基づいて、契約者各人による高度の確からしさで、そうであると申請する者であるように決定され得る。
【００２４】
　匿名性（ａｎｏｎｙｍｉｔｙ）：ＳＡＳＥ法を利用する際にアプリケーションで望まれるならば、契約者は互いに匿名性を維持することができる。
【００２５】
　契約の秘匿性又はプライバシ：契約者及び確認者の間で送信される契約データは、ＳＡＳＥで保護され、仮に傍受された場合に、意図される受信者以外の者がそのデータを暗号解除して読み取ることができないようにする。同様に、確認者から契約者への応答メッセージも保護される。
【００２６】
　不正変更対策：契約者及び確認者間で送信される契約データは、暗号署名（ｅｎｃｒｙｐｔｉｏｎ　ｓｉｇｎａｔｕｒｅ）を利用することで保護され、高度な検出をせずに、他者から送信されたデータを誰も変更できないようにする。
【００２７】
　再生不可能性（Ｎｏｎ−ｒｅｐｌａｙａｂｌｅ）：契約者及び確認者間で送信される契約データは（傍受された場合でも）、契約の処理が生じた時間の値を利用する暗号化手段により保護され、そのようなタイムスタンプは各メッセージにも包含され、確認者によって記録される。従って、新たな契約を偽造するためにその契約データを再生することは誰もできない。というのも、各鍵は、確認者によりメッセージのログに記録された特定のタイムスタンプに関連付けられているからである。
【００２８】
　非拒否性（Ｎｏｎ−ｒｅｐｕｄｉａｔｉｏｎ）：非常に希な例外的状況を除いて、確認者によって確認された契約メッセージを作成しなかったことを、契約者が後に要求することはできない。これらのセキュリティブリーチ（ｓｅｃｕｒｉｔｙ　ｂｒｅｅｃｈｅｓ）は、総ての秘密パラメータ（装置固有に格納されたパラメータ、及び装置のユーザによって入力された共有される秘密）が公表される又は発見されること、及び移動体計算機が契約者の同意なしに使用されることを包含する。また、確認者が、偽の契約を作成することもあり得るが、それは確認者と他方の契約者との共謀による場合であり、これは極めて希である。加えて、確認者は、各処理で含まれるＳＡＳメッセージ交換のシーケンスを記述する記録を保持する。
【００２９】
　契約グループ認証：本発明は、契約者集団（契約がなされた者のみから成るグループ）の真性を保証し、他者が契約者のふりをすることはできず、又は契約者が契約者でないふりをすることもできないようにする。これは、メンバシップリスト及び身元相互照合により明示的に行われる。また、契約中の総ての関係者は先験的に確認者に既知であり、個別的に承認され得ることが想定される。
【００３０】
　契約確認：契約は、契約データに含まれる冗長及び相互参照情報を利用することと、基本照合規則及びそのアプリケーションに依存し得る固有照合規則から成る確認手順を利用することにより、承認された契約者の中で一致するように確認される。
【００３１】
　計算効率：本発明によるセキュリティ手段は、他の手法よりも効率的な私的鍵（対称的）暗号化に基づいている。
【００３２】
　物理的セキュリティ：セキュリティ手段は、クライアント移動体計算機に必要な暗号化情報の総てを格納する必要のないようにし、装置が共有される場合に秘密情報を簡易に保護するように実現されることが可能である。特に、ユーザにより入力された共用の秘密は、装置に格納されない。また、装置が特定のアプリケーション状況で使用される場合に、ユーザ識別情報はその装置に格納されない。例えば、実際の小売店で商品又はサービスを購入するために装置が使用される場合に、顧客の名前又はユーザのアカウント情報は、装置に格納されない。
【００３３】
　侵入検出（Ｉｎｔｒｕｓｉｏｎ　Ｄｅｔｅｃｔｉｏｎ）：セキュリティ手段は、別個独立した確認者を利用することで一括化又は中央処理化され、複数回のアクセスによる、非承認ユーザによるシステムを利用するための試みが容易に検出され、処理されるようにする。
【００３４】
　上述した本発明の態様に関し、本発明は、非保護通信環境における不信者間の金融業務データを搬送する器又はベッセル（ｖｅｓｓｅｌ）として使用されるのに特に適している。また、低コストユーザ装置を利用して、限定されたコンピュータリソースを有するシステムにも適している。
【００３５】
　以下、図１−８を参照しながら本発明が説明される。
【００３６】
　［アーキテクチャ］
　図１には、本発明によるＳＡＳを利用する２者間の契約確認用のシステム１００の全体構成（アーキテクチャ）が示されている。システム１００は、２人の契約者ＡＰ１（１０１）及びＡＰ２（１０２）、契約通信チャネル（１０３）、承認及び確認者ＡＶＰ（１０６）、取引通信チャネル（１１３）、及び取引処理要素（１１６）を備える。ＡＶＰ１０６自身は、４つの要素より成り、それらは、見解（ｖｉｅｗ）収集モジュール（１０８）、契約承認モジュール（１１８）、契約確認モジュール（１１２）並びにユーザ及び装置データベース（１１４）である。
【００３７】
　図１を参照するに、ＡＰ１１０１は、ＡＰ見解１（１１０）の形式で契約情報を生成し、ＡＰ２１０２は、ＡＰ見解２（１２０）の形式で契約情報を生成する。取引処理要素１１６及びそれに関連する通信チャネル自体は、本発明による部分ではなく、本発明に関するアプリケーション環境を描くために含められている。取引通信チャネル１１３は信頼性の高い保全（セキュア）チャネルであることが想定される。
【００３８】
　本発明は、契約チャネル１０３が信頼性の高いが、ＡＰ１０１，１０２及びＡＶＰ１０６の間の通信チャネルは保全されていないことを想定する。ＳＡＳプロトコルの部分であるメッセージは総てＳＡＳＥを利用して暗号化／暗号解除される。更に、ＡＶＰ１０６は、ユーザ及び装置データベース１１４内の重要な情報が良好に保護されるような保全施設に設けられるものとする。
【００３９】
　本発明によるＳＡＳ契約確認手順は、以下の６つの機能で説明される。各機能部の更なる詳細が以下のセクションにて与えられる。
【００４０】
　機能１：各契約者（ＡＰ）１０１又は１０２が、契約データ及び付加的なパラメータを含むＡＰ見解１１０又は１２０を作成する。見解１１０又は１２０の重要な部分は、本発明によるＳＡＳＥを利用して暗号化される。ＡＰ見解１１０又は１２０は、ＡＰ１０１又は１０２によりそれぞれディジタル署名される。契約メッセージは見解１１０又は１２０から作成され、契約通信チャネル１０３を利用して、承認及び確認者（ＡＶＰ）１０６に送信される。
【００４１】
　機能２：ＡＶＰ１０６は、ＡＰ１０１，１０２から契約メッセージを受信し、それらを見解（又は契約）収集モジュール１０８に配布する。見解収集モジュール１０８は、それが２者契約であること、及びその特定の契約に関して２つの契約メッセージ（各当事者から１つ）を受信する時期を判定する。以後メッセージは承認モジュール１１８に伝送される。
【００４２】
　機能３：認証モジュール１１８は、契約メッセージの暗号化を解除するために、本発明によるＳＡＳＥを利用することによって契約者を承認し、署名された契約の複製又はコピーが、包含されるＡＰ１０１，１０２によって実際に署名されていることを判別する。これは、ＳＡＳＥ法の性質により、及びユーザ及び装置データベース１１４に格納済みの情報を利用して行われる。承認されると、以後暗号解除されたメッセージが契約確認モジュール１１２に伝送される。承認に失敗した場合は、その結果が機能６に示されるように契約者１０１，１０２に返送されることになる。
【００４３】
　機能４：契約確認モジュール１１２は、一群の照合規則を実行し、契約メッセージ１１０，１２０各々における契約データが、互いに一致するか否かを判別するようにして検査する。アプリケーション固有の規則に対するインターフェースに加えて、常に適用されるいくつかの照合規則が存在する。これらの照合規則群は、契約に関する受信した総てのコピーの中に含まれる契約データが一致することを確認するように検査される。一般に、各契約メッセージにて、その契約の他者（相手）に対するリファレンスがあり、場合によっては公的情報ではないユーザの身元に関するリファレンスがある（１つの装置に対して複数のユーザがあり得る場合）。加えて、本発明を利用する各アプリケーションは、契約者から受信した契約に関する具体的内容が互いに一致することを確認するための入力又はプラグイン（ｐｌｕｇ−ｉｎ）機能を与え得る。例えば、金融取引において、当事者間で合致し得る量についての決定がある。関連する取引手順がなければ、システムは機能６に進む。そうでなければ機能５が次に実行される。
【００４４】
　機能５：多くのアプリケーションでは、契約の詳細が確認されると、その契約内容に基づくいくつかのサービスが実行されることが望ましい。この場合に、暗号解除された契約データは、取引処理要素１１６に伝送され、取引通信チャネル１１３を利用してそれらのサービスが実行される。取引処理要素１１６は、典型的には、取引手順に従って各契約者に対する応答メッセージを作成する。応答メッセージは同一のチャネルを通じて契約確認モジュール１１２に返送される。
【００４５】
　機能６：契約確認モジュール１１２は、確認結果を含む契約者１０１，１０２への応答メッセージを作成する。取引処理要素１１６からの応答が存在するならば、それも応答メッセージに組み込まれる。契約確認モジュール１１２は応答メッセージを契約承認モジュール１１８に伝送し、それは本発明によるＳＡＳＥを利用して契約者１０１，１０２への応答を暗号化し、その応答メッセージを契約通信チャネル１０３を介して契約者１０１，１０２に送信する。
【００４６】
　本発明による契約方法は、上記のように要約される。しかしながら、本発明による契約方法を実現するそのようなシステム１００を動作させるために、いくつかの更なる機能が使用される。契約する前に、確認サービスを利用することを希望する者ＡＰ１０１，１０２は、承認及び確認者（ＡＶＰ）１０６に登録されていることを要する。登録手順の結果、ＡＶＰ１０６にユーザアカウントがＡＰ１０１，１０２のために作成され、必要な情報がユーザ及び装置データベース１１４に格納される。登録されたＡＰは、そのシステムのＡＰユーザとして理解される。
【００４７】
　登録されたＡＰ１０１，１０２は、ＡＰ装置又はクラアイント装置と呼ばれる装置を利用することが想定される。各装置は、確認手順に必要な演算を実行すること（送付するメッセージを暗号すること、及びこの特定の装置宛てに到来するメッセージの暗号化を解除することを含む）、及びＡＶＰ１０６と契約通信チャネル１０３を通じて信頼性の高い通信をすることが可能である。また、各装置は、（例えば、疑似乱数生成器及びその入力（ｓｅｅｄ）のような）装置に格納済みの鍵導出パラメータ（ｋｅｙ　ｄｅｒｉｖａｔｉｏｎ　ｐａｒａｍｅｔｅｒ）と供に、ＡＶＰ１０６にて登録される。加えて、ＡＰユーザと彼らの装置の間の関連性も、ＡＶＰ１０６におけるユーザ及び装置データベース１１４に格納される。
【００４８】
　各装置がその装置に関連する複数のＡＰユーザを有する状況、又は各ＡＰが複数の装置に関連付けられている状況を許容することが可能である。本発明に関するアプリケーションの条件に依存して、装置につき複数のユーザが許容されたりされなかったりする。例えば、本発明の特定のアプリケーションが、登録された各ＡＰユーザに対して１つの及び唯１つの装置を許可するならば、ＡＶＰ１０６が装置からユーザを見分けることはもはや必要なく、各ユーザに関するデータ項目は、そのユーザに許可された装置に関するデータ項目と共に格納され得る。通常の動作中では、システム１００は、それらのデータ項目を見出すためのリファレンスとして何れかの識別子を利用し得る。これは、複数のユーザの状況よりも効率的な手順となる。
【００４９】
　また、ユーザ及び装置データベース１１４は、ログ（ｌｏｇ）をとるため、及び契約者１０１，１０２及びＡＶＰ１０６へ及びそれらからのＳＡＳメッセージを記録することにより、各々の契約中の対話又はセッションの記録を保管するためにも使用される。そのような契約の写し（ｔｒａｎｓｃｒｙｐｔ）は、ユーザの、装置の又は取引のＩＤによってアクセスされ得る。これは、タイムスタンプを再利用することで取引を再度行うことを防止し、確認手順及び当事者に関する潜在的な問題を解決する。
【００５０】
　［セキュリティプロトコル］
　このセクションでは、セキュア契約締結プロトコル（ＳＡＳ：）と言及される保全プロトコルが詳細に説明される。説明の一部として、プロトコルに使用される用語が規定される。
【００５１】
　装置ＩＤ（ＤＩＤ）：契約生成、取引、承認及び確認に含まれるＡＰ（クラアイント）装置に対する固有の識別子。このＩＤは、メッセージに平文又はプレインテキスト（ｐｌａｉｎ　ｔｅｘｔ）、即ち非暗号化形式におけるものとして包含されることが可能であり、且つメッセージの暗号化されない部分に位置付けられる、という意味で公的なものである。また、それは通信中の装置のアドレスとしても使用され得る。例えば、装置のネットワークインターフェースの物理アドレス（ＭＡＣアドレス）が、この目的のために使用され得る。
【００５２】
　ユーザＩＤ（ＵＩＤ）：契約に含まれる各ＡＰエンティティ（ｅｎｔｉｔｙ）に固有の識別子。即ち、これは、契約生成、処理、認証及び確認に含まれる、許可されたＡＰクライアント装置を利用する人物又はエンティティ（主体）である。このＵＩＤは、ＡＰクライアント装置の現在のユーザを識別するために使用され、ＵＩＤとＡＶＰ１０６で開設されたアカウントとの間には１対１対応が存在する。この情報の一部は、ＵＩＤがプロトコル実行中にプレインテキストで伝送されてはならない点で、私的なものである。ＵＩＤの具体例には、名前、ｅメールアドレス、装置のライセンス番号その他のアカウントＩＤが含まれる。ＵＩＤは、クライアント装置に複数のユーザが存在し、取引を行う装置の特定のユーザを（多数の中から）見分けるのに必要とされる場合にのみ包含される。ＵＩＤはセキュリティのニーズに依存して装置に格納されたりされなかったりする。装置に１つの登録されたユーザしか存在しなかったならば、ＵＩＤは不要であり、装置に関する何らのユーザ識別情報も一切格納しないことが可能になる。
【００５３】
　プライベート身元エントリ（ＰＩＥ：Ｐｒｉｖａｔｅ　Ｉｄｅｎｔｉｆｉｃａｔｉｏｎ　Ｅｎｔｒｙ）：ユーザにより共用される秘密入力。ユーザが取引を行うときはいつでもユーザにより入力される。そのクライアント装置に使用されるアプリケーションに対するユーザの登録に基づいて、それがユーザに許可されることが望ましい。また、それはそのような時点でユーザによって選択されることも可能である。ＰＩＥは、英数字文字列である。ユーザの入力を高速化し、ユーザが記憶する便宜を図るため、ＰＩＥは４桁又は５桁のＰＩＮのような数にすることが可能である。プロトコル実行中に決して送信されず、ユーザ及びＡＶＰ１０６にのみ知られ、その秘密性が充分に保護される点で、これは非常に重要なセキュア情報の一つである。ＰＩＥはＡＰ装置にてユーザによりセキュア形式で入力されることが可能であり、又は指紋センサのような生体装置を利用して決定性的に（ｄｅｔｅｒｍｉｎｉｓｔｉｃａｌｌｙ）作成され得ることが想定される。例えば、指紋センサから受信した指紋データになされる演算は、ユーザにより最初にＡＶＰに通知されるＰＩＥを作成するために使用され得る。ユーザが取引をしようとするときはいつでも、ユーザは自信の指を指紋センサに委ね、ＰＩＥを作成させる。ＰＩＥは、ＡＰ装置の永続的記憶部には保持されないが、取引のための暗号鍵の生成に必要な中間パラメータとして使用され、取引実行時間より長い期間にわたって装置に保持されるべきではない。本発明による実施例が、各契約取引に対してユーザが入力するのに不便であってその装置がユーザのＰＩＮを格納する必要があるところのＰＩＥ形式を利用する場合に、その格納部は保全され且つ不正変更に対処することを要する。また、ユーザのＰＩＥは、セキュアな場所（要素）と考えられる、ＡＶＰにおけるユーザ及び装置データベースにも格納される。
【００５４】
　装置ユーザＩＤ（ＤＵＩＤ）：本発明によるアプリケーションが１つのＡＰ装置に複数のユーザを割り当てる場合に、そのユーザをローカルに見分けるための各装置に対する識別子。特定の装置のＤＵＩＤと割り当てられたユーザのＵＩＤとの間の対応関係は、その装置自身に加えて、ＡＶＰにおけるユーザ及び装置データベースにおける記録部に格納される。ユーザが自信のＰＩＥをＡＰ装置に入力するのと同時に、その者は自身のＤＵＩＤも与える必要がある。ＤＵＩＤは、それがメッセージの中でプレインテキストとして送信され得る点で、公的なものである。現在のユーザのＤＵＩＤは、取引実行中にＡＰ装置に格納され得る。
【００５５】
　ディジタル署名（ＤＳ）：メッセージに関連するディジタル署名は、書類が不正変更されていないこと、及びそれが署名者により過去に作成されたことを確認するために使用される。所与のデータブロックに関し、メッセージダイジェスト（ＭＤ：ｍｅｓｓａｇｅ　ｄｉｇｅｓｔ）が、ハッシュ（Ｈｕｓｈ）関数のようなダイジェストアルゴリズムを利用して算出され得る。署名を確認するために、受領者は、送信者の鍵を利用してその署名の暗号化を解除する。受信者が、受信した署名から暗号解除されたダイジェストに合致する受信メッセージから、ダイジェスト値を作成するならば、その署名は有効であるとして受け得入れられ、受信メッセージは変更されていない当初のメッセージであるとみなされる。
【００５６】
　ランダムシーケンス番号（ＲＳＮ）：ＲＳＮは疑似乱数であり、それは、ローカルに格納されている疑似ランダムシーケンス番号関数Ｒ（疑似乱数生成器）から作成される。そのようなＲＳＮ関数自体は当該技術分野でよく知られている。典型的には、疑似乱数の生成は、シードＳのような他のパラメータを包含する。このシードは、最初の疑似乱数出力を生成するために、生成器Ｒに対する初期入力パラメータとして使用される。そして、生成器は、以前の反復による出力を、新たな疑似乱数を生成するための入力として使用する。本発明によるＳＡＳでは、ＲＳＮ数は、ＡＰ装置により又はＡＶＰにより生成され得る。各ＡＰ装置は、それ自身のＲ及びＳを有し、それらはその装置及びＡＶＰにて安全に格納されている。ＡＶＰでは、ＲＳＮが生成されるＡＰ装置の所与のＤＩＤに関し、許容される総ての装置についての情報を含むユーザ及び装置データベースから、その装置に関する同一の疑似乱数生成器Ｒ及び対応する疑似乱数生成シードＳを、プログラムが決定性的に位置付けることが可能である。
【００５７】
　タイムスタンプ（ＴＳ）：取引に関連する時間。これは、装置毎にローカルクロックから読み取って生成することが可能であり、又は取引毎に装置に配信することも可能である。例えば、装置が購入アプリケーションに使用される場合に、ＴＳは、商人と顧客が合意した購入依頼のＴＳとすることが可能である。ＴＳは、反復的な値の中で、既知の一般に長期間にわたって増加する値のシーケンス要素である。これは、装置のローカルな時間の指標（インジケータ）として及び同一装置の疑似乱数生成器を制御するパラメータとしての、２つの目的に使用される。前者の場合には、所与のソースからの２つのメッセージが同一のＴＳを有しないので、メッセージ再生を防止するためにＴＳが使用される。後者の場合は、最終的な出力がＳＡＳＥによる次の乱数として出力される前に、生成器Ｒの反復回数を制御するためにＴＳが使用される。
【００５８】
　取引（Ｔｒａｎｓａｃｔｉｏｎ）：ある契約取引、認証及び確認の完全な実行。あるＡＰ装置において、取引は、その装置が契約に関する見解を作成する時に始まり、ＡＶＰからの受領書又はレシート（ｒｅｃｅｉｐｔ）が受信され理解された時に終わる。特定のアプリケーションは、アプリケーションの目的（ｇｏａｌ）を達成するために、複数のそのような取引を包含し得る。例えば、アプリケーションが、顧客が商人から商品又はサービスを購入するものである場合に、最初の取引は、その購入を認め、予備的な承認に関するものであり、第２の取引は、第１の取引が完了した後に（適切な応答がＡＶＰから受信された場合に）、購入を確認及び認証するものである。
【００５９】
　取引ＩＤ（ＴＩＤ）：契約に割り当てられた固有の識別番号。ＴＩＤを生成する方法は、一般にアプリケーションに特有であり、ある契約者によって又は見解収集モジュールのようなＡＶＰの要素によって生成され得る。収集モジュールは、ＴＩＤ及び付加的なパラメータ、並びに契約における複数の者を特定する取引番号（ＮＩＴ：Ｎｕｍｂｅｒ　ｉｎ　Ｔｒａｎｓａｃｔｉｏｎ）を利用して、契約に関する完備な一群の見解を受信した時間を見分ける。２者間契約では、ＴＩＤ及びＮＩＴは必須ではない。
【００６０】
　見解（Ｖｉｅｗ）：ＡＰ装置で処理される契約データ。契約の見解は、暗号化される部分と暗号化されない部分とを含む。暗号化される部分は、リファレンス情報（他者の装置ＩＤ、選択的なユーザＩＤ、ディジタル的に署名され得るメッセージダイジェストＭＤ）及び特定の契約データを包含する。暗号化されない又はプレインテキスト部分は、取引ＩＤ、取引番号、タイムスタンプ、装置ＩＤ及び装置ユーザＩＤを含むリファレンス情報より成る。
【００６１】
　契約データ（Ａｇｒｅｅｍｅｎｔ　Ｄａｔａ）：契約データは、契約に含まれる者の合意した具体的な詳細を伝搬する。例えば、ある者が他の者に支払うことに合意した金額は、契約データになる。また、契約データは、契約に適切なデータを包含するが、それは他の契約者から遮蔽又はシールド（ｓｈｉｅｌｄ）される必要がある。例えば、ある者が他の者に支払うことを合意した際の金融アカウントは、契約データに包含され得るが、それは暗号化により他の者から保護されるものではない。契約確認モジュールは、両当事者がその量及び関係者に合致したことを判定し、取引処理要素１１６等により、適切な付加的な処理をするためのアカウント情報等の他の契約データを保護及び配信する。ＳＡＳ及び暗号化アルゴリズムの主目的は、私的性、ユーザ秘匿性、再生不可能性、及び非拒絶性に関するセキュリティ特性を提供しながら、取引中に契約データを保護すること、及び他の契約者から他の情報をシールドすることである。
【００６２】
　図２には、ＳＡＳＥとして言及される、本発明によるＳＡＳ見解を暗号化する方法２００が図示されている。図２に示されるＳＡＳ見解２１０は、図１のＡＰ見解１０１，１２０に対応する。図２に示されるように、ＡＰ見解２１０は、暗号テキスト部（又は暗号化された部分）２１２とプレインテキスト部２１４とを含む。プレインテキスト部２１４は、ＴＩＤ、ＮＩＴ、見解を作成するＡＰ装置のＤＩＤ、ＡＰ装置のローカルＴＳ、装置の現在のユーザのＤＵＩＤ、ＴＩＤ及び契約の当事者数を包含する。暗号化された部分２１２は、４つのフィールドを含み、それらは：ディジタル署名ＤＳ２１６、契約、ＡＰのＵＩＤ、及び契約に含まれる他のＡＰのＤＩＤである。契約に包含される他のＡＰのＤＩＤは、ＳＡＳプロトコルの所望の性質を提供するための必要最小リファレンスフィールドである。更にＤＳは、他者が何らかの手法で見解の内容を改変又は修正しないことを保証することで、セキュリティの強度を増進させる。ＴＩＤ及びＮＩＴは２者間契約には不要である。ＴＩＤ及びＮＩＴの目的は、見解（メッセージ）及びそれらのメッセージに対する応答を関連付けることであり、或いは、メッセージ及びこれらのメッセージに対する応答に関連する情報が、特定のアプリケーションに依存する手法で、契約データ自身の一部として提供され得る。
【００６３】
　ＡＶＰのみがあるユーザを各装置に関連付け得る場合には、ＡＶＰがＤＩＤに基づいてそのようなＵＩＤを導出できるので、ＵＤＩフィールドは省略され得る。契約に含まれる他者のＵＩＤは、どの見解にも含まれず、契約に含まれる他のＡＰが匿名のままであるようにする。また、この場合にＤＵＩＤフィールドは不要である。
【００６４】
　先ず、見解生成装置のＤＩＤ２３４と、装置のローカルクロックから取得される又は契約データの一部として提供されるＴＳ２３６とが、ＲＳＮ２４６を生成するために、装置の疑似乱数生成器２５２ＲＳＮ２５２に入力される。ＳＡＳＥでは、ＴＳ２３６は、疑似乱数生成器２５２の反復回数を制御するために使用される。その反復後の最終的な結果のみが、ＳＡＳＥのための出力ＲＳＮ２４６として使用される。
【００６５】
　ＲＳＮを生成するためにＴＳがどのように使用されるかについては、いくつかの変形例が存在する。導出（ｉｎｄｕｃｔｉｏｎ）の回数を制御するためにＴＳを利用する１つの方法は、（分又は秒数の）ＴＳ値と別の互いに一致した基準時間値との差分を導出回数として使用するものである。ＲＳＮの生成は：ＲＳＮ＝Ｒ（Ｓ，ＴＳ，Ｔ０）として記され、ここでＴ０は基準時間である。基準値Ｔ０は、ＡＰ及びＡＶＰの両者にて格納され、ＡＶＰは、その基準値をユーザ及び装置データベースにおけるＡＰ装置に関する記録中に格納し、それは各ＡＰ装置に特有である。互いに一致した基準時間は、ＳＡＳＥ　ＲＳＮを生成するための導出回数を減少させるために、ＡＰ及びＡＶＰにおける基準時間の進行が同期している限り、ＡＰ装置及びＡＶＰの両者で進められる。望まれるならば、基準時間が進行する際に、そのシードも更新され得る。例えば、新たなシードＳ’は、Ｓ’＝Ｒ（Ｓ，Ｔ０’，Ｔ０）となり、ここでＳは当初のシードであり、Ｔ０は当初の基準時間であり、Ｔ０’は新たな基準時間である。維持されることを要するＳＡＳＥの性質により、所与の特定の送信者の疑似乱数シーケンス生成器Ｒ、そのシードＳ、及び送信者により使用されたのと同一のＴＳ値に関し、受信者は、その送信者によって生成されたのと同一のＲＳＮを決定性的に再生成することが可能になる。
【００６６】
　ハッシュ関数Ｈ２５４は、２引数関数（ｔｗｏ−ａｒｇｕｍｅｎｔ　ｆｕｎｃｔｉｏｎ）Ｆの出力に適用され、それはローカルに生成されたＲＳＮ２４６とＡＰユーザにより入力されたＰＩＥ２４８とに適用されると、１つの引数（典型的には文字列）を出力し：
　Ｋ＝Ｈ（Ｆ（ＰＩＥ，ＲＳＮ））又は更に展開されたＫ＝Ｈ（Ｆ（ＰＩＥ，Ｒ（Ｓ，ＴＳ，Ｔ０）））
　である暗号キーＫ２５０を作成する。
このようなハッシュ関数は、反転（ｉｎｖｅｒｔ）することが困難であり、当該技術分野でよく知られている。この関数は、ＰＩＥ文字列をＲＳＮ文字列に付加する関数、又はＰＩＥとＲＳＮのＸＯＲ等のような任意の既存の関数であり得る。
【００６７】
　メッセージダイジェスト関数２５８は、そのデータ、ＡＰユーザのＵＩＤ、及び契約に含まれる他のＡＰのＤＩＤに適用され、見解に関するメッセージダイジェスト（ＭＤ）２１６を生成する。メッセージダイジェスト関数２５８は、これら３つのデータ項目を入力として使用し、単独の数を生成するところのハッシュ関数であり得る。メッセージダイジェストを作成するのに使用するそのようなハッシュ関数も、当該技術分野で周知である。例えば、ハッシュ関数ＳＨ１は、この目的に頻繁に使用される。
【００６８】
　そして、暗号キーＫ２５０を利用する暗号化アルゴリズムが、メッセージダイジェスト２１６、契約データ２４４、ＡＰユーザのＵＩＤ２４０、及び契約に含まれる他のＡＰのＤＩＤ２４２に適用され、見解に関する暗号テキスト部分２１２を作成する。暗号キーを作成するために使用されたＤＩＤ２３４及びＴＳ２３６は、プレインテキストとして見解の中に包含される。ＴＩＤ２３０及びＮＩＴ２３２も、見解のプレインテキスト部２１４に包含される。このようにして、第１ＡＰ装置からの契約見解１１０は、
　ＡＰ見解１＝｛ＴＩＤ，ＮＩＴ，ＤＩＤ１，ＴＳ１，ＤＵＩＤ１，暗号化［Ｋ１：（ＵＩＤ１，ＤＩＤ２，データ，ＭＤ１）］｝
のようになる。
【００６９】
　システム１００で使用される具体的な暗号化アルゴリズムは、充分な保護を与えるように選択された、既存の対称鍵形式の任意の暗号化アルゴリズムであり得る。しかしながら、本発明は、選択された暗号化アルゴリズムと共に使用されるキー作成プロセスを包含する。
【００７０】
　ＳＡＳＥの一実施例として、暗号化アルゴリズム２５６はトリプルＤＥＳ（ＴｒｉｐｌｅＤＥＳ）であり、乱数生成器２５２はマーセンツイスタ（Ｍｅｒｓｅｎｎｅ　Ｔｗｉｓｔｅｒ）であり、そのシードは３２ビット数であり、ハッシュ関数２５４はＳＨＡ１であり、ハッシュ関数への入力を生成する関数Ｆは、ＰＩＮをＲＳＮに加える関数である。
【００７１】
　更なる保護を与えるために、ＳＡＳプロトコルは、「既知テキスト」攻撃（“ｋｎｏｗｎ−ｔｅｘｔ”　ａｔｔａｃｋ）を更に防衛するために、メッセージパディング（ｐａｄｄｉｎｇ）を利用する。「既知テキスト」攻撃では、契約のプレインテキストを知っている攻撃者又はアタッカ（ａｔｔａｃｋｅｒ）が、暗号キーそして最終的には、攻略に充分に成功して、キー導出プロセスに使用された他のパラメータをリバースエンジニアリングしようとする。成功すると、アタッカはその特定の見解に対する暗号キーを再生成することができるようになる。キーは時間と共に変化するので（各タイムスタンプは新しいキーに関連付けられるので）、この攻撃は、その特定のタイムスタンプに対してのみキーを再生成するであろう。同一のタイムスタンプを利用する更なる取引は、ＡＶＰに格納された以前の取引タイムスタンプと比較することによって否定される。
【００７２】
　パディング法は、真の（ｒｅａｌ）フィールドの前及び後にランダムビットを挿入し、オブザーバが、真のデータが始まる場所を判別できないようにし、「既知テキスト」攻撃の困難性を増進させる。パディングの量は、メッセージ全体及び包含されるデータの長さによって決定される。パディング３００の一例では、図３に示されるように、パディングされるフィールド（ｐａｄｄｅｄ　ｆｉｅｌｄ）３０２は固定長のフィールド３１２から始まり、それは実際の暗号化されるフィールドの前に挿入されるランダムビット数を記述する。このフィールド３１２には、そのフィールド３１２で指定される長さのランダムビット列３１４が続き、そして真のデータフィールド３１０が続く。ランダムテールビット（ｒａｎｄｏｍ　ｔａｉｌｌｉｎｇ　ｂｉｔ）３１６は、暗号化されたフィールド全体の末尾の後に付加され、アタッカが見解の真の暗号テキスト部分を抽出することの困難性を更に増進させる。各フィールドの全長は既知であるので、テールランダムビット３１６の長さ及びオフセットを指定する必要はない。各フィールドの長さが未知であるならば、フィールド３１２には、テールランダムビット３１６のオフセットを指定する付加的なフィールドが続くことになる。他の実施例では、ランダムビットが総てのフィールドの前後にのみ挿入される。この場合には、アタッカが各データフィールドの位置を見出すことの困難性は減少するが、各ＳＡＳＥメッセージの処理も減少する。パディングは、見解作成中に暗号化が適用される前に行われる。
【００７３】
　ＡＰによるセキュアメッセージの生成に関するＳＡＳＥ手段の説明をこれで終了する。ＡＶＰにおけるメッセージの暗号解除に関し、同様な手順が後のセクションで説明される。
【００７４】
　［見解収集］
　ＡＶＰ１０６では、まず、同一の契約取引に属するが異なるＡＰ装置で作成された見解１１０，１２０が、更なる認証及び確認手順の前に、見解収集モジュール１０８によって収集される。契約に関する総ての見解が集められると、それらは契約認証モジュール１１８に与えられる。
【００７５】
　本発明によるＳＡＳは、契約者が、異なる者との複数の取引に同時に包含されることを許容する。加えて、異なる者による複数の取引が、ＡＶＰ１０６で同時にアクティブ（ａｃｔｉｖｅ）であり得る。一般に、見解収集機能は、同一の契約のどの見解が属するか、及びその収集が完了するのはどんなポイントかを判定し、同一の契約取引に属する総ての見解が、認証モジュール１１８に転送され得るようにする。ＴＩＤは契約の各見解にタグ付けするために使用され、その収集者が、同一の契約に属する見解を照合し、それらと共に処理を行い得るようにする。
【００７６】
　見解収集モジュール１０８は、その見解に合うメッセージ各々においてＴＩＤを利用する。見解収集モジュール１０８が、ＮＩＴにより与えられる適切な数の個別的見解を収集すると、見解収集モジュール１０８は、その一群の見解を認証モジュール１１８に転送する。パラメータＴＩＤ及びＮＩＴはプレインテキストにて送信され、見解収集モジュール１０８が、認証及び暗号解除に先立ってその見解に操作を行いえるようにする。これは、見解収集モジュール１０８がＡＶＰ１０６から物理的に分離され得るという大きな柔軟性を与える。ＴＩＤ及びＮＩＴの真性を保証するために、ＴＩＤ及びＮＩＴは契約データにて反復される。このため、ＴＩＤ及び契約に含まれるＡＰ装置のＤＩＤのリストは、暗号化される部分に包含される。
【００７７】
　他の実施例では、ＴＩＤ及びＮＩＴは、メッセージの暗号化される部分にのみ包含され、見解収集モジュールで取り扱われるのに先立って、（契約認証モジュールによって）暗号解除及び認証される必要がある。この場合に、見解収集モジュールは、一群全体が取得されるまで暗号化された見解を保持する。
【００７８】
　見解収集モジュール１０８は、取引タイムアウト時間と呼ばれる最大期間の間、取引に関して一致しなかった見解を保持する。完全な見解一式を収集することなしに、この時間が経過した後に、その見解は破棄され、選択的に契約者に通知される。
【００７９】
　［暗号解除］
　見解１１０，１２０は、契約認証モジュール（ＡＡＭ）１１８によってＡＶＰ１０６にて暗号解除される。
【００８０】
　図４は、ＡＡＡ１１８及び契約確認モジュール（ＡＶＭ）１１２に続く手順の詳細を示す。より具体的には、図４は、上述したＡＰ見解１　１１０及びＡＰ見解２　１２０を、プレインテキストにＴＩＤ，ＮＩＴ，ＴＳ１，ＤＩＤ１，ＤＵＩＤ１を含む暗号解除されたＡＰ見解１　４１０と、プレインテキストにＴＩＤ，ＮＩＴ，ＴＳ２，ＤＩＤ２，ＤＵＩＤ２を含む暗号解除されたＡＰ見解２　４６０とに暗号解除する方法４００を示す。
【００８１】
　最初に、見解１１０又は１２０が受信される場合に、ＡＡＡ１１８がその見解のＴＳの有効性を検査することが有益である。この行為は、ＡＰ装置クロックを変更すること又は傍受された見解を再生することに結びつく攻撃を防ぐ。このため、ＡＶＰ１０６は、ユーザ及び装置データベース１１４に各ＡＰ装置１０１，１０２に関するクロックオフセットを格納する。このオフセットは、装置１０１，１０２のローカルクロックと、ＡＶＰ１０６のシステムクロックとの間の差分を記述する。オフセット及びＴＳに関し、ＡＶＰ１０６は、メッセージがＡＶＰ１０６に到着する前に、そのような装置１０２，１０４で生成されたメッセージが、適切な時間枠内で生じたか否かを確認することが可能である。この期間内で作成されたメッセージのみが受け入れられる。それ以外では、「期限切れ取引（Ｅｘｐｉｒｅｄ　Ｔｒａｎｓａｃｔｉｏｎ）」エラーメッセージが作成され、このセクションで後に説明される方法を利用してＡＰに返送される。時間枠の大きさ、及びクロックの精度は、本発明のアプリケーションによって設定される条件に依存し得る。
【００８２】
　図４を参照するに、ＡＡＡ１１８がクライアント１０１から取引見解メッセージ１１０を暗号解除している場合に、見解１１０のプレインテキストＤＩＤフィールド４３０に基づいて、ＡＡＡが、対応する擬似乱数シーケンス番号生成器Ｒ４３４及びその装置に関するシードＳを見出し、それはユーザ及び装置データベース１１４を利用して受信した見解１１０を生成したところのものである。そして、プレインテキストとしてＡＰ見解１１０に含まれるＴＳ４３２をも利用して、ＡＡＡはＲＳＮ４３６を帰納的に再生成することができ、そのＲＳＮは暗号キーの導出中に使用されたＲＳＮ２４６（図２）に一致する。見解生成のＲＳＮを決定するためのＡＡＡに必要とされるＴＳ値は、各メッセージに包含されるので、ＡＡＡ１１８及びＡＰ装置１０１，１０２が、ＲＳＮ導出のためにクロックを同期させることは必要ない。
【００８３】
　ＡＡＡ１１８はその後に見解のＤＵＩＤフィールド４３３を利用してユーザ及び装置データベース１１４内でＡＰ装置１０１の現在のユーザを見出す。ＡＰの現在のユーザに関する記録を調べることで、ＡＡＡ１１８はそのユーザの対応するＰＩＥ４３８を発見する。そして、ＡＡＡ１１８は、そのＡＰによって使用されたのと同一のハッシュ関数４４０（図２の２４５）を利用することで、見解１１０を作成するのに使用された暗号キー４４２（図２の２５０）再構築する。把握した暗号キーと共に、ＡＡＡは見解１１０に含まれる見解メッセージ総てを暗号解除することができる。暗号解除の後に、ランダムビットパディングが見解の構築の際に適用されていたならば、真のデータフィールドを取り出すためにそのパディングビットが除去される。暗号化されたデータフィールドの暗号化が解除された後に、ＵＩＤ４２２、他者のＤＩＤ４２４、データ４２６が、ＡＰ装置で使用されたダイジェストアルゴリズム２５８に等しいところのダイジェストアルゴリズム４４６に与えられ、ダイジェスト４４８を作成する。このダイジェスト４４８は、その後に受信した見解に含まれるディジタル署名を暗号解除することで生じたＭＤ４２８と比較される。両ダイジェストが同一である場合にのみ、そのディジタル署名が適切であるとみなされる。それ以外は、その見解は当初のものから変更されたとみなされる。ＭＤ２　４７８がデータ４７６に対応することを保証するために、同一の手順が受信したＡＰ見解１２０に行われる。
【００８４】
　ＡＡＡ１１８がメッセージを良好に暗号解除できない場合又はディジタル署名が適切でない場合は、認証は失敗したものとされる。「認証失敗」応答メッセージにより、ＡＰは通知を受けるであろう。
【００８５】
　上述のＳＡＳＥ暗号化法及びキー生成法は、ＡＶＰ１０６によっても使用され、ＡＰ１０１，１０２に返送される、エラー、認証又は受領書のような応答メッセージを暗号化する。一般に、この応答も任意のアプリケーション専用のデータを包含し得る。例えば、以後使用するために、取引処理要素１１６によって生成される、ＡＰユーザに関する特定のトークン（ｔｏｋｅｎ）を送信するために利用されることが可能である。
【００８６】
　特に、同一の基本ＳＡＳＥ暗号化法を利用して、ＡＰｉに応答メッセージ送付するために、ＡＶＰは宛先ＡＰパラメータＤＩＤｉを利用して、ＲＳＮを生成するためにＡＶＰにより決定される、乱数生成器Ｒｉ、シードＳｉ及びＴＳを決定する。次に、宛先ＡＰの現ユーザのＰＩＥｉＲＳＮ及びハッシュ関数が、暗号キーＫを作成するために使用される。ＡＰｉへの応答メッセージは後続のフィールドを有し：
　応答メッセージｉ＝｛ＴＩＤ，ＤＩＤｉ，ＴＳ，ＤＵＩＤｉ，暗号化［Ｋ：（ＭＤ，データ）］｝
のようにフォーマットされる。
【００８７】
　応答メッセージｉは、その後にＡＰｉに送信される。受信されると、ＡＰｉは、メッセージ中のプレインテキストパラメータ及びその内部パラメータを利用して、暗号キーを導出し、そのメッセージの暗号解除を行う。このプロセスの間に、ＡＰ装置は、ＰＩＥがその装置にキャッシュされてないならば、包含されるＤＵＩＤを利用して、ユーザがＰＩＥを与えるよう促す。
【００８８】
　所定の状況において、我々は、同一のキー導出手順が各側で実行され得るところの対称暗号化アルゴリズムを利用しているので、上述したＡＶＰ応答メッセージは、メッセージ中の任意のアプリケーションデータを伝送することに一般化され得る。
【００８９】
　エラーメッセージ及びレシートをＡＰに返送するために使用される場合に、ＡＰに対して契約チャネルに沿う逆向きの経路で返答又はリターンメッセージが送信される。見解が、各ＡＰから（収集機能を通じて）ＡＶＰに別々に送信されるならば、返答メッセージもその宛先ＡＰに別々に送信される。そのような逆向きの通信は、見解収集モジュールを経由する必要はない。しかしながら、各返答メッセージは、メッセージ中の契約ＴＩＤのような充分な情報を包含する必要があり、受信側ＡＰ装置が、返答メッセージがどの契約取引に所属するかを見分け得るようにする。
【００９０】
　［契約確認］
　両方の見解１１０，１２０が良好に暗号解除された後に、ＡＶＰ１０６は、契約見解に適用される必要のある照合規則のリストより成る手順を実行するところの契約確認モジュール１１２を利用して、その契約を確認する。見解１１０，１２０中のフィールド間の奇異本的な一連の照合操作が実行され、その後に選択的に、アプリケーション固有の照合規則が適用され得る。基本的な照合操作は、図４に図示及び包含されている。
【００９１】
　各見解のプレインテキストに含まれるＤＩＤは、他の見解の暗号化された部分に含まれる他者のＤＩＤに合致する。即ち、４１６は４７４と合致し、４６６は４２４と合致する。
【００９２】
　各見解の暗号テキスト部に含まれるＵＩＤは、見解収集装置の装置ＩＤ及び現在のユーザのＤＵＩＤによって決定されるような、見解生成装置の現ユーザに合致する。即ち、ＤＩＤ１４１６及びＤＵＩＤ１４２０から導出されるユーザＩＤは、見解の暗号化された部部分に包含されるＵＩＤ１４２２に合致すべきである。同一の照合規則が、ＤＩＤ２４６６，ＤＵＩＤ２４７０及びＵＩＤ２４７２に適用される。
【００９３】
　各見解の取引ＩＤ、ＴＩＤ４１２（又は４２６）は、他者のＴＩＤ４６２（又は４１２）と照合される。加えて、プレインテキストＮＩＴは、各見解にて列挙されたＤＩＤをカウントすることによって確認される。
【００９４】
　その検査の際に照合規則の１つが良好でなかったならば、確認プロセスは中断され、「確認失敗」エラーメッセージが、上述した返答メッセージ法により両方のＡＰに返送される。例えば、エラーコードであるエラー１及びエラー２に続くものとして又はＡＰ及びＡＶＰが理解し得る記述メッセージとして、エラーメッセージが生成される：
　エラーメッセージ１＝｛ＴＩＤ，ＤＩＤ１，ＴＳ１，ＤＵＩＤ１，暗号化［Ｋ：（ＭＤ，エラー１）］｝
　エラーメッセージ１＝｛ＴＩＤ，ＤＩＤ２，ＴＳ２，ＤＵＩＤ２，暗号化［Ｋ：（ＭＤ，エラー２）］｝。
【００９５】
　次のステップは、各見解の暗号化テキスト部分に含まれる契約データが、そのアプリケーションのニーズに従って互いに一致することを、ＡＶＰが確認することである。ＳＡＳは、契約に関する申請受容プロトコル（Ｓｕｂｍｉｓｓｉｏｎ　ｖｅｓｓｅｌ　ｐｒｏｔｏｃｏｌ）である。従って、それが搬送する契約のフォーマット及び仕様（ｓｐｅｃｉｆｉｃａｔｉｏｎ）を規定することを要しない。従って、２つの契約が実際に意味合い的に互いに合致するか否かを判定するアプリケーションを収容するために、インターフェースがＡＶＰにより与えられ、見解に包含される契約が互いに一致することを確認するために、各アプリケーションがそれ自身の付加的な契約確認規則を与えるようにする。
【００９６】
　例えば、使用され得るアプリケーション独立プラグイン手順は、ビット照合関数であり得る。２つの契約がビット毎に正確に同じならば、照合検査を通過（合格）する。より複雑なプラグインが、アプリケーション固有の暗号化法及びその意味合いの対応するものを包含し得る。
【００９７】
　契約確認モジュール１１２は、認証処理の具現化と供に、ＡＶＰにて物理的に具現化され得る。或いは、確認手順は、異なる装置で実現され得るが、信頼性の高いセキュア通信チャネルを通じてＡＶＰ内の他のモジュールと通信し得ることを要する。
【００９８】
　確認プロセスの完了時点で、ＡＶＰは、受信した見解から暗号解除した契約データを、取引処理要素１１６に転送する。しかしながら、この場合にＡＶＰ１０６及び確認処理を実行する取引処理要素間の通信は、同じ場所にないならば、セキュアであることを要する。ＳＡＳの観点からは、受信した見解各々から抽出した契約データは、ＡＶＰにより既に確認される。
【００９９】
　付加的な通信により、タイムアウト機構が備えられ、所定の時間内に取引処理要素１１６プロセスから何らの応答も受信されなかった場合に、ＡＶＰ１０６がエラーメッセージをＡＰ１０１，１０２に返送するようにし得る。
【０１００】
　本発明におけるアプリケーションでは、取引処理要素１１６が物理的にはＡＶＰ１０６とは異なる装置に設けられている場合に、アプリケーションは、付加的な秘匿性を与えるために、付加的な暗号化法を使用し得る。例えば、各ＡＰは、ＳＡＳ暗号化を適用する前に、付加的な暗号化を契約データに適用し得る。この事前の暗号化は、ＡＶＰと同一箇所に設けられていない取引処理要素１１６によってのみ暗号解除され得る。従って、基本的照合に必要とされる情報で網羅されない契約内容は、ＡＶＰでさえ発見することができない。
【０１０１】
　確認プロセスの終了時点で、確認結果を記述するアプリケーション固有レシートがＡＰ１０１，１０２のために生成される。
【０１０２】
　レシートメッセージ１＝｛ＴＩＤ，ＤＩＤ１，ＴＳ１，ＤＵＩＤ１，暗号化［Ｋ１：（ＭＤ，レシート１）］｝
　レシートメッセージ２＝｛ＴＩＤ，ＤＩＤ２，ＴＳ２，ＤＵＩＤ２，暗号化［Ｋ２：（ＭＤ，レシート２）］｝
　レシートは、上述したようにＡＰにメッセージを返送するためのＡＶＰに関する方法を利用して、ＡＰに返送される。レシートの内容はＡＶＰの要素によって理解可能である必要がないことは、重要である。この点、ＡＡＭの認証プロセスで生成されたエラーメッセージと異なる。相違の理由は、認証プロセスからの結果を契約確認プロセスから分離することによる。この分離により、本発明のアプリケーションは、付加的な特徴を包含する更なる能力を与える。例えば、ＡＶＰとは物理的に隔てられている付加的な取引処理要素１１６が存在する場合に、契約確認プロセスはそのレシート中に機密情報を包含し得るＡＶＰがそのレシートの内容を理解するのを許容することは必要でない。
【０１０３】
　レシート又は最後のＡＰに対するエラーメッセージのＡＶＰからの送信は、ＡＶＰ１０６における契約承認及び確認取引の終了を示す又はマーク（ｍａｒｋ）する。ＡＰ１０１，１０２におけるレシートの到着は、ＡＰにおける契約承認及び確認取引の終了を示す。
【０１０４】
　ＡＰ見解１　１１０、ＡＰ見解２　１２０　及び契約確認１０６は、コンピュータで実行される場合のソフトウエアプログラムで実現され、コンピュータに上述した各機能を実行させることが可能である。各プログラムは、コンピュータ読取可能な媒体に格納される。
【０１０５】
　［ＳＡＳプロトコルの拡張］
　上記のＳＡＳプロトコル説明は、２者間の契約に対して行われた。しかしながら、本発明によるＳＡＳプロトコルは、２者以上を包含する契約に拡張され得る。この場合に、ｎ者を含む取引に関し、ｉ番目の者による取引見解は：
　見解メッセージ（ＶｉｅｗＭｓｇ）ｉ＝｛ＴＩＤ，ＮＩＴ，ＤＩＤｉ，ＴＳｉ，ＤＵＩＤｉ，Ｅｎｃ［Ｋｉ：（ＭＤｉ，ＴＩＤ，ＵＩＤｉ，ＤＩＤ０，．．．，ＤＩＤｉ−１，ＤＩＤｉ＋１，．．．，ＤＩＤｎ−１，契約）］｝
　である。
【０１０６】
　それに対応して、確認及び承認規則は：
　見解メッセージ０ＤＩＤｉ＝＝見解メッセージｊＤＩＤｉ＝＝・・・＝＝見解メッセージｎー１ＤＩＤｉ
であり、ここで、ｉ＝０．．．ｎ−１である。
【０１０７】
　総てのｉの（ｉ∈[０，ｎ−１]）に関し、見解メッセージｉＤＩＤｉ及びＤＵＩＤｉを利用して、そのリファレンスＵＩＤに関してユーザ及び装置データベースを探索する。このＵＩＤは、見解メッセージｉの暗号化部分に包含されるＵＩＤｉと同一であるべきである。
【０１０８】
　見解メッセージ０ＴＩＤ＝＝見解メッセージｊＴＩＤ＝＝・・・＝＝見解メッセージｎー１ＴＩＤ，ｉ＝０．．．ｎ−１，
　見解メッセージ０ＮＩＤ＝＝見解メッセージｊＮＩＤ＝＝・・・＝＝見解メッセージｎー１ＮＩＤ，ｉ＝０．．．ｎ−１、
及びＮＩＴはｎに等しく、それは契約中に列挙される当事者数である。
【０１０９】
　２者ＡＰシステムにおける見解の提出方法が、２者ＡＰ以上を包含する契約取引に拡張される。見解収集及び生成プロセスが分離しているならば、２者ＡＰシステムで使用したのと厳密に同じ方法が、２ＡＰ以上のシステムに使用され得る。見解収集モジュールは、メッセージに含まれるＴＩＤ及びＮＩＴを利用して契約中の全員から見解を収集する。
【０１１０】
　見解収集機能が見解作成機能部とは別々に実現される場合に、見解収集機能部は、外部装置において物理的に実現される（この場合に、ＡＰは彼らの見解をその見解収集装置に送付し、その後に見解収集装置が総ての見解を一括してＡＶＰに転送する。）。
【０１１１】
　［他の見解収集方法］
　本願の他の実施例では、統合見解収集（ｉｎｔｅｇｒａｔｅｄ　ｖｉｅｗ　ｇａｔｈｅｒｉｎｇ）と呼ばれる見解収集機能が、各ＡＰに分散され、それら見解が、ＡＶＰに転送される場合に一連の契約者により連続的に収集されるようにする。見解収集及び生成がこの手法で統合されるならば、全ＡＰの中で前もって提出順序又は提出チェーン（ｓｕｂｍｉｓｓｉｏｎ　ｃｈａｉｎ）が設定されていることを要する。このチェーンにおける最初のＡＰがその見解を生成した後に、見解がそのチェーン中の第２のＡＰに送信される。第１のＡＰから見解を受信すると、第２のＡＰは自身の見解を作成する契機又はトリガとなる。そして、両見解がそのチェーンにおける第３のＡＰに転送される、等々である。この手順は提出チェーンにおける各ＡＰによって実行され、最終的に総ての見解が、提出チェーンの最後のＡＰによってＡＶＰに送信される。この場合に、ＴＩＤ及びＮＩＴも省略され得る。
【０１１２】
　図５のコンピュータシステムに、このような統合化された見解収集及び作成システムの具体例が示されている。図５に示されるように、ローカル契約チャネル５０５を有する第１ＡＰ装置５０２は、契約に関する自身の見解５２２を作成する。見解５２２は、ローカル契約チャネル５０５を通じて第２ＡＰ装置５０４に送信される。第１ＡＰ装置５０２から見解５２２を受信すると、第２ＡＰ装置はその契約に関する自身の見解５２４を作成する。契約に関する両方の見解５２２，５２４は、契約チャネル５０３を通じてＡＶＰ５０６に送信される。場合によっては、更にこれらの見解が共に連結され、１つのメッセージとして送信され得る。この変形例では、見解はそれらが生成される際に収集されるので、システム５００が見解収集要素を包含することはもはや必要ない。ＡＶＰ５０６自身は、契約承認モジュール１１８と同じ契約承認モジュール５１０と、契約確認モジュール１１２と同じ契約確認モジュール５１２と、ユーザ及び装置データベース１１４と同じユーザ及び装置データベース５１４とを有する。
【０１１３】
　本発明の他の実施例は、統合された見解収集機構の結果として、多層契約見解（ｍｕｌｔｉ−ｌａｙｅｒｅｄ　ａｇｒｅｅｍｅｎｔ）の作成を可能にする。このシステムでは、各々の連続的なＡＰが、チェーンにて先行するＡＰから受信した契約データについてある操作を行う。最初の契約データは、第１ＡＰの見解に包含される。第２ＡＰは、それ自身の契約データの一部として第１ＡＰから受信した見解を利用し、受信した見解の機能に基づいてそれ自身の見解を生成する。最終的に、ＡＶＰが受信するものは、１つの多層見解である。ＡＡＭ及びＡＶＭと適切な暗号化／暗号解除アルゴリズムのような、ＡＶＰモジュールに関する物理的な分離との組み合わせによる、本発明によるこの変形例は、プライバシを維持する新たな機能を支援することが可能になる。本発明を電子投票に応用する実施例が後に説明される。
【０１１４】
　［本発明の応用例］
　図６に、本発明の第１応用例が示されている。これは、実際の小売店で顧客による支払いに関する無線支払いシステム６００である。この構成は、図５に示される連結された統合見解収集変形例に示されるものと同様である。この例では、セキュア取引サーバ（ＳＴＳ：Ｓｅｃｕｒｅ　Ｔｒａｎｓａｃｔｉｏｎ　Ｓｅｒｖｅｒ）と呼ばれるバックエンドサーバ６１０がＡＶＰである。ＳＴＳ６１０は、更に、金融機関６１２である取引処理要素に接続され、金融取引に関する実際の処理を実行する。ＡＰは顧客及び商人であり、彼らは自信のＡＰ装置６０２，６０４を有する。顧客に関し、ＡＰ装置６０２は、無線通信が可能であってＳＡＳ演算を実行し得る、パーソナルディジタルアシスタント（ＰＤＡ）、移動電話機、又はクレジットカードサイズの小型計算機のような無線通信機能を有する任意の移動体装置であり得る。商人に関し、ＡＰ装置は、ＷＬＡＮサービスエリア６１４にサービスを提供する無線ＬＡＮアクセスポイント６０６と、インターネット（契約チャネル６０８と言及される）を通じてバックエンドＳＴＳ６１０への接続を有するコンピュータ６０４であり得る。
【０１１５】
　契約は、現実的又は仮想的な商品を購入するための顧客及び商人間における金銭取引を要求するデータである。顧客が自身の（彼女の）購入依頼をまとめた後に、自身のＡＰ装置６０２は、取引に関する彼女の見解を作成する。この見解は、無線ＬＡＮアクセスサービスを利用して商人装置６０４に送信され、商人装置６０４が商人の見解を作成する契機となる。そして、商人装置が両方の見解をセキュアインターネット接続として実現される契約チャネルを通じてＳＴＳ６１０に共に送信される。ＳＴＳ６１０が暗号解除により商人及び顧客の身元を確認した後に、それは見解から金銭取引要求データを抽出し、基本的な確認手順を実行する。それが成功すると、ＳＴＳは、更なる取引処理及び最終的な金銭交換のために、その要求を金融機関６１２に転送する。金融機関６１２からの結果はＳＴＳ６１０に返送され、商人及び顧客両者に対するレシートとして暗号化される。両レシートは契約チャネルを通じて商人装置６０４に送信され、商人装置６０４は無線ＬＡＮ通じて顧客レシートを顧客装置６０２に転送する。変形例では、その購入が２つの段階で生じ、その第１段階は商人及び顧客が購入を要求する際の取引であり、第２段階は、顧客が取引に使用する金融口座を選択しながら、顧客及び商人がその購入を確認する際の取引である。
【０１１６】
　この例では、顧客ＡＰ装置６０２がＡＶＰ６１０への直接的な通信リンクを所有せず、クラアイント措置６０２から見解を受信した後に、商人装置６０４がその見解を連結することを利用する統合見解収集法を、無線支払いアプリケーションが利用している。ＡＶＰ側では、認証処理及び確認処理は、ＳＴＳ６１０における同一場所で行われる。本発明による要素に加えて、アプリケーションは、アプリケーション固有の更なる処理を実行するために、金融機関６１２に対する付加的な取引処理要素を有し得る。
【０１１７】
　図７に、第２の応用例が示されている。これは電子投票システム７００である。本システムは、統合見解収集機能及び多層契約を利用する本発明の変形例である。本手法は、公式の投票所（ｖｏｔｉｎｇ　ｓｔａｔｉｏｎ）における無線投票を可能にし、以下の特質を与え（利用し）、それらは：登録された投票者の認証、投票所認証、投票者匿名性、投票機密性、投票監査（ｖｏｔｅ　ａｕｄｉｔｉｎｇ）、及び投票者毎に１票を保証することである。それらの装置７０２，７０４は、ＡＰ装置である。認証サーバ７０６及び投票センタ７０８は、共に、ＡＶＰ及び取引処理の機能を実現する。
【０１１８】
　投票用紙又はバロット（ｂａｌｌｏｔ）より成る契約データは、投票者からの要求により投票所から取得される。投票者は自信の装置によりそのバロットを受信し、登場情報を記入する。記入されたバロットは、先ず、ＳＡＳＥに関する標準的な暗号法で、投票者装置７０２の投票暗号化機能部７１０により暗号化される。暗号化されたバロットデータは、その後に投票所７０４に送信される。投票所７０４は、投票所により生成されたキーを利用しながら、そのステーション暗号化機能部７１８を利用してバロットを二重に暗号化する。この投票アプリケーションにおける付加的な条件は、バロットデータを暗号化するのに使用される実際の暗号アルゴリズムが、「可換（ｃｏｍｍｕｔａｔｉｖｅ）」でなければならないことである。即ち、複数的に暗号解除されるデータを生成するために使用される総ての暗号解除に関する対応する暗号解除が適用され、当初のプレインテキストが明らかにされ得る限り、複数的に暗号化されたデータの部分に適用される暗号解除の順序は問われない。最近の対称ストリーム暗号の多くはそのような種別に包含されるので、本システムにもそれらが使用され得る。
【０１１９】
　二重に暗号化されたバロットが、投票者データベース７１６に格納された情報を利用して、投票者確認サーバ７０６に送信された後に、投票者確認サーバ７０６は、投票者確認機能部７１４を利用して、投票者装置７０２により適用された暗号化を除去する。結果のバロットは、投票所キーで更に暗号化されており、従って投票者承認サーバ７０６によって読み取ることはできず、それはその後に投票センタ７０８に転送される。投票センタ７０８は、暗号化されたそのバロットをステーション承認サーバ７１８に伝送する。ステーション承認サーバ７１８は、投票所データベース７２２を利用して、バロットの内容を明らかにするために、投票所で適用された暗号化を取り除く。バロット及び見解に含まれるいくつかの付加的な情報は、バロット確認サーバ７２０に伝送される。これは、バロットが合致していることを確認するために、いくつかの特定の照合規則を適用する。バロットが確認されたならば、プレインテキストバロットが、投票計数及び他の投票情報収集用の投票処理機能部７２４に伝送される。
【０１２０】
　本発明の変形例及び可換な暗号化アルゴリズムを応用することで、投票システムは、バロットの秘匿性を尚も維持しつつ、正当な投票所から（投票センタ７０６によって）投票情報を収集しつつ、（投票者認証サーバ６０６によって）投票者を認証することが可能である。このプロセスの際に、（投票者装置以外の）単独の何らの要素も、特定の投票者が投票したのが誰であるか又は完全に暗号解除した投票がどの投票者によるものかを発見することはできない。
【０１２１】
　［トークン］
　ＳＡＳの他のアプリケーションは、チケットと考えられ得る「トークン（ｔｏｋｅｎ）」と呼ばれる特定のメッセージを安全に配信する方法を提供するものである。そのようなトークンは、契約の結果としてＡＶＰにより作成され、１人又はそれ以上の契約の会員又はメンバに送信される。それらは、直接的にＡＶＰと連絡することなしに、認証の時点で契約の他のメンバを認証するために、以前に承認した契約のメンバによって使用され得る。セカンドユース（ｓｅｃｏｎｄ　ｕｓｅ）は、直接的にＡＶＰと連絡することなしに、認証の時点で、第三者（当初の契約の当事者であったりなかったりする。）により以前に認証された契約結果の提示（ｐｒｅｓｅｎｔａｔｉｏｎ）を認証することである。トークンはチケットとして利用されることが可能であり、前者の場合には、（航空券のように）チケット所有者とチケットの一致が重要であり、後者の場合には、チケット所有者とチケットの一致は重要でなく、チケットの正当性のみが重要である。２者間に強力なセキュリティが備わっていない場合には、トークンは１回だけ使用されるべきである。
【０１２２】
　ＡＰ１，ＡＰ２が、ＡＶＰによって確認される契約中の２者であるとする。将来的なある時点で、ＡＰ２は、ＡＶＰと再びやりとりせずにＡＰ１の身元を確認し得ることを希望する。トークンは、ＡＶＰ応答メッセージ形式であり、応答メッセージの契約データ部分が、特定のトークン識別情報を包含する。
【０１２３】
　図８は、第三者確認可能トークンを生成するために本発明を利用する方法８００を示す。
【０１２４】
　図８に示されるように、トークンがＡＶＰによってペアで生成され、一方がトークン８０１と呼ばれ、他方がトークンレシート８２１と呼ばれる。トークン８０１は、認証されるべき者、ＡＰ１に送信される一方、トークンレシート８２１は、認証サービスを希望する者、ＡＰ２に送信される。
【０１２５】
　図８に、トークン及びトークンレシートのフォーマットが示される。両者はＡＶＰ応答メッセージとして同一形式にフォーマットされる。トークン及びトークンレシート両者のプレインテキスト部は、上述したような、他のＡＶＰ応答メッセージと同一のフィールドを含む。特に、トークン８０１のプレインテキスト部は、ＤＩＤ１　８０２、ＴＳ１　８０４、ＤＵＩＤ１　８０６を含み、トークンレシート８２１のプレインテキスト部は、ＤＩＤ２　８２２、ＴＳ２　８２４及びＤＵＩＤ８２６を含む。トークン８０１の暗号化部は、トークン対（ペア）を一義的に見分けるために使用されるトークン識別子ＴＫＩＤ８０８、ＡＰ２のＤＩＤ８１０、トークンコード８１２、及びトークンに関連する他のデータ８１４を包含する。トークン８０１の暗号化テキスト部は、ＡＰ１の現在のユーザに対する標準的なＳＡＳＥを利用して作成されたキーを利用して、ＡＶＰにより暗号化される。トークン８２１は、２つの相違点を除いてトークンとほとんど同様にフォーマットされる。第１の相違は、トークンレシート８２１に含まれるトークンコード８３２が、ＳＡＳＥを利用して、タイムスタンプを除くＡＰ１のパラメータと供に最初に暗号化される。タイムスタンプは、ＡＶＰによって選択される任意の将来的な時間値ＴＳｖであり得る。そのようなＴＳｖ８２９も、トークンレシート８２１の暗号テキスト部に包含され、それがトークン及びトークンレシートの第２の相違である。
【０１２６】
　トークンを受信すると、その者の身元が確認されるべきであるＡＰ１は、トークンを暗号解除し、ＴＫＩＤ８０８、ＤＩＤ８１０、トークンコード８１２及びトークンデータ８１４を更なる利用のために格納する。確認する者であるＡＰ２は、ＴＫＩＤ８２８、ＴＳｖ８２９、ＤＩＤ１　８３０、トークンコード８３２及びトークンデータ８３４を格納する。ＡＰ２２より格納されるトークンコード８３２は、ＡＰ１及びＴＳｖに関するパラメータを利用してＳＡＳＥによって更に暗号化される。一方、ＡＰ１によって格納されるトークンコード８１２はプレインテキスト形式におけるものである。
【０１２７】
　トークン確認の時点にて、トークンのＴＫＩＤ８２８及びＴＳｖ８２９を包含するトークン要求メッセージを送出することで、ＡＰ１がトークンを配信することを、ＡＰ２が要求する。ＡＰ１はその要求を受信し、自身のＳＡＳＥパラメータ及びタイムスタンプ値としてのＴＳｖと供に、トークンコード８１２を暗号化する。そして、ＡＰ１は暗号化されたトークンコードをＡＰ２に送信する。ＡＰ２では、受信した暗号化トークンコードが、ローカルに格納されているトークンコード８３２とビット毎に同一であることを見だしたならば、そのトークンは確認され、以後ユーザは契約のメンバであるとして認証される。
【０１２８】
　第２の例では、トークン所有者の身元は重要でなく、当初のトークン所有者が暗号化されたトークンを第三者に伝送し得る。ＡＰ１が当初のトークン所有者であり、ＡＰ２が確認者であるとする。第三者Ｐは、暗号化されたトークンと、ＴＫＩＤ，ＴＳｖ，ＤＩＤ２のような必要なパラメータとを格納する必要がある。Ｐは、暗号化されていないＴＫＩＤ，ＴＳｖ及びトークン（ＡＰ１により暗号化される）を包含するメッセージをＡＰ２に送信することで、ＡＰ２にトークンを提示する。
【０１２９】
　トークンは、ある者が契約に関する正当な結果（ｒｅｓｕｌｔ）を有することを確認するのに有益である。例えば、ある者が移動計算機を利用して、無線で映画のチケットを複数購入し、１つを同伴者に無線送信する。各チケットが購入されたときに、ユーザは彼女の装置で各チケットに関する暗号化されたトークン、及びチケット数の合計、時間、場所等のいくつかの付加的なデータを受信する。また、映画館もそのトークン情報を受信する。に入力時点で、各ユーザは無線で１つ又はそれ以上のトークンを提示し、入力が許可される。
【０１３０】
　また、本システムは、本発明によるプロセス及びデータ構造が格納及び分散され得る、磁気及び光学ディスク、ＲＡＭ、ＲＯＭ等のような永久的な又は取り外し可能な格納部又はストレージを包含する。また、このプロセスは、例えばインターネットのようなネットワークを通じたダウンロードによって分散され得る。
【０１３１】
　以上詳細な説明により、本発明に関する多くの特徴及び利点が明白になり、それ故に、特許請求の範囲に、本発明の精神及び範囲内にそのような総ての本発明の特徴及び利点を包含することが意図される。更に、多くの修正及び変形が当業者に明確に理解され、図示及び説明した詳細な構成及び動作に本発明を限定することは意図されず、従って、適切な総ての修正及び変形は、特許請求の範囲に網羅され得る。
【０１３２】
　以下、本発明の課題を解決する手段を例示的に列挙する。
【０１３３】
　（付記１）
　２者契約を安全に送信及び確認するコンピュータシステムであって、当該システムが：
　第１の者により操作され、前記２者契約の第１見解を作成及び送信する第１装置であって、前記第１見解が、暗号化された部分及び暗号化されていないプレインテキスト部分を包含するところの第１装置；
　第２の者により操作され、前記２者契約の第２見解を作成及び送信する第２装置であって、前記第２見解が、暗号化された部分及び暗号化されていないプレインテキスト部分を包含するところの第２装置；及び
　前記第１見解及び前記第２見解を受信し、前記第１見解の前記暗号化された部分及び前記第２見解の前記暗号化された部分の暗号化を解除し、第１見解が前記第１の者により作成されたこと、及び第２見解が前記第２の者により作成されたことを確認し、第１見解の暗号解除された部分と第２見解の暗号解除された部分を比較し、比較結果に基づいて信号を送信する、確認者側を形成する第３装置；
　を備えることを特徴とするコンピュータシステム。
　（付記２）
　前記第１装置が前記第１見解を前記第３装置に送信し且つ前記第２装置が前記第２見解を前記第３装置に別個に送信すること、又は前記第１装置が前記第１見解を前記第２装置に送信し、前記第２装置が前記第１見解及び前記第２見解を連結し且つ連結された見解を前記第３装置に送信することを特徴とする付記１記載のコンピュータシステム。
　（付記３）
　前記第３装置が、前記第１見解の暗号解除された部分が前記契約に関して前記第２見解の暗号解除された部分に合致することを判定する場合に、又は前記第３装置が、前記第１見解の暗号解除された部分が前記契約に関して前記第２見解の暗号解除された部分に合致しないことを判定する場合に、前記第３装置が前記第１装置及び前記第２装置に応答を送信することを特徴とする付記２記載のコンピュータシステム。
　（付記４）
　前記第１装置の見解の前記プレインテキスト部が、前記第１装置の装置識別子、及び前記第１装置の取引タイムスタンプを包含し、前記暗号化された部分が、契約に相当するデータ、及び前記第２装置の装置識別子を包含することを特徴とする付記３記載のコンピュータシステム。
　（付記５）
　前記プレインテキスト部が選択的に取引ＩＤを包含し、前記暗号化された部分が、取引ＩＤ、メッセージダイジェスト、取引タイムスタンプ、第１装置のユーザのユーザＩＤ及びパディングデータの内の１つ又はそれ以上を包含することを特徴とする付記４記載のコンピュータシステム。
【０１３４】
　（付記６）
　前記第１装置からの前記見解の暗号化された部分が、対称的秘密暗号キー及び暗号化アルゴリズムを利用して暗号化され、前記キー及び暗号化アルゴリズムは前記第１装置及び前記第３装置にのみ知られており、前記キーは、前記第１装置及び前記第２装置の間又は前記第１装置及び前記第３装置の間で通信されないことを特徴とする付記５記載のコンピュータシステム。
【０１３５】
　（付記７）
　前記見解を暗号化するために前記第１装置により使用される前記暗号キーが、プライベート確認エントリ（ＰＩＥ）より成る秘密の値と、一群の格納済みパラメータ及び関数に基づく決定性アルゴリズムとに基づいて生成され、前記ＰＩＥが、前記第１装置のオペレータにのみ知られており、前記装置には格納されず、前記第１装置により作成された暗号化された見解を受信する第３装置にも知られ、前記決定性アルゴリズム並びに前記一群の格納済みパラメータ及び関数が、前記第１装置及び前記第３装置にのみ知られていることを特徴とする付記６記載のコンピュータシステム。
【０１３６】
　（付記８）
　前記第１装置により前記第１見解を暗号化し及び前記第３装置により前記第１見解の暗号化を解除するため、同一の取引タイムスタンプの与えられた同一の暗号キーを決定性的に作成するために、前記第１装置及び前記第３装置の各々が、既知の擬似乱数生成器、既知のハッシュ関数、及び既知の変換関数を有し：
　前記擬似乱数生成器が、シード、基準タイムスタンプ及び取引タイムスタンプを入力として受信し、出力として乱数を作成し；
　前記変換関数が、前記乱数及び前記ＰＩＥを入力としてとり、出力としての数を生成し；及び
　前記ハッシュ関数が、入力として前記数をとり、出力として暗号キーを生成する；
　ことを特徴とする付記７記載のコンピュータシステム。
【０１３７】
　（付記９）
　前記第３装置から前記第１装置への応答がプレインテキスト部分及び暗号化された部分を包含し、前記応答のプレインテキスト部分が、前記第１装置の装置識別子及び取引タイムスタンプを包含し、選択的に取引ＩＤを包含し、前記暗号化された部分が、契約に対する応答に相当するデータを包含し、前記第１装置の装置識別子、前記第２装置の装置識別子、取引ＩＤ、メッセージダイジェスト、取引タイムスタンプ、前記第１装置のユーザのユーザＩＤ及びパディングデータの内の１つ又はそれ以上を包含することを特徴とする付記３記載のコンピュータシステム。
　（付記１０）
　前記第３装置から前記第１装置への応答の暗号化された部分が、対称的秘密暗号キー及び暗号化アルゴリズムを利用して暗号化され、前記キー及び暗号化アルゴリズムは前記第１装置及び前記第３装置にのみ知られており、前記キーは、前記第１装置及び前記第２装置の間又は前記第１装置及び前記第３装置の間で通信されないことを特徴とする付記９記載のコンピュータシステム。
【０１３８】
　（付記１１）
　前記第１装置への応答の暗号化される部分を暗号化するために前記第３装置により使用される前記暗号キーが、プライベート確認エントリ（ＰＩＥ）より成る秘密の値と、一群の格納済みパラメータ及び関数に基づく決定性アルゴリズムとに基づいて生成され、前記ＰＩＥが、前記第１装置のオペレータにのみ知られており、前記装置には格納されず、前記決定性アルゴリズム並びに前記一群の格納済みパラメータ及び関数が、前記第１装置及び前記第３装置にのみ知られていることを特徴とする付記１０記載のコンピュータシステム。
【０１３９】
　（付記１２）
　前記第３装置により前記応答を暗号化し及び前記第１装置により前記応答の暗号化を解除するため、同一の取引タイムスタンプの与えられた同一の暗号キーを決定性的に作成するために、前記第１装置及び前記第３装置の各々が、既知の擬似乱数生成器、既知のハッシュ関数、及び既知の変換関数を有し：
　前記擬似乱数生成器が、シード、基準タイムスタンプ及び取引タイムスタンプを入力として受信し、出力として乱数を作成し；
　前記変換関数が、前記乱数及び前記ＰＩＥを入力としてとり、出力としての数を生成し；及び
　前記ハッシュ関数が、入力として前記数をとり、出力として暗号キーを生成する；
　ことを特徴とする付記１１記載のコンピュータシステム。
【０１４０】
　（付記１３）
　前記第２装置の見解の前記プレインテキスト部が、前記第２装置の装置識別子、及び前記第２装置の取引タイムスタンプを包含し、前記暗号化された部分が、契約に相当するデータ、及び前記第１装置の装置識別子を包含することを特徴とする付記３記載のコンピュータシステム。
　（付記１４）
　前記プレインテキスト部が選択的に取引ＩＤを包含し、前記暗号化された部分が、取引ＩＤ、メッセージダイジェスト、取引タイムスタンプ、第２装置のユーザのユーザＩＤ及びパディングデータの内の１つ又はそれ以上を包含することを特徴とする付記１３記載のコンピュータシステム。
【０１４１】
　（付記１５）
　前記第２装置からの前記見解の暗号化された部分が、対称的秘密暗号キー及び暗号化アルゴリズムを利用して暗号化され、前記キー及び暗号化アルゴリズムは前記第２装置及び前記第３装置にのみ知られており、前記キーは、前記第１装置及び前記第２装置の間又は前記第２装置及び前記第３装置の間で通信されないことを特徴とする付記１４記載のコンピュータシステム。
【０１４２】
　（付記１６）
　前記見解を暗号化するために前記第２装置により使用される前記暗号キーが、プライベート確認エントリ（ＰＩＥ）より成る秘密の値と、一群の格納済みパラメータ及び関数に基づく決定性アルゴリズムとに基づいて生成され、前記ＰＩＥが、前記第２装置のオペレータにのみ知られており、前記第２装置には格納されず、前記第２装置により作成された暗号化された見解を受信する第３装置にも知られ、前記決定性アルゴリズム並びに前記一群の格納済みパラメータ及び関数が、前記第２装置及び前記第３装置にのみ知られていることを特徴とする付記１５記載のコンピュータシステム。
【０１４３】
　（付記１７）
　前記第２装置により前記第２見解を暗号化し及び前記第３装置により前記第２見解の暗号化を解除するため、前記第２装置及び前記第３装置の各々が、既知の擬似乱数生成器、既知のハッシュ関数、及び既知の変換関数を有し、同一の取引タイムスタンプの与えられた同一の暗号キーを決定性的に作成し：
　前記擬似乱数生成器が、シード、基準タイムスタンプ及び取引タイムスタンプを入力として受信し、出力として乱数を作成し；
　前記変換関数が、前記乱数及び前記ＰＩＥを入力としてとり、出力としての数を生成し；及び
　前記ハッシュ関数が、入力として前記数をとり、出力として暗号キーを生成する；
　ことを特徴とする付記１６記載のコンピュータシステム。
【０１４４】
　（付記１８）
　前記第３装置から前記第２装置への応答がプレインテキスト部分及び暗号化された部分を包含し、前記応答のプレインテキスト部分が、前記第２装置の装置識別子及び取引タイムスタンプを包含し、選択的に取引ＩＤを包含し、前記暗号化された部分が、契約に対する応答に相当するデータを包含し、前記第２装置の装置識別子、前記第１装置の装置識別子、取引ＩＤ、メッセージダイジェスト、取引タイムスタンプ、前記第２装置のユーザのユーザＩＤ及びパディングデータの内の１つ又はそれ以上を包含することを特徴とする付記３記載のコンピュータシステム。
　（付記１９）
　前記第３装置から前記第２装置への応答の暗号化された部分が、対称的秘密暗号キー及び暗号化アルゴリズムを利用して暗号化され、前記キー及び暗号化アルゴリズムは前記第２装置及び前記第３装置にのみ知られており、前記キーは、前記第１装置及び前記第２装置の間又は前記第２装置及び前記第３装置の間で通信されないことを特徴とする付記１８記載のコンピュータシステム。
【０１４５】
　（付記２０）
　前記応答の暗号化される部分を暗号化するために前記第３装置により使用される前記暗号キーが、プライベート確認エントリ（ＰＩＥ）より成る秘密の値と、一群の格納済みパラメータ及び関数に基づく決定性アルゴリズムとに基づいて生成され、前記ＰＩＥが、前記第１装置のオペレータにのみ知られており、前記第２装置には格納されず、前記第３装置にも知られており、前記決定性アルゴリズム並びに前記一群の格納済みパラメータ及び関数が、前記第２装置及び前記第３装置にのみ知られていることを特徴とする付記１９記載のコンピュータシステム。
【０１４６】
　（付記２１）
　前記第３装置により前記応答を暗号化し及び前記第２装置により前記応答の暗号化を解除するため、前記第３装置及び前記第２装置の各々が、既知の擬似乱数生成器、既知のハッシュ関数、及び既知の変換関数を有し、同一の取引タイムスタンプの与えられた同一の暗号キーを決定性的に作成し：
　前記擬似乱数生成器が、シード、基準タイムスタンプ及び取引タイムスタンプを入力として受信し、出力として乱数を作成し；
　前記変換関数が、前記乱数及び前記ＰＩＥを入力としてとり、出力としての数を生成し；及び
　前記ハッシュ関数が、入力として前記数をとり、出力として暗号キーを生成する；
　ことを特徴とする付記２０記載のコンピュータシステム。
【０１４７】
　（付記２２）
　Ｎ者間の多者契約を安全に送信及び確認するコンピュータシステムであって、Ｎは２より大きく又は等しく、当該システムは：
　前記契約に関する者によりそれぞれ操作され、前記多者契約の見解を作成及び送信するＮ個の装置群であって、各見解が、暗号化された部分及び暗号化されていないプレインテキスト部分を包含するところの装置群；及び
　Ｎ人の契約者から見解を受信し、各見解の前記暗号化された部分の暗号化を解除し、各見解がそれに関連する契約者により作成されたことを確認し、Ｎ人の契約者からの暗号化された見解を比較し、比較結果に基づいて応答信号を送信する、確認者側を形成するＮ＋１番目の装置；
　を備えることを特徴とするコンピュータシステム。
　（付記２３）
　Ｎ個の装置の各々が、その見解を、前期確認者側を形成するＮ＋１番目の装置に独立に送信すること、又はＮ個の見解が集まるまでＮ個の装置の各々が、その見解を見解のリストに連結し、各見解はリストに１回登場しており、そのリストが前記Ｎ＋１番目の装置に送信されるようにすることを特徴とする付記２２記載のコンピュータシステム。
【０１４８】
　（付記２４）
　前記多者契約における前記Ｎ個の装置からのＮ個総ての見解の暗号解除された部分が、前記契約に関して互いに合致することを判定する場合に、又は前記多者契約における前記Ｎ個の装置からのＮ個総ての見解の暗号解除された部分が、前記契約に関して互いに合致しないことを判定する場合に、前記Ｎ＋１番目の装置が、前記多者契約におけるＮ個の装置の各々に応答を送信することを特徴とする付記２３記載のコンピュータシステム。
【０１４９】
　（付記２５）
　装置の見解の前記プレインテキスト部が、各装置の装置識別子及び取引タイムスタンプを包含し、前記暗号化された部分が、多者契約に相当する部分、及び多者契約における他の装置の各々についての装置識別子を包含することを特徴とする付記２４記載のコンピュータシステム。
【０１５０】
　（付記２６）
　装置からの見解の前記プレインテキスト部が選択的に取引ＩＤ、契約における当事者数を包含し、前記暗号化された部分が、１つ又はそれ以上の取引ＩＤ、契約における当事者数、メッセージダイジェスト、取引タイムスタンプ、装置のユーザのユーザＩＤ及びパディングデータの内の１つ又はそれ以上を包含することを特徴とする付記２５記載のコンピュータシステム。
【０１５１】
　（付記２７）
　装置からの見解の暗号化された部分が、対称的秘密暗号キー及び暗号化アルゴリズムを利用して暗号化され、前記キー及び暗号化アルゴリズムは該装置及びＮ＋１番目の装置にのみ知られており、前記キーは通信されないことを特徴とする付記２６記載のコンピュータシステム。
【０１５２】
　（付記２８）
　前記見解を暗号化するために多者契約における装置により使用される前記暗号キーが、プライベート確認エントリ（ＰＩＥ）より成る秘密の値と、一群の格納済みパラメータ及び関数に基づく決定性アルゴリズムとに基づいて生成され、前記ＰＩＥが、該装置のオペレータにのみ知られており、前記装置には格納されず、暗号化された見解を受信する前記Ｎ＋１番目の装置にも知られており、前記決定性アルゴリズム並びに前記一群の格納済みパラメータ及び関数が、前記装置及び前記Ｎ＋１番目の装置にのみ知られていることを特徴とする付記２７記載のコンピュータシステム。
【０１５３】
　（付記２９）
　装置による見解を暗号化し及びＮ＋１番目の装置により前記見解の暗号化を解除するため、前記多者契約における装置及び前記Ｎ＋１番目の装置の各々が、既知の擬似乱数生成器、既知のハッシュ関数、及び既知の変換関数を有し、同一の取引タイムスタンプの与えられた同一の暗号キーを決定性的に作成し：
　前記擬似乱数生成器が、シード、基準タイムスタンプ及び取引タイムスタンプを入力として受信し、出力として乱数を作成し；
　前記変換関数が、前記乱数及び前記ＰＩＥを入力としてとり、出力としての数を生成し；及び
　前記ハッシュ関数が、入力として前記数をとり、出力として暗号キーを生成する；
　ことを特徴とする付記２８記載のコンピュータシステム。
【０１５４】
　（付記３０）
　前記Ｎ＋１番目の装置から多者契約におけるある装置への応答がプレインテキスト部分及び暗号化された部分を包含し、前記応答のプレインテキスト部分が、該装置の装置識別子及び取引タイムスタンプを包含し、選択的に取引ＩＤを包含し、前記暗号化された部分が、契約に対する応答に相当するデータを包含し、多者契約における装置の装置識別子、取引ＩＤ、多者契約における当事者数、メッセージダイジェスト、取引タイムスタンプ、装置のユーザのユーザＩＤ及びパディングデータの内の１つ又はそれ以上を包含することを特徴とする付記２９記載のコンピュータシステム。
【０１５５】
　（付記３１）
　多者契約における装置に対するＮ＋１番目の装置の応答の暗号化される部分が、対称的秘密暗号キー及び暗号化アルゴリズムを利用して暗号化され、前記キー及び暗号化アルゴリズムは該装置及びＮ＋１番目の装置にのみ知られており、前記キーは通信されないことを特徴とする付記３０記載のコンピュータシステム。
【０１５６】
　（付記３２）
　多者契約における装置に対する応答を暗号化するためにＮ＋１番目の装置により使用される前記暗号キーが、プライベート確認エントリ（ＰＩＥ）より成る秘密の値と、一群の格納済みパラメータ及び関数に基づく決定性アルゴリズムとに基づいて生成され、前記ＰＩＥが、該装置のオペレータにのみ知られており、前記装置には格納されず、前記Ｎ＋１番目の装置にも知られており、前記決定性アルゴリズム並びに前記一群の格納済みパラメータ及び関数が、前記装置及び前記Ｎ＋１番目の装置にのみ知られていることを特徴とする付記３１記載のコンピュータシステム。
【０１５７】
　（付記３３）
　Ｎ＋１番目の装置により応答を暗号化し及び多者契約における装置により応答の暗号化を解除するため、前記多者契約における装置及び前記Ｎ＋１番目の装置の各々が、既知の擬似乱数生成器、既知のハッシュ関数、及び既知の変換関数を有し、同一の取引タイムスタンプの与えられた同一の暗号キーを決定性的に作成し：
　前記擬似乱数生成器が、シード、基準タイムスタンプ及び取引タイムスタンプを入力として受信し、出力として乱数を作成し；
　前記変換関数が、前記乱数及び前記ＰＩＥを入力としてとり、出力としての数を生成し；及び
　前記ハッシュ関数が、入力として前記数をとり、出力として暗号キーを生成する；
　ことを特徴とする付記３２記載のコンピュータシステム。
【０１５８】
　（付記３４）
　２者契約を安全に送信及び確認するコンピュータシステムにおける方法であって：
　第１の者により操作される第１装置によって、前記２者契約の第１見解を作成及び送信するステップであって、前記第１見解が、暗号化された部分及び暗号化されていないプレインテキスト部分を包含するところのステップ；
　第２の者により操作される第２装置によって、前記２者契約の第２見解を作成及び送信するステップであって、前記第２見解が、暗号化された部分及び暗号化されていないプレインテキスト部分を包含するところのステップ；及び
　確認者側を形成する第３装置によって、前記第１見解及び前記第２見解を受信し、前記第１見解の前記暗号化された部分及び前記第２見解の前記暗号化された部分の暗号化を解除し、第１見解が前記第１の者により作成されたこと及び第２見解が前記第２の者により作成されたことを確認し、第１見解の暗号解除された部分と第２見解の暗号解除された部分を比較し、比較結果に基づいて信号を送信するステップ；
　より成ることを特徴とする方法。
　（付記３５）
　Ｎ者間の多者契約を安全に送信及び確認するコンピュータシステムにおける方法であって、Ｎは２より大きく又は等しく、当該方法は：
　前記契約に関する者によりそれぞれ操作されるＮ個の装置群によって、前記多者契約の見解を作成及び送信するステップであって、各見解が、暗号化された部分及び暗号化されていないプレインテキスト部分を包含するところのステップ；及び
　確認者側を形成するＮ＋１番目の装置によって、Ｎ人の契約者から見解を受信し、各見解の前記暗号化された部分の暗号化を解除し、各見解がそれに関連する契約者により作成されたことを確認し、Ｎ人の契約者からの暗号化された見解を比較し、比較結果に基づいて応答信号を送信するステップ；
　より成ることを特徴とする方法。）
　（付記３６）
　２者契約を安全に送信及び確認するコンピュータを制御するコンピュータ読み取り可能な記憶媒体であって：
　第１の者により操作される第１装置によって、前記２者契約の第１見解を作成及び送信するステップであって、前記第１見解が、暗号化された部分及び暗号化されていないプレインテキスト部分を包含するところのステップ；
　第２の者により操作される第２装置によって、前記２者契約の第２見解を作成及び送信するステップであって、前記第２見解が、暗号化された部分及び暗号化されていないプレインテキスト部分を包含するところのステップ；及び
　確認者側を形成する第３装置によって、前記第１見解及び前記第２見解を受信し、前記第１見解の前記暗号化された部分及び前記第２見解の前記暗号化された部分の暗号化を解除し、第１見解が前記第１の者により作成されたこと、及び第２見解が前記第２の者により作成されたことを確認し、第１見解の暗号解除された部分と第２見解の暗号解除された部分を比較し、比較結果に基づいて信号を送信するステップ；
　を実行させる機能部より成ることを特徴とする記憶媒体。
【０１５９】
　（付記３７）
　Ｎ者間の多者契約を安全に送信及び確認するコンピュータを制御するコンピュータ読み取り可能な記憶媒体であって、Ｎは２より大きく又は等しく、当該記憶媒体は：
　前記契約に関する者によりそれぞれ操作されるＮ個の装置群によって、前記他者契約の見解を作成及び送信するステップであって、各見解が、暗号化された部分及び暗号化されていないプレインテキスト部分を包含するところのステップ；及び
　確認者側を形成するＮ＋１番目の装置によって、Ｎ人の契約者から見解を受信し、各見解の前記暗号化された部分の暗号化を解除し、各見解がそれに関連する契約者により作成されたことを確認し、Ｎ人の契約者からの暗号化された見解を比較し、比較結果に基づいて信号を送信するステップ；
　を実行させる機能部より成ることを特徴とする記憶媒体。
【図面の簡単な説明】
【０１６０】
【図１】本発明によるセキュリティ契約締結プロトコル（ＳＡＳ）が使用されるコンピュータシステムを例示する図である。
【図２】本発明によるセキュリティ契約締結プロトコル（ＳＡＳ）の暗号化方法を示す図である。
【図３】本発明によるセキュリティ契約締結プロトコル（ＳＡＳ）の暗号解除方法、及び相互参照フィールドの照合方法を示す図である。
【図４】本発明によるセキュリティ契約締結プロトコル（ＳＡＳ）が使用される別のコンピュータシステムを例示する図である。
【図５】ランダムビットパディングがどのように暗号化データフィールドに適用されるかを示す図である。
【図６】商品及びサービスの購入に関する本発明の適用例を示す図である。
【図７】本発明を電子投票に適用した本発明の別の適用例を示す図である。
【図８】第三者確認可能トークンを生成するために本発明がどのように使用され得るかを示す図である。
【符号の説明】
【０１６１】
　１０１　ＡＰ１
　１０２　ＡＰ２
　１０３　契約チャネル
　１０６　ＡＶＰ
　１０８　見解収集部
　１１８　契約認証
　１１２　契約確認
　１１４　ユーザ及び装置データベース
　１１３　取引チャネル
　１１６　取引処理部
　５０２　ＡＰ１
　５０４　ＡＰ２
　５０５　ローカル契約チャネル
　５０３　契約チャネル
　５０６　ＡＶＰ
　５１０　契約認証部
　５１２　契約確認部
　５１４　ユーザ及び装置データベース
　６０２　顧客装置
　６０４　商人取引サーバ
　６０６　無線ＬＡＮアクセスポイント
　６１４　無線ＬＡＮサービスエリア
　６１０　セキュア取引サーバ
　６１２　金融機関
　７０２　投票装置
　７０４　投票所
　７０６　投票者認証サーバ
　７０８　投票センタ
　７１６　投票者データベース
　７２２　投票所データベース
【図１】
2004072777.tif 000003
【図２】
2004072777.tif 000004
【図３】
2004072777.tif 000005
【図４】
2004072777.tif 000006
【図５】
2004072777.tif 000007
【図６】
2004072777.tif 000008
【図７】
2004072777.tif 000009
【図８】
2004072777.tif 000010