(57)【特許請求の範囲】
【請求項１】
安全性のあるメッセージを発信装置により符号化および送信するための方法であって、
（ａ）装置識別子、アプリケーション識別子、およびアプリケーション値を用いて第１のプロセスによりメッセージ値を生成するステップと、
（ｂ）該メッセージ値を、前記発信装置および１つまたは複数の意図する前記メッセージの受信装置にだけにしか実質的にわからない１つまたは複数の第１の秘密値と組み合わせて、秘密メッセージ値を確立するステップと、
（ｃ）該秘密メッセージ値および前記メッセージを符号化プロセスに適用して、安全性のあるメッセージブロックを形成するステップと、
（ｄ）アドレスを前記装置識別子、前記アプリケーション識別子、前記アプリケーション値、および前記安全性のあるメッセージブロックと組み合わせて、前記メッセージ、前記アドレス、前記装置識別子、前記アプリケーション識別子、および前記アプリケーション値を回復する前記１つまたは複数の前記意図する受信装置により復号化可能な、送信のための安全性のあるメッセージを形成するステップとを含む方法。
【請求項２】
前記装置識別子、前記アプリケーション識別子、および前記アプリケーション値の関連が、概ね一意に前記発信装置、前記メッセージおよびアプリケーションのうちの１つまたは複数の目的、および前記メッセージの識別子を識別し、かかるメッセージの識別は、前記符号化プロセスによりメッセージの内容に結び付けられるようになっている、請求項１記載の方法。
【請求項３】
前記ステップ（ｃ）における符号化プロセスが、
（ｅ）対称暗号化プロセス、
（ｆ）鍵ハッシュおよび対称暗号化技術のうちの一方を使用しての保全プロセス、
（ｇ）対称暗号化および鍵保全の双方を含むプロセス、
（ｈ）前記秘密メッセージ値を上位レベルのメッセージングプロトコルへ包含するステップのうちの１つまたは複数を含むものである請求項１記載の方法。
【請求項４】
受信装置が安全に送信されたメッセージを受信するための方法であって、
（ｉ）装置識別子、アプリケーション識別子、およびアプリケーション値のうちの１つまたは複数を受信した安全性のあるメッセージから抽出するステップと、
（ｊ）前記装置識別子、前記アプリケーション識別子、および前記アプリケーション値を用いて第１のプロセスによりメッセージ値を生成するステップと、
（ｋ）第２のプロセスに従い、前記装置識別子および前記アプリケーション識別子を用いて、発信装置および１つまたは複数の意図する前記メッセージの前記受信装置にだけにしか実質的にわからない１つまたは複数の秘密値を生成するステップと、
（ｌ）前記メッセージ値を該１つまたは複数の秘密値と組み合わせて、秘密メッセージ値を確立するステップと、
（ｍ）前記安全性のあるメッセージから安全性のあるメッセージブロックを抽出するステップと、
（ｎ）前記秘密メッセージ値および前記安全性のあるメッセージブロックを復号化プロセスに適用して、前記発信装置により安全に送信された前記安全に送信されたメッセージを形成するステップとを含む方法。
【請求項５】
安全性のあるメッセージを発信装置により符号化および送信するための装置であって、
（ａ）装置識別子、アプリケーション識別子、およびアプリケーション値を用いて第１のプロセスによりメッセージ値を生成するメッセージ生成手段と、
（ｂ）該メッセージ値を、前記発信装置および１つまたは複数の意図する前記メッセージの受信装置にだけにしか実質的にわからない１つまたは複数の第１の秘密値と組み合わせて、秘密メッセージ値を確立する第１の結合手段と、
（ｃ）該秘密メッセージ値および前記メッセージを符号化プロセスを行う符号化手段に適用して、安全性のあるメッセージブロックを形成する適用手段と、
（ｄ）アドレスを前記装置識別子、前記アプリケーション識別子、前記アプリケーション値、および前記安全性のあるメッセージブロックと組み合わせて、前記メッセージ、前記アドレス、前記装置識別子、前記アプリケーション識別子、および前記アプリケーション値を回復する前記１つまたは複数の前記意図する受信装置により復号化可能な、送信のための安全性のあるメッセージを形成する第２の結合手段とを備える装置。
【請求項６】
前記符号化手段が、
（ｅ）対称暗号化手段、
（ｆ）鍵ハッシュおよび対称暗号化技術のうちの一方を使用しての保全処理手段、
（ｇ）対称暗号化を行い、鍵保全性を保証する鍵対称処理手段、
（ｈ）前記秘密メッセージ値を上位レベルのメッセージングプロトコルに包含するための包含手段のうちの１つまたは複数を備えるものである請求項５記載の装置。
【請求項７】
受信装置が安全に送信されたメッセージを受信するための装置であって、
（ｉ）装置識別子、アプリケーション識別子、およびアプリケーション値のうちの１つまたは複数を受信した安全性のあるメッセージから抽出する抽出手段と、
（ｊ）前記装置識別子、前記アプリケーション識別子、および前記アプリケーション値を用いて第１のプロセスによりメッセージ値を生成するメッセージ生成手段と、
（ｋ）第２のプロセスに従い、前記装置識別子および前記アプリケーション識別子を用いて、発信装置および１つまたは複数の意図する前記メッセージの受信装置にだけにしか実質的にわからない１つまたは複数の秘密値を生成する秘密値生成手段と、
（ｌ）前記メッセージ値を該１つまたは複数の秘密値と組み合わせて、秘密メッセージ値を確立するメッセージ値結合手段と、
（ｍ）前記安全性のあるメッセージから安全性のあるメッセージブロックを抽出する安全性のあるメッセージ抽出手段と、
（ｎ）前記秘密メッセージ値および前記安全性のあるメッセージブロックを復号化プロセスに適用して、前記発信装置により安全に送信された前記安全に送信されたメッセージを形成する適用手段とを備える装置。
【請求項８】
安全性のあるメッセージを発信装置により符号化および送信するためのコンピュータプログラムを記録したコンピュータ読み取り可能媒体であって、該プログラムは、
（ａ）装置識別子、アプリケーション識別子、およびアプリケーション値を用いて第１のプロセスによりメッセージ値を生成するメッセージ生成ステップと、
（ｂ）該メッセージ値を、前記発信装置および１つまたは複数の意図する前記メッセージの受信装置にだけにしか実質的にわからない１つまたは複数の第１の秘密値と組み合わせて、秘密メッセージ値を確立する第１の結合ステップと、
（ｃ）該秘密メッセージ値および前記メッセージを符号化プロセスを行う符号化ステップに適用して、安全性のあるメッセージブロックを形成する適用ステップと、
（ｄ）アドレスを前記装置識別子、前記アプリケーション識別子、前記アプリケーション値、および前記安全性のあるメッセージブロックと組み合わせて、前記メッセージ、前記アドレス、前記装置識別子、前記アプリケーション識別子、および前記アプリケーション値を回復する前記１つまたは複数の前記意図する受信装置により復号化可能な、送信のための安全性のあるメッセージを形成する第２の結合ステップとを含むコンピュータ読み取り可能媒体。
【請求項９】
前記ステップ（ｃ）における符号化プロセスが、
（ｅ）対称暗号化ステップ、
（ｆ）鍵ハッシュおよび対称暗号化技術のうちの一方を使用しての保全処理ステップ、
（ｇ）対称暗号化を行い、鍵保全性を保証する鍵対称ステップ、
（ｈ）前記秘密メッセージ値を上位レベルのメッセージングプロトコルに包含する包含ステップのうちの１つまたは複数を含むものである請求項８記載のコンピュータ読み取り可能媒体。
【請求項１０】
受信装置が安全に送信されたメッセージを受信するためのコンピュータプログラムを記録したコンピュータ読み取り可能媒体であって、該プログラムは、
（ｉ）装置識別子、アプリケーション識別子、およびアプリケーション値のうちの１つまたは複数を受信した安全性のあるメッセージから抽出する抽出ステップと、
（ｊ）前記装置識別子、前記アプリケーション識別子、および前記アプリケーション値を用いて第１のプロセスによりメッセージ値を生成するメッセージ生成ステップと、
（ｋ）第２のプロセスに従い、前記装置識別子および前記アプリケーション識別子を用いて、発信装置および１つまたは複数の意図する前記メッセージの受信装置にだけにしか実質的にわからない１つまたは複数の秘密値を生成する秘密値生成ステップと、
（ｌ）前記メッセージ値を該１つまたは複数の秘密値と組み合わせて、秘密メッセージ値を確立するメッセージ値結合ステップと、
（ｍ）前記安全性のあるメッセージから安全性のあるメッセージブロックを抽出する安全性のあるメッセージブロック抽出ステップと、
（ｎ）前記秘密メッセージ値および前記安全性のあるメッセージブロックを復号化プロセスに適用して、前記発信装置により安全に送信された前記安全に送信されたメッセージを形成する適用ステップとを含むコンピュータ読み取り可能媒体。
【請求項１１】
安全性のあるメッセージを符号化し送信するための装置を備える発信装置と、１つまたは複数の受信装置とを備え、安全な通信を提供するシステムであって、前記発信装置は、
（ａ）装置識別子、アプリケーション識別子、およびアプリケーション値を用いて第１のプロセスによりメッセージ値を生成するメッセージ生成手段と、
（ｂ）該メッセージ値を、前記発信装置および１つまたは複数の意図する前記メッセージの受信装置にだけにしか実質的にわからない１つまたは複数の第１の秘密値と組み合わせて、秘密メッセージ値を確立する第１の結合手段と、
（ｃ）該秘密メッセージ値および前記メッセージを符号化プロセスを行う符号化手段に適用して、安全性のあるメッセージブロックを形成する適用手段と、
（ｄ）アドレスを前記装置識別子、前記アプリケーション識別子、前記アプリケーション値、および前記安全性のあるメッセージブロックと組み合わせて、前記メッセージ、前記アドレス、前記装置識別子、前記アプリケーション識別子、および前記アプリケーション値を回復する前記１つまたは複数の前記意図する受信装置により復号化可能な、送信のための安全性のあるメッセージを形成する第２の結合手段とを備え、
前記受信装置は、安全に送信されたメッセージを受信するための装置を備え、該受信装置は、
（ｅ）装置識別子、アプリケーション識別子、およびアプリケーション値のうちの１つまたは複数を受信した安全性のあるメッセージから抽出する抽出手段と、
（ｆ）前記装置識別子、前記アプリケーション識別子、および前記アプリケーション値を用いて第１のプロセスによりメッセージ値を生成するメッセージ生成手段と、
（ｇ）第２のプロセスに従い、前記装置識別子および前記アプリケーション識別子を用いて、発信装置および１つまたは複数の意図する前記メッセージの受信装置にだけにしか実質的にわからない１つまたは複数の秘密値を生成する秘密値生成手段と、
（ｈ）前記メッセージ値を該１つまたは複数の秘密値と組み合わせて、秘密メッセージ値を確立するメッセージ値結合手段と、
（ｉ）前記安全性のあるメッセージから安全性のあるメッセージブロックを抽出する安全性のあるメッセージ抽出手段と、
（ｊ）前記秘密メッセージ値および前記安全性のあるメッセージブロックを復号化プロセスに適用して、前記発信装置により安全に送信された前記安全に送信されたメッセージを形成する適用手段とを備えるシステム。
【請求項１２】
前記発信装置が、
（ｋ）第１の処理手段と、
（ｌ）受信手段との通信を確立し、維持するステップのうちの１つまたは複数を実施するよう適合される送信手段であって、前記第１の処理手段は該送信手段を制御するよう適合され、また機能（ａ）から（ｄ）をサポートするよう適合される送信手段とを備え、
前記受信装置が、
（ｍ）第２の処理手段と、
（ｎ）前記送信手段と共に通信を確立し、維持するステップのうちの１つまたは複数を行うよう適合される受信手段であって、前記第２の処理手段は、該受信手段を制御するよう適合され、また機能（ｅ）から（ｊ）をサポートするようさらに適合される受信手段とを備える請求項１１記載のシステム。
【請求項１３】
前記発信装置が、
（ｏ）前記送信手段、スマートカードリーダ、該スマートカードリーダに応答すると共に、前記送信手段を制御するよう適合される前記第１の処理手段を備えるＰＣであって、前記発信装置は前記スマートカードリーダとインタフェースするよう適合されるスマートカードをさらに備え、該スマートカードは第２の処理手段を内蔵しており、該第２の処理手段は前記第１の処理手段と共に機能（ａ）から（ｄ）をサポートするよう適合されるＰＣ、
（ｐ）前記送信手段、該送信手段を制御するよう適合されると共に、機能（ａ）から（ｄ）をサポートするようにも適合される前記第１の処理手段を備える移動電話、
（ｑ）前記送信手段、該送信手段を制御するよう適合されると共に、機能（ａ）から（ｄ）をサポートするようにも適合される前記第１の処理手段を備えるセットトップボックス、
（ｒ）前記送信手段、該送信手段を制御するよう適合されると共に、機能（ａ）から（ｄ）をサポートするようにも適合される前記第１の処理手段を備えるケーブルモデム、
（ｓ）前記送信手段、該送信手段を制御するよう適合されると共に、機能（ａ）から（ｄ）をサポートするようにも適合される前記第１の処理手段を備えるパーソナルデジタルアシスタントのうちの１つを備えるものである請求項１２記載のシステム。
【発明の詳細な説明】
【０００１】
発明の分野
本発明は、安全性のあるメッセージの符号化および伝送に関し、特に認証および保全性チェックに関するメッセージの機密性、保全性、および監査能力の側面に関する。加えて、本発明は、メッセージの伝送遅延および損失、または複写が発生しうるネットワーク環境におけるかかるメッセージング機能の信頼可能な動作に関する。
【０００２】
発明の背景
スマートカード等の安全な記憶・処理デバイスの出現は、実用的な電子商取引技術を使用する機会を増やすとともに、安全性のあるメッセージ転送技術における欠点を目立たせている。これは特に、異なるタイプの「ベストエフォート」ネットワークを介して伝送される場合の安全性のあるメッセージの頑強性および監査能力に関連する。
【０００３】
電子商取引についての基本的な要件には、特定の商業的用途に依存する許容可能なレベルの機密性および保全性のメッセージを送受信する能力が含まれる。加えて、これらのメッセージの信頼可能な認証、すなわち受信メッセージの発信源の識別および検証もまた、詐欺的なトランザクションが発生しないよう保証するために必要である。
【０００４】
ワイヤレスおよびインターネット等のベストエフォートネットワークの出現により、メッセージング技術に対してさらなる要求が突きつけられている。これは、メッセージ遅延、損失、および時折の複写が実際に発生するためである。
【０００５】
暗号化機能および認証機能について提案されている標準は、暗号化機能および／または認証機能を提供するための相当なオーバーヘッドデータおよび関連する複雑な機器に対する要件により、安全性のあるメッセージングに対して商業的な禁制ペナルティを必要とすることが多い。利用可能な技術もまた、上述したベストエフォートネットワークの状況において信頼可能または有効であると証明されていない。
【０００６】
本発明の目的は、従来技術の１つまたは複数の欠点を改善することである。
【０００７】
発明の概要
本発明の第１の態様によれば、安全性のあるメッセージを発信装置により符号化および送信するための方法が提供され、この方法は、
（ａ）装置識別子、アプリケーション識別子、およびアプリケーション値を用いて第１のプロセスによりメッセージ値を生成するステップと、
（ｂ）このメッセージ値を、発信装置および１つまたは複数の意図するメッセージの受信装置にだけにしか実質的にわからない１つまたは複数の第１の秘密値と組み合わせて、秘密メッセージ値を確立するステップと、
（ｃ）この秘密メッセージ値およびメッセージを符号化プロセスに適用して、安全性のあるメッセージブロックを形成するステップと、
（ｄ）アドレスを装置識別子、アプリケーション識別子、アプリケーション値、および安全性のあるメッセージブロックと組み合わせて、メッセージ、アドレス、装置識別子、アプリケーション識別子、およびアプリケーション値を回復する１つまたは複数の前述の意図する受信装置により復号化可能な、送信のための安全性のあるメッセージを形成するステップと、を含む。
【０００８】
本発明の別の態様によれば、受信装置が安全に送信されたメッセージを受信するための方法が提供され、この方法は、
（ｉ）装置識別子、アプリケーション識別子、およびアプリケーション値のうちの１つまたは複数を受信した安全性のあるメッセージから抽出するステップと、
（ｊ）装置識別子、アプリケーション識別子、およびアプリケーション値を用いて第１のプロセスによりメッセージ値を生成するステップと、
（ｋ）第２のプロセスに従い、装置識別子およびアプリケーション識別子を用いて、発信装置および１つまたは複数の意図するメッセージの受信装置にだけにしか実質的にわからない１つまたは複数の秘密値を生成するステップと、
（ｌ）メッセージ値をこの１つまたは複数の秘密値と組み合わせて、秘密メッセージ値を確立するステップと、
（ｍ）安全性のあるメッセージから安全性のあるメッセージブロックを抽出するステップと、
（ｎ）秘密メッセージ値および安全性のあるメッセージブロックを復号化プロセスに適用して、発信装置により安全に送信されたメッセージを形成するステップと、を含む。
【０００９】
本発明の別の態様によれば、安全性のあるメッセージを発信装置により符号化および送信するための装置が提供され、この装置は、
（ａ）装置識別子、アプリケーション識別子、およびアプリケーション値を用いて第１のプロセスによりメッセージ値を生成するメッセージ生成手段と、
（ｂ）このメッセージ値を、発信装置および１つまたは複数の意図するメッセージの受信装置にだけにしか実質的にわからない１つまたは複数の第１の秘密値と組み合わせて、秘密メッセージ値を確立する第１の結合手段と、
（ｃ）この秘密メッセージ値およびメッセージを符号化プロセスを行う符号化手段に適用して、安全性のあるメッセージブロックを形成する適用手段と、
（ｄ）アドレスを装置識別子、アプリケーション識別子、アプリケーション値、および安全性のあるメッセージブロックと組み合わせて、メッセージ、アドレス、装置識別子、アプリケーション識別子、およびアプリケーション値を回復する１つまたは複数の前述の意図する受信装置により復号化可能な、送信のための安全性のあるメッセージを形成する第２の結合手段と、を備える。
【００１０】
本発明の別の態様によれば、受信装置が安全に送信されたメッセージを受信するための装置が提供され、この装置は、
（ｉ）装置識別子、アプリケーション識別子、およびアプリケーション値のうちの１つまたは複数を受信した安全性のあるメッセージから抽出する抽出手段と、
（ｊ）装置識別子、アプリケーション識別子、およびアプリケーション値を用いて第１のプロセスによりメッセージ値を生成するメッセージ生成手段と、
（ｋ）第２のプロセスに従い、装置識別子およびアプリケーション識別子を用いて、発信装置および１つまたは複数の意図するメッセージの受信装置にだけにしか実質的にわからない１つまたは複数の秘密値を生成する秘密値生成手段と、
（ｌ）メッセージ値をこの１つまたは複数の秘密値と組み合わせて、秘密メッセージ値を確立するメッセージ値結合手段と、
（ｍ）安全性のあるメッセージから安全性のあるメッセージブロックを抽出する安全性のあるメッセージ抽出手段と、
（ｎ）秘密メッセージ値および安全性のあるメッセージブロックを復号化プロセスに適用して、発信装置により安全に送信されたメッセージを形成する適用手段と、を備える。
【００１１】
本発明の別の態様によれば、安全性のあるメッセージを発信装置により符号化および送信するためのコンピュータプログラムを記録したコンピュータ読み取り可能媒体を備えるコンピュータプログラム製品が提供され、このプログラムは、
（ａ）装置識別子、アプリケーション識別子、およびアプリケーション値を用いて第１のプロセスによりメッセージ値を生成するメッセージ生成ステップと、
（ｂ）このメッセージ値を、発信装置および１つまたは複数の意図するメッセージの受信装置にだけにしか実質的にわからない１つまたは複数の第１の秘密値と組み合わせて、秘密メッセージ値を確立する第１の結合ステップと、
（ｃ）この秘密メッセージ値およびメッセージを符号化プロセスを行う符号化ステップに適用して、安全性のあるメッセージブロックを形成する適用ステップと、
（ｄ）アドレスを装置識別子、アプリケーション識別子、アプリケーション値、および安全性のあるメッセージブロックと組み合わせて、メッセージ、アドレス、装置識別子、アプリケーション識別子、およびアプリケーション値を回復する１つまたは複数の前述の意図する受信装置により復号化可能な、送信のための安全性のあるメッセージを形成する第２の結合ステップと、を含む。
【００１２】
本発明の別の態様によれば、受信装置が安全に送信されたメッセージを受信するためのコンピュータプログラムを記録したコンピュータ読み取り可能媒体を備えるコンピュータプログラム製品が提供され、このプログラムは、
（ｉ）装置識別子、アプリケーション識別子、およびアプリケーション値のうちの１つまたは複数を受信した安全性のあるメッセージから抽出する抽出ステップと、
（ｊ）装置識別子、アプリケーション識別子、およびアプリケーション値を用いて第１のプロセスによりメッセージ値を生成するメッセージ生成ステップと、
（ｋ）第２のプロセスに従い、装置識別子およびアプリケーション識別子を用いて、発信装置および１つまたは複数の意図するメッセージの受信装置にだけにしか実質的にわからない１つまたは複数の秘密値を生成する秘密値生成ステップと、
（ｌ）メッセージ値をこの１つまたは複数の秘密値と組み合わせて、秘密メッセージ値を確立するメッセージ値結合ステップと、
（ｍ）安全性のあるメッセージから安全性のあるメッセージブロックを抽出する安全性のあるメッセージブロック抽出ステップと、
（ｎ）秘密メッセージ値および安全性のあるメッセージブロックを復号化プロセスに適用して、発信装置により安全に送信されたメッセージを形成する適用ステップと、を含む。
【００１３】
本発明の別の態様によれば、安全性のあるメッセージを符号化し送信するための装置を備える発信装置と、１つまたは複数の受信装置とを備え、安全な通信を提供するシステムが提供され、前述の発信装置は、
（ａ）装置識別子、アプリケーション識別子、およびアプリケーション値を用いて第１のプロセスによりメッセージ値を生成するメッセージ生成手段と、
（ｂ）このメッセージ値を、発信装置および１つまたは複数の意図するメッセージの受信装置にだけにしか実質的にわからない１つまたは複数の第１の秘密値と組み合わせて、秘密メッセージ値を確立する第１の結合手段と、
（ｃ）この秘密メッセージ値およびメッセージを符号化プロセスを行う符号化手段に適用して、安全性のあるメッセージブロックを形成する適用手段と、
（ｄ）アドレスを装置識別子、アプリケーション識別子、アプリケーション値、および安全性のあるメッセージブロックと組み合わせて、メッセージ、アドレス、装置識別子、アプリケーション識別子、およびアプリケーション値を回復する１つまたは複数の前述の意図する受信装置により復号化可能な、送信のための安全性のあるメッセージを形成する第２の結合手段と、を備え、
前述の受信装置は、安全に送信されたメッセージを受信するための装置を備え、この受信装置は、
（ｅ）装置識別子、アプリケーション識別子、およびアプリケーション値のうちの１つまたは複数を受信した安全性のあるメッセージから抽出する抽出手段と、
（ｆ）装置識別子、アプリケーション識別子、およびアプリケーション値を用いて第１のプロセスによりメッセージ値を生成するメッセージ生成手段と、
（ｇ）第２のプロセスに従い、装置識別子およびアプリケーション識別子を用いて、発信装置および１つまたは複数の意図するメッセージの受信装置にだけにしか実質的にわからない１つまたは複数の秘密値を生成する秘密値生成手段と、
（ｈ）メッセージ値をこの１つまたは複数の秘密値と組み合わせて、秘密メッセージ値を確立するメッセージ値結合手段と、
（ｉ）安全性のあるメッセージから安全性のあるメッセージブロックを抽出する安全性のあるメッセージ抽出手段と、
（ｊ）秘密メッセージ値および安全性のあるメッセージブロックを復号化プロセスに適用して、発信装置により安全に送信されたメッセージを形成する適用手段と、を備える。
【００１４】
本発明の多数の実施形態を添付の図面を参照して説明する。
付録１は、本発明の一実施形態による安全な通信のためのコンピュータプログラムを示す。
【００１５】
詳細な説明
「一意」という用語は、２つの意味のうちの一方において本明細書に用いられる。第１の例では、ラベル、例えば「一意のアプリケーション値」として使用される。第２の例では、多数のパラメータについてパラメータ値選択の様式を示すものとして使用される。例えば、「秘密値は好ましくは一意の値である」は、秘密値は、２つの秘密値が同じ値を有する可能性を最小限にするように選択されることを意味するものと解釈される。
【００１６】
電子ネットワーク通信は、メッセージの発行者とこれらメッセージの受信者との双方が関与する。電子メールハンドリング、金融サービス、および指示されたリサーチ情報獲得のようなアプリケーションを取り扱う通信システムによっては、多数の個人が単方向的および／または双方向的に少数のサーバまたはホストと通信することを含むものがある。このタイプのシステムは、「多対一」または「多対少」である通信パスを特徴とする。
【００１７】
図１を見るに、発行者１００は、ネットワーク１０８を介して多数の装置保有者１０４および１０６と通信する。別の発行者１０２は、ネットワーク１０８を介して同じ装置所有者１０４および１０６と、また他の装置所有者（図示せず）と通信する。
【００１８】
図２は、装置所有者の装置２０２により装置所有者１０４と通信するために、発行者１００（図１）が発行者装置２００を用いて、どのように図１に関して参照する通信を行うかを示す。発行者装置２００は装置所有者２０２と、各装置２００および２０２に組み込まれた対応するアプリケーション２０６および２０８それぞれを用いネットワーク１０８を介して通信する。発行者装置２００と、装置所有者装置２０２と、アプリケーション２０６および２０８とは、知的所有権下にあるかあるいは商業製品であり、概して市場において異なる供給業者から市販されている。このため、アプリケーション２０６、２０８、および装置２００、２０２は適切なインタフェースおよび網間接続規格を採用している必要がある。説明の残りの部分において、発行者と装置所有者との間の通信、および発行者装置と装置所有者装置間の通信は、反対の概念を述べない限り同じ意味を有するものと解釈される。
【００１９】
発行者装置２００および装置所有者装置２０２は、ネットワークインフラストラクチャ１０８のタイプにかかわらず、通信の機密性および保全性を保証する。これらは、メッセージが遅延、破損、または送信されたシーケンスとは異なるシーケンスで搬送された場合であっても機密性およびメッセージ保全性を提供する。
【００２０】
発行者装置２００は、各種の異なる目的のために装置所有者装置２０２と通信する。これらの目的には、ログインＩＤ／パスワードの交換およびアカウント情報の交換等の管理的機能が含まれる。また、電子メールの送受信、購入に関する購入情報の送受信、または購入の取引も含まれる。各通信タイプは、発行者装置２００における特定のアプリケーションと、装置所有者装置２０２における対応アプリケーションとに関連する。発行者装置２００におけるアプリケーション一式（例えば２１４および２０６）は、アプリケーションの統合セットとして、あるいは異なる提供元からのモジュラソフトウェアアプリケーションとして供給することができる。同様のことが、装置所有者装置２０２におけるアプリケーション一式にも言える。
【００２１】
図３は、ある状況において、典型的には発行者の裁量で、矢印３０２で示すように装置所有者装置２０２に関する認証手順を行うよう、どのように装置所有者１０４に要求できるかを示す。この認証手順３０２は、例えば、パスワード識別の交換の形態をとることも、または装置所有者の親指を専用の親指指紋センサに置くなどの生体情報識別手順を用いることもできる。あるいは、単に装置所有者装置２０２を所有することだけで、受け身的な認証をなすこともできる。
【００２２】
特定のアプリケーション（例えば、２０６、２０８で例示する）により要求される場合、上述した認証手順により、通信メッセージに組み込むことが可能な認証情報が提供される。例えば、健康、金融、またはコンピュータシステムアクセス情報に対する要求を取り扱う通信は通常、要求に答えるための前提条件として、情報提供者が知っており、かつ許可した装置および／またはアプリケーションからその情報要求が発信されたものであるという信頼できる指示を要求する。さらに、情報提供者は、要求を行っている装置が、そのような要求をすることを許可されているユーザにより使用されていることを確実にしなければならない。この場合、認証情報を各メッセージに組み込み、メッセージ受信者が受信時にメッセージの認証状態を査定できるようにする。認証またはメッセージ識別情報をネットワークパフォーマンスの査定に使用して、通信システムのおよび個々の通信リンクの保全性および有効性を推定することができる。加えて、メッセージの発信源、宛先、シーケンスおよびタイミングを確立するためのベースとして認証情報を用いることができる。これは、例えば、顧客との紛争を解決する状況において立証証拠として使用可能である。
【００２３】
発行者装置２００、アプリケーション（例えば、２０６および２０８）、および装置所有者装置２０２により提供されるセキュリティの総レベルは、発行者１００の要件および装置所有者１０４および１０６の要件を満たすよう、発行者１００により指定される。発行者は通常、発行者の商業的要件のリスク管理査定に基づいてセキュリティの必要レベルを指定する。例えば発行者が銀行であり、かつ装置所有者が銀行の顧客である場合、耐タンパリング性のカードリーダ端末およびスマートカードは、特定の発行者装置２００および関連する装置所有者装置２０２それぞれの一例である。
【００２４】
発行者装置２００および装置所有者装置２０２（図２参照）は、概して、装置がタンパリングまたは破損を受けた場合には、記憶装置に保持されている機密的なデータ値を消去するよう構成される。通常、複数のアプリケーション２１４および２０６が発行者装置２００または装置所有者装置２０２にある場合、発行者装置２００内のオペレーティングシステムは、アプリケーション毎にデータに対して安全なアクセス制御を提供する。アプリケーション間アクセスに関連するセキュリティのレベルは、メッセージングアプリケーションのタイプに伴い様々であり、例えば、金融用途または健康用途は、優先度のより低い電子メールメッセージングよりもセキュリティが強化されている。
【００２５】
図４に関連して、発行者装置２００は、秘密値４００を安全に格納することができる。秘密値４００は、通常、少なくとも６４ビット長であるが、好ましくは１１２ビット長以上である（すなわち、デジタル暗号化標準（ＤＥＳ）、またはＬＯＫＩ、ＩＤＥＡ、ＲＣ４等他の対称暗号化プロセスによる二重鍵の長さ）。このような長さの秘密値４００は、さもなければ秘密値４００を推定するために適宜使用される実行可能な総当たり攻撃を防止する。
【００２６】
発行者装置２００および装置所有者装置２０２は、発行者の装置２００および装置所有者装置２０２にだけわかる１つまたは複数の秘密値４００を発行者装置２００および装置所有者装置２０２の双方に格納可能に構成される。通常、一方はメッセージの発信用、他方はメッセージ受信用の２つの一意の秘密値４００が用いられる。しかし、他の状況またはアプリケーションでは、１つの秘密値４００だけが必要である。この一例は、１つの装置が異なる時間に発行者２００および受信者２０２の双方として機能する、バックアップまたは外部記憶目的でのデータまたはファイルの安全な識別、暗号化、および復号化についてのアプリケーションである。
【００２７】
装置（例えば、２００、２０２）内の各アプリケーション（例えば、２０６、２０８）への別個の秘密値４００の供給は、特定のメッセージを発信する装置およびアプリケーション双方の信頼可能な単一値指示に備えたものである。発行者装置２００および装置所有者装置２０２は、秘密値４００の誤用を防止するよう設計される。
【００２８】
秘密値４００は、一意の値であることが好ましい。これにより、特定のアプリケーションが異なる秘密値４００を有するだけでなく、任意の秘密値４００が他の任意の装置所有者２０２またはアプリケーション、例えば２１８で使用されている秘密値４００と同じになる可能性が低くなることが保証される。
【００２９】
対応するアプリケーション２０６および２０８にはアプリケーション識別値４０６および４１４が割り当てられ、アプリケーションまたは特定メッセージの目的を識別できるようにする。この識別は、アプリケーション間、または同一アプリケーションのバージョン間で様々であることができる。アプリケーション識別（４０６）は、数値（例えば、「１、２、３、４、５、６」）であるか、あるいはより記述的なテキストストリング（例えば、「ＡＢＣ銀行業務システム」または「ＡＢＣ銀行業務システムログオンステップ１」）のいずれかでありうる。
【００３０】
各装置所有者装置２０２および発行者装置２００には、例えば、シリアルナンバーの装置識別子４０８、４１６が割り当てられる。これは、一意の識別子を各装置に提供する。装置識別子４０８、４１６は、発行者装置がどの装置所有者装置がメッセージを発信したかわかるようにする。
【００３１】
発行者装置２００は、ある安全な様式で、装置識別子４０８、関連するアプリケーション識別子４１４、および発行者が発行したすべての装置、例えば２０２および／またはアプリケーション、例えば２０８に関連する秘密値４００の記録を維持する。発行者装置２００は、各セットが装置およびアプリケーションの双方に特定である複数の秘密値セットを格納し、それと同時に装置内の各アプリケーションは秘密値セットを含む。発行者は、通信に登録した装置および登録した装置が含むアプリケーションの双方に関する情報を格納する。
【００３２】
これについて、以下の表で例示する。以下の表は、発行者装置２００により維持される典型的なデータを示し、多くの異なる秘密値ＳＶＳ、ＳＶｒ、ＳＶｉをどのように記録セットに関連付けることができるかを示す。
【００３３】
【表１】
0003745228.tif 000002
【００３４】
装置は、この発行者と通信する複数のアプリケーションを含むことができる。したがって、装置１２３６５４は、「リモートアクセスｖ１．０１」という名称の第１のアプリケーションおよび「１０９８７５６」という名称の別のアプリケーションを含む。
【００３５】
以下の図５は、秘密値または表１に示す事例では秘密値ＳＶｋがどのようにしてアプリケーション識別子例えば４０６、４１４、装置識別子例えば４０８、４１６、およびメッセージ関連値例えば４１２と組み合わされるかを示す。
【００３６】
装置２００内のアプリケーション２０６の１例は、１つまたは複数の秘密値を要求することができる。したがって、表１を参照して、アプリケーション「リモートアクセスｖ１．０１」は、送信方向での機密性を保証するため、値が「１０Ａ６Ｂ１Ｃ８ＥＤ９Ｆ９」である秘密値ＳＶｓを要求する。同じアプリケーションはさらに、受信方向での機密性を保証するため、値が「４８００９Ｆ１ＣＣｅ２０３」である秘密値ＳＶｒを要求する。
【００３７】
装置は、アプリケーション、秘密値、および装置が登録した発行者についての対応する詳細を関連付ける。ＤＩＤフィールドおよびＡＩＤフィールドを受信したメッセージから抽出することで、発行者が適切な秘密値を検索することができる。装置は、受信メッセージ内の発行者のＤＩＤフィールドおよびＡＩＤフィールドにより、適切な秘密値を検索する。
【００３８】
アプリケーション識別子４０６は、メッセージ発信装置が、受信装置への送信時に、特定のメッセージに識別子４０６でタグ付けできるようにする。
【００３９】
監査および指標付け目的のために、アプリケーション一意値４１２が各送信メッセージに割り当てられる。このアプリケーション一意値４１２は、装置識別子４１６およびアプリケーション識別子４０６と組み合わせられると、システムまたはネットワーク内のあらゆるメッセージを信頼可能に指標付けできるようにする。この指標付けは、メッセージ、装置、およびアプリケーションに関連する。アプリケーション一意値４１２は、アプリケーション２０６または発行者装置２００内の単純なカウンタであることができる。あるいは、時刻および／または日付情報、または上記パラメータの組み合わせを用いてもよい。アプリケーション一意値４１２の範囲は、装置（例えば、２００）およびアプリケーション（例えば、２０６）の予想作業寿命（すなわち、寿命間に送受信されるメッセージの予想される総数）を網羅するものである。３２ビットのバイナリ値または１０の十進数が通常この目的を満足させる。
【００４０】
図５は、メッセージ発信プロセスの好ましい実施形態を示す。装置識別子４０８およびアプリケーション識別子４０６を中括弧５０８で示すように組み合わせ、１つのデータストリング５１０を形成する。その後、データストリング５１０および一意のアプリケーション値４１２をプロセス５００で組み合わせて、メッセージ一意値５０２を生成する。結合プロセス５００は、装置識別子４０８、アプリケーション識別子４０６、および一意のアプリケーション値４１２を組み合わせた特定入力に対する個体であるメッセージ一意値５０２を生成する。暗号連鎖ブロック方式（ＢＣＢ）または別の暗号フィードバックモード、鍵（keyed）ハッシュ関数、またはＳＨＡ―１およびＭＤ５等のハッシュ関数を用いる対称暗号化等の暗号化技術が、この要求される機能性を満足させる。反対に、排他的ＯＲ（ＸＯＲ）関数は概して適していない。これは、結果得られるメッセージ一意値５０２が一意ではなくなるからである。一方向関数に基づく対称鍵暗号化等の鍵関数が用いられる場合、一意のアプリケーション値４１２を鍵値として用いると、ある形態の攻撃についての作業要因をわずかに増大させる。デバイス識別子４０８およびアプリケーション識別子４０６は通常、結合プロセス５００の前またはこのプロセス中に連結される。
【００４１】
メッセージ一意値５０２は、結合プロセス５０４において秘密値４００と組み合わされ、秘密メッセージ一意値５０６を形成する。秘密メッセージ一意値５０６は、実質的に特定のメッセージ、装置、およびアプリケーションに対して一意である。秘密値４００は論理的に装置識別子４１６およびアプリケーション識別子４０６に関連することに留意されたい。
【００４２】
結合プロセス５０４は、金融業界で使用される一方向関数、および／またはＳＨＡ―１およびＭＤ５等のハッシュ関数に基づく対称暗号化を用いて実施することができる。秘密値４００を総当たり攻撃に起因する考え得る回復から分離するために、万が一１つまたは複数の秘密メッセージ一意値５０６が任意の様式で折衷される（compromise）場合でも、非可逆結合プロセス５０４の使用が、暗号化プロセスに好ましい。
【００４３】
図６を見ると、秘密メッセージ一意値５０６が符号化プロセス６０２においてメッセージデータ６００と組み合わせられる。このプロセス６０２は、機密性のための対称鍵暗号化を提供するように、またはメッセージ認証コード（ＭＡＣ）または鍵ハッシュ関数等のメッセージ保全性メカニズムを提供するように、または単に上位レベルのプロトコル内で使用するための秘密のワンタイム値として適宜選択することができる。ＭＡＣについてのさらなる詳細は、オーストラリア規格２８０５およびＡＮＳＩ  Ｘ９規格および同様の文書において見い出すことができる。
【００４４】
上位レベルプロトコル使用の例には、秘密メッセージ一意値をＳＳＬ（Secure Socket Layer）、ＡＳ２８０５、ＩＳＯ８５８３、およびＳ／Ｍｉｍｅに用いられる様な別個の鍵管理プロトコルを通して渡されるデータ値として使用すること、または秘密メッセージ一意値を乱数発生プロセスにおいてシード値として使用することが含まれる。
【００４５】
符号化プロセス６０２は、メッセージ６００、装置２００、およびアプリケーション２０６に一意の安全性のあるメッセージブロック６０４を出力する。この符号化プロセス６０２は、装置識別子４１６、アプリケーション識別子４０６、アプリケーション一意値４１２、および秘密値４００をメッセージ６００に結び付ける。
【００４６】
メッセージデータまたは内容は、発行者および装置所有者の必要性に応じてフォーマットされる。メッセージの長さおよび／または内容は、任意に構成することができる。暗号化および／またはメッセージの保全性機能は、送信データブロック６０６により例示するようなメッセージデータと共に組み込まれる。送信データブロック６０６は、３つの主要なコンポーネント、すなわち安全性のあるメッセージブロック６０４、制御データ６１０、およびアドレス指定データ６１２の形態をとる。制御データ６１０は、装置識別子４０８、アプリケーション識別子４０６、および一意のアプリケーション値４１２からなる。アドレス指定データ６１２は、宛先アドレス６１８、発信源アドレス６１６、およびオプションの補助データ６１４からなる。送信データブロック６０６のフォーマットは、発行者１００（図１参照）により決定される。
【００４７】
図１を参照して図６を考慮すると、安全性のあるメッセージブロック６０４は、意図する受信者、例えば１０４以外のすべてのネットワークエンティティにとって不透明、すなわち解読不可能である。
【００４８】
アドレス指定データ６１２のフォーマットおよび構成は、ネットワークの機能性と、間接的に認証および保全性保証のメッセージング機能とに関連する。したがって、アドレス指定データ６１２は、発行者装置２００および装置所有者装置２０２が採用している目的、ネットワーク、および処理装置に特定のものである。
【００４９】
この構成はまた、同じ装置識別子４０８を複数のネットワークアドレス６１８、６１６において使用できるようにする。あるいは、同じネットワークアドレスにおいてそれぞれ別個の装置識別子を有する冗長発行者装置にアクセスすることができる。
【００５０】
図６ａは、機密性および保全性の双方の保護が要求される状況を示す。第１の実施形態において、２つの符号化プロセス６０２および６０３を並列に、プロセス６０２を機密性のために、かつプロセス６０３を保全性のために、適用する。２つの別個の秘密値ＳＶｃ（機密性のため）およびＳＶｉ（保全性のため）を用いて、２つの秘密メッセージ一意値６３２および６３０それぞれを生成する。これらは、メッセージデータ６００と共に対応するプロセス６０２および６０３に適用され、２つの秘密メッセージブロック６２０および６０４それぞれを生成する。次いで、送信データブロック６２２が、２つの秘密メッセージブロック６０４および６２０を含むよう構築される。対称鍵暗号化を機密性のために使用できると共に、保全性のためにメッセージ認証コード（ＭＡＣ）または鍵ハッシュ関数を使用できる。
【００５１】
第２の実施形態において、なお図６ａに関連して、機密性および保全性の双方が要求される場合、第１の秘密値ＳＶｃを使用し、プロセス５０４（図５参照）用いて秘密メッセージ値６３２を生成する。次いで、秘密メッセージ値６３２が、機密性符号化プロセス６０２においてメッセージデータ６００と組み合わせられて安全性のあるメッセージブロック６２０を生成し、その後送信データブロックを生成する。第２の秘密値ＳＶｉを次に使用して、プロセス５０４（図５参照）を用いて秘密メッセージ値６３０を生成する。その後、この秘密メッセージ値６３０を上述した送信データブロックと共に、保全性符号化プロセス６０３において符号化し、安全性のあるメッセージブロック６０４を生成する。これを次に用いて、繰り返し符号化され機密性および保全性双方の保護を提供する、送信データブロックを形成する。
【００５２】
図６ｂを見ると、機密性および保全性の双方が要求される第３の実施形態では、メッセージデータ６００が機密性符号化プロセス６０２において秘密メッセージ値５０６と組み合わせられ、機密性安全性のあるメッセージブロック６０４を形成する。同じ秘密メッセージ値５０６は並列的に、ＸＯＲプロセス１００２においてＭＡＣ変数１０００と組み合わせられ、保全性秘密メッセージ値１００８を出力する。この秘密メッセージ値１００８が次に、保全性符号化プロセス１００４においてメッセージデータ６００と組み合わせられ、保全性安全性のあるメッセージブロック１００６を形成する。次いで、機密性安全性のあるメッセージブロック６０４および保全性安全性のあるメッセージブロック１００６が送信データブロック６０６に組み込まれる。ＭＡＣ変数については、ＡＳ２８０５、ＡＮＳＩＸ９、および同様の規格に記載されている。
【００５３】
機密性および保全性双方の保護が要求される場合、処理の順序は発行者の必要性に従って決定されうる。したがって、機密性保護のための処理を、保全性保護に関連する処理に先だって適用してもよく、あるいは処理を逆の順序で行ってもよい。
【００５４】
図７は、符号化プロセス６０２において秘密メッセージ一意値５０６をメッセージデータ６００およびメッセージ一意値５０２と組み合わせ、安全性のあるメッセージブロック７００を生成し、その後送信データブロック７０２を形成する、別の実施形態を示す。これは、メッセージ受信者が、受信中の送信データブロック７０２が送信中に変更されたか否か、または破損したか否かを、完全なメッセージ受信手順を行わずに検出できるようにする共に、部分的に損なわれていないメッセージを利用できるようにする。
【００５５】
図８は、送信データブロック６０６の復号化に関連する好ましい実施形態を示す。アプリケーション一意値４１２、装置識別子４０８、およびアプリケーション識別子４０６が、入り送信データブロック６０６から抽出され、プロセス５００において組み合わせられ、メッセージ一意値５０２を再び生成する。結合プロセス５００は、図５に示したメッセージ送信プロセスにおいて使用されるものと同一のプロセスである。
【００５６】
装置識別子４０８およびアプリケーション識別子４０６が、送信データブロック６０６から抽出され、これらを用いて、秘密値検索プロセス８０２により適切な秘密値４００を検索する。
【００５７】
再び生成されたメッセージ一意値５０２は、結合プロセス５０４において検索された秘密値４００と組み合わせられ、秘密メッセージ一意値５０６を導出する。結合プロセス５０４は、図５において記述した送信プロセスにおいてメッセージ一意値５０２および秘密値４００を組み合わせるために利用したプロセスと同一である。
【００５８】
図９を見ると、秘密メッセージ一意値５０６を利用して、復号化プロセス９００において安全性のあるメッセージブロック６０４を復号化し、元のメッセージデータ６００を生成する。復号化プロセス９００は、符号化プロセス６０２（図６参照）の逆のプロセスである。したがって、符号化プロセス６０２が対称鍵暗号化を実施した、すなわち機密性に関連する場合、復号化プロセス９００は一意の値５０６を用いて安全性のあるメッセージブロック６０４を解読する。符号化プロセス６０２（図６参照）がＭＡＣまたは鍵ハッシュ関数等のメッセージ保全性メカニズムを実施した場合、復号化プロセス９００はＭＡＣまたは鍵ハッシュ技術、または適用可能な場合にはこれら双方を用いて、メッセージ破損またはタンパリングに対して安全性のあるメッセージブロック６０４の保全性を検証する。
【００５９】
メッセージ一意値５０２が、メッセージデータ６００と共に安全性のあるメッセージブロック７００（図７参照）の形成に含まれる場合、復号化プロセス９００において送信されたメッセージ一意値５０２を含む安全性のあるメッセージブロック６０４に秘密メッセージ一意値５０６を適用することで、送信データブロック６０６が制御データ６１０（図６参照）および安全性のあるメッセージブロック６０４の部分にエラーを含む場合に、送信データブロック６０６におけるエラーを検出することができる。
【００６０】
したがって、メッセージ受信装置２０２およびアプリケーション（例えば、２０８）は、送信データブロック６０６および１つまたは複数の共有秘密値４００内で送信される公的に開示された情報の項目を利用して、送信データブロック６０６の内容を一意に識別する。
【００６１】
ネットワーク１０８にアクセスを有し、かつ適切な秘密値４００または秘密メッセージ一意値５０６へのアクセスを許可された任意の他の受信エンティティもまた、計測、課金、品質管理、または法執行目的で、対応する送信データブロック６０６、および組み込まれた宛先装置および／またはアプリケーションを識別することができる。秘密メッセージ一意値５０６のみがこれらの目的のために提供された場合には、秘密値４００を使用する前後のメッセージは折衷されない。
【００６２】
図１０は、矢印１０００で示すユーザインタフェースによりパーソナルコンピュータ（ＰＣ）１００２に指示するユーザ１０３４を示す。ユーザ１０３４は、矢印１０１０で示すようにスマートカード１０１２を、データ接続１００４によりＰＣ１００２に接続されたスマートカードリーダ１００６に予め挿入している。スマートカード１０１２は、ユーザ１０３４と本図では銀行業務サービス１０３２、かつまたユーザのオフィスのＬＡＮ１０３０間で、上述した（例えば、図５、図６、図８、および図９に関連して）安全な通信の促進に適切なソフトウェアアプリケーションを内蔵している。ＰＣ１００２およびスマートカード１０１２間の相互作用により安全化された送信通信は、データ接続１０１４によりＰＣ１００２およびネットワーク１０１６間を搬送される。その後、この通信がデータ接続１０１８によりネットワーク１０１６および受信装置１０２０間を搬送され、その後、データ接続１０２２により銀行業務サービス１０３２に転送される。顧客１０３４が銀行と通信する場合、受信装置１０２０は銀行業務設備の一体部分であり、銀行業務サービス１０３２と同じ場所にある可能性が高い。上述したように、ユーザメッセージを安全に転送するプロセスについては、例えば、図５および図６に記述した。安全性のあるメッセージの受信および復号化については、例えば、図７および図８に記述した。
【００６３】
特定のアプリケーション識別子（４０６）が、ユーザ１０３４および銀行業務サービス１０３２間の通信に関連付けられる。異なるアプリケーション識別子もまた、この場合にはスマートカード１０１２に含まれ、ユーザが安全にユーザのオフィスＬＡＮ１０３０と通信できるようにする。この後者の場合、データ接続１０１４を介してＰＣ１００２からネットワーク１０１６に転送された安全性のあるメッセージは、データ接続１０２４により、ユーザのオフィスにある第２の受信装置１０２６に運ばれる。例えば図８および図９に記述したプロセスに従い安全性のあるメッセージを復号化する受信装置１０２６から、データ接続１０２８により安全性のあるメッセージがオフィスＬＡＮ１０３０に運ばれる。実際的な観点から、ユーザ１０３４および銀行業務サービス１０３２間の安全な通信は、銀行業務サービス１０３２およびユーザ１０３４間の初期ログオンおよびパスワードハンドシェーキングから、口座の残高を見る、資金の転送等の他の銀行業務取引までの範囲の取引に用いられる。ユーザおよびオフィスＬＡＮ１０３０間の安全な通信の第２の例において、安全な通信は特に初期ログオンおよびパスワードハンドシェーキング、ならびにユーザおよびオフィスＬＡＮ１０３０に接続された各種ファイルサーバ間の後続通信に関連して用いられる。
【００６４】
再び銀行業務サービスの問題に目を向けると、受信装置は、上述したように銀行自体に配置される。銀行は、この場合には適切なソフトウェアを備えるスマートカード１０１２を、顧客が銀行と安全に通信できるようにプログラムしてある。あるいは、スマートカード１０１２の必要なプログラミングは、第三者（明示的に図示せず）が行ってもよく、この場合、この第三者は必要なスマートカード１０１２のプログラミングも提供し、ユーザおよびオフィスＬＡＮ１０３０間で安全に通信できるようにする。したがって、必要なスマートカード１０１２のプログラミングは、図１および図２に関連して前述したように、広範な市販されている装置を用いて、様々な発行者により実行可能なことは明白である。発行者は、概して、受信装置１０２６、１０２０を構築および維持し、ソフトウェアアプリケーションをスマートカード１０１２に「発行」する。
【００６５】
図１１は、ＰＣ１００２の同一ユーザ１０３４が、データ接続１１００によりネットワーク１０１６に接続されたＰＣ１１０２を有する商業者１１１０との電子商取引にかかわる異なる状況を示す。ＰＣ１００２のユーザ１０３４は、挿入１１０６内に示される複合メッセージを送信する。このメッセージは、商品についての注文の詳細１１０４、および安全性のあるメッセージ支払い許可セグメント１１０８を含む。ユーザ１０３４および商業者１１１０は、ＰＣ１００２および１１０２それぞれによって通信し、予備メッセージ（図示せず）および最終的には購入注文情報１１０４の相互交換に従って販売契約に至った。その後、商業者１１１０は安全な購入許可メッセージ１１０８を銀行業務サービス１０３２に転送するが、商業者１１１０が許可メッセージ１１０８を復号化する能力、および含意により許可メッセージ１１０８をタンパリングする能力を持たないことに留意する。商業者１１１０は、単にそのＰＣ１１０２、その後にデータ接続１１００、ネットワーク１０１６、およびデータ接続１０１８を使用して、購入許可１１０８をトランスペアレントに、銀行のドメイン内にある受信装置１０２０に転送することができるだけである。銀行は、安全な許可１１０８を復号化でき、データ接続１０２２を用いてこれを銀行業務サービス１０３２に渡すことで、商業者の口座への必要な資金の転送を許可することができる。
【００６６】
上記説明は、本発明のいくつかの実施形態にすぎず、本発明の範囲から逸脱せずに、当業者に明白な変更を行うことができる。したがって、例えば、発信装置はＰＣ／スマートカード、移動電話、ＴＶセットトップボックス、ＴＶケーブルモデム、パーソナルデジタルアシスタント等を含みうる。
【００６７】
付録１
安全な通信のためのコンピュータコード
プログラム開始、モード＝ＥＮＣＯＤＥ
DID、AppIDを入力パラメータから得る
DID、AppIDを用いて、鍵ファイルからMACSecretKeyを検索
MACのための組み合わせを開始
CBCがAppIDと連結されたDIDを暗号化―＞temp_variable1
CBCがtemp_variable1を用いてMessageIDを暗号化
出力＝MAC生成用の秘密メッセージ変数
MACについての組み合わせ終了
「MAC生成用の秘密メッセージ変数」を鍵として用いてMACがファイルを入力−＞temp_mac
DID、AID、MessageIDを出力ファイルに書き込む
temp_macを出力ファイルに書き込む
DID、AppIDを用いて鍵ファイルからEncryptSecretKeyを検索する。
暗号化のための組み合わせを開始
CBCがAppIDと連結されたDIDを暗号化―＞temp_variable1
CBCがtemp_variable1を用いてMessageIDを暗号化−＞temp_variable2
CBCがtemp_variable2を用いてEncryptSecretKeyを暗号化
出力＝暗号化用の秘密メッセージ変数
暗号化についての組み合わせ終了
「暗号化用の秘密メッセージ変数」を鍵として用いて入力ファイルを暗号化−＞temp_data
入力ファイル長を出力ファイルに書き込む
暗号化されたデータ長を出力ファイルに書き込む
tempデータを出力ファイルに書き込む
機密的なメモリロケーションをクリア
入力ファイル、出力ファイルを閉じる
プログラム終了
プログラム開始、モード＝ＥＮＣＯＤＥ
DID、AppIDを入力パラメータから得る
DID、AppIDを用いて、鍵ファイルからEncryptSecretKeyを検索
暗号化のための組み合わせを開始
CBCがAppIDと連結されたDIDを暗号化―＞temp_variable1
CBCがtemp_variable1を用いてMessageIDを暗号化−＞temp_variable2
CBCがEncryptSecretKeyを鍵として用いてtemp_variable2を暗号化
出力＝暗号化用の秘密メッセージ変数
暗号化についての組み合わせ終了
「暗号化用の秘密メッセージ変数」を鍵として用いて入力ファイルを解読−＞temp_data
temp_data長を真のファイル長に調整
DID、AppIDを用いて、MACSecretKeyを鍵ファイルから検索
MACのための組み合わせを開始
CBCがAppIDと連結されたDIDを暗号化―＞temp_variable1
CBCがtemp_variable1を用いてMessageIDを暗号化―＞temp_variable2
CBCがMACSecretKeyを鍵として用いてtemp_variable2を暗号化
出力＝MAC生成用の秘密メッセージ変数
MACについての組み合わせ終了
「MAC生成用の秘密メッセージ変数」を鍵として用いるMACtemp_data−＞temp_mac
temp_macを入力ファイル内の値と比較
OKの場合、進む
その他の場合、エラーを示し、そしてエラー、中止
temp_dataを出力ファイルに書き込む
機密的なメモリロケーションをクリア
入力ファイル、出力ファイルを閉じる
プログラム終了
【図面の簡単な説明】
【図１】  発行者と装置所有者間の安全な通信を示す図である。
【図２】  装置のソーシングおよび異なる発行者からの装置アプリケーションを示す図である。
【図３】  装置に関して認証を行う装置所有者を示す図である。
【図４】  発行者装置および装置所有者装置への秘密値の組み込みを示す図である。
【図５】  秘密メッセージ一意値の生成に好ましい実施形態を示す図である。
【図６】  送信データブロックの生成に好ましい実施形態を示す図である。
【図６ａ】  機密性および保全性を保護した送信データブロックを生成する一実施形態を示す図である。
【図６ｂ】  機密性および保全性を保護した送信データブロックを生成する別の実施形態を示す図である。
【図７】  送信データブロックを生成する別の実施形態を示す図である。
【図８】  秘密メッセージ一意値の受信の好ましい実施形態を示す図である。
【図９】  メッセージの回復についての復号化プロセスを示す図である。
【図１０】  顧客、銀行業務サービス、およびオフィスＬＡＮの間の安全な通信を示す図である。
【図１１】  顧客、商業者、および銀行業務サービスの間の電子商取引を示す図である。
【図１】
0003745228.tif 000003
【図２】
0003745228.tif 000004
【図３】
0003745228.tif 000005
【図４】
0003745228.tif 000006
【図５】
0003745228.tif 000007
【図６】
0003745228.tif 000008
【図６ａ】
0003745228.tif 000009
【図６ｂ】
0003745228.tif 000010
【図７】
0003745228.tif 000011
【図８】
0003745228.tif 000012
【図９】
0003745228.tif 000013
【図１０】
0003745228.tif 000014
【図１１】
0003745228.tif 000015