(57)【要約】  暗号化デバイスのデータを暗号化し、復号化デバイスによって、当該データを復号化するためのコードを生成する方法。前記方法は、個人識別コードを前記暗号化デバイスに提供するステップと、前記個人識別コードは前記復号化デバイスによって認識されるか取得可能であるステップと、一連のコード生成パラメータから、カレントコード生成パラメータを選択するステップを具える。前記暗号化デバイスの前記データを暗号化する前記暗号化コードは、アルゴリズムによって生成され、当該アルゴリズムが前記カレントコード生成パラメータ及び前記個人識別コードの関数である。前記カレントコード生成パラメータが前記コード生成パラメータ列内の位置に基づいて、前記復号化デバイスに認識されるか、前記復号化デバイスが、前記カレントコード生成パラメータ、前記個人識別コード、及び前記データを復号化できる前記アルゴリズムを用いて、前記暗号化コードを生成できるように、前記復号化デバイスに伝送されるかのいずれかである。【選択図】図２ａ
2009505521.tif 000002
【特許請求の範囲】
【請求項１】
暗号化デバイスのデータを暗号化し、復号化デバイスによって、前記データを復号化するためのコードを生成する方法であって、当該方法が：
個人識別コードを前記暗号化デバイスに提供するステップであって、前記個人識別コードは、前記復号化デバイスによって認識されるか取得可能であるステップと；
一連のコード生成パラメータから、カレントコード生成パラメータを選択するステップと；
アルゴリズムによって前記暗号化デバイスの前記データを暗号化するために前記暗号化コードを生成するステップであって、前記アルゴリズムが前記カレントコード生成パラメータ及び前記個人識別コードの関数であるステップとを具え、前記カレントコード生成パラメータが前記コード生成パラメータ列内の位置に基づいて、前記復号化デバイスに認識されているか、前記復号化デバイスが、前記カレントコード生成パラメータ、前記個人識別コード、及び前記データを復号化できる前記アルゴリズムを用いて、前記暗号化コードを生成できるように、前記復号化デバイスに伝送されるかのいずれかであることを特徴とする方法。
【請求項２】
請求項１に記載のコードを生成する方法において、前記コード生成パラメータが前記暗号化データとともに、前記復号化デバイスに伝送される点を特徴とする方法。
【請求項３】
請求項１又は２に記載のコードを生成する方法において、前記暗号化デバイスは前記復号化デバイスにヘッダ情報を有する暗号化データを送信し、前記ヘッダは前記復号化デバイスが復号化のために必要な前記コード生成パラメータを同定できる情報を含むこと特徴とする方法。
【請求項４】
請求項１に記載のコードを生成する方法において、前記コード生成パラメータの選択は、データを暗号化することを要求される度に、前記コード生成パラメータ列から次のコード生成パラメータを選択するステップを具えることを特徴とする方法。
【請求項５】
請求項４に記載のコードを生成する方法において、前記コード生成パラメータが整数列を具えることを特徴とする方法。
【請求項６】
請求項１ないし５のいずれか１項に記載のコードを生成する方法において、前記アルゴリズムが片方向ハッシュアルゴリズムを具えることを特徴とする方法。
【請求項７】
請求項１ないし６のいずれか１項に記載のコードを生成する方法において、前記アルゴリズムを前記コード生成パラメータと前記個人識別コードの積に適用することにより、前記暗号化コードが生成されることを特徴とする方法。
【請求項８】
請求項１ないし７のいずれか１項に記載のコードを生成する方法において、前記暗号化デバイス及び前記受信デバイスの前記個人識別コードが同一であることを特徴とする方法。
【請求項９】
請求項１ないし７のいずれか１項に記載のコードを生成する方法において、前記復号化デバイスは、通信ネットワークを介して前記暗号化及び復号化デバイスの双方に接続されたセントラルコード生成サーバから、前記暗号化デバイスの前記個人識別コードを取得することを特徴とする方法。
【請求項１０】
請求項９に記載のコードを生成する方法において、前記通信ネットワークがインターネットであることを特徴とする方法。
【請求項１１】
請求項１ないし１０のいずれか１項に記載のコードを生成する方法において、リモートに前記復号化デバイスから前記個人識別コードを除去するか、前記復号化デバイスを復号化及び受信データから使用不可能にする手段が設けられていることを特徴とする方法。
【請求項１２】
請求項１ないし１１のいずれか１項に記載のコードを生成する方法において、前記暗号化及び復号化デバイスが前記デバイス上にアプリケーションソフトウェアとして実装されることを特徴とする方法。
【請求項１３】
請求項１２に記載のコードを生成する方法において、前記復号化デバイスを使用不可能にする前記手段は前記アプリケーションソフトウェアを使用不可能にすることを特徴とする方法。
【請求項１４】
請求項１２又は１３に記載のコードを生成する方法において、リモートに前記復号化デバイスから前記個人識別コードを除去するか、前記復号化デバイスの復号を使用不可能にする前記手段が、前記デバイスに伝送されたヘッダ情報内に受信されたコマンドで作動することを特徴とする方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データを暗号化するのに用いられる暗号化コードの生成方法に関する。
【背景技術】
【０００２】
本出願人が所有する先の国際特許出願番号ＷＯ２００４８８９１７号は、通信ネットワークに沿って通信を暗号化するシステム及び方法を開示している。この文書において、説明したシステムは、通信リンクの両端で同期コード生成手段を利用している。各コード生成手段は、定期的に及び同期的に使用コードを変更し、これによりいかなる時も一当事者から他の当事者へ送信される暗号化メッセージを、その時点の暗号化コードにより正確に復号することができる。
【０００３】
このシステムでは、コードを計算するデバイスが、同期を長期間継続する必要がある。多くの電池式デバイスは、この構成を用いるのが困難である。
【０００４】
本発明は、データを保護する変更コードを生成する方法を提供することによって、上述の問題の少なくとも一部を克服することを試みる。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
本発明の一態様によると、暗号化デバイスのデータを暗号化し、復号化デバイスによって、当該データを復号化するためのコードを生成する方法を提供し、当該方法が：
個人識別コードを前記暗号化デバイスに提供するステップであって、前記個人識別コードは前記復号化デバイスによって認識されるか取得可能であるステップと；
一連のコード生成パラメータから、カレントコード生成パラメータを選択するステップと；
アルゴリズムによって前記暗号化デバイスの前記データを暗号化するために前記暗号化コードを生成するステップであって、前記アルゴリズムが前記カレントコード生成パラメータ及び前記個人識別コードの関数であるステップとを具え、前記カレントコード生成パラメータが前記コード生成パラメータ列内の位置に基づいて、前記復号化デバイスに認識されるか、前記復号化デバイスが、前記カレントコード生成パラメータ、前記個人識別コード、及び前記データを復号化できる前記アルゴリズムを用いて、前記暗号化コードを生成できるように、前記復号化デバイスに伝送されるかのいずれかである。
【課題を解決するための手段】
【０００６】
本発明は、暗号化ユーザの暗号化デバイスによりデータを暗号化するのに、及び復号化ユーザの復号化デバイスにより当該データを復号化するのに用いることができる暗号化コードを生成することによってデータを保護する方法を具える。特に、この方法は変化する暗号化コードを生成し、これにより異なる時間に異なる暗号化コードがデータの暗号化に用いられる。暗号化ユーザは暗号化コードを用いて、通信ネットワークを通って復号化ユーザに伝送するデータを暗号化することができる。代替的に、事後アクセスのために、暗号化ユーザはデータを暗号化し、記憶してもよい。この場合、暗号化ユーザ／デバイスは復号化ユーザ／デバイスと同一である。
【０００７】
暗号化コードは、既知のコード生成パラメータ列を通じて変化するコード生成パラメータに基づいて変化する。図１に示した実施例において、コード生成パラメータは、表の第一列に示されるように簡単な整数列を具えている。ただし、コード生成パラメータは必ずしも整数値、連続値、又は１０進値である必要はないことを理解されたい。例えば、コード生成パラメータは適切なアルゴリズムにより生成される疑似乱数でもよい。更に、コード生成パラメータは、例えば文字、又は対応する２進値を表現するために定義される記号のようなグラフィカルフォーマットで表現されていてもよい。
【０００８】
図１の表は、暗号化ユーザと復号化ユーザの間で伝送されるデータを暗号化するために用いられるコード生成パラメータに基づき、暗号化コードを生成する方法を示している。暗号化コードは、疑似ランダムな暗号化コード列を作り出すために各コード生成パラメータにアルゴリズムを適用することにより生成される。示される実施例において、使用されるアルゴリズムは、ＭＤ５ハッシュアルゴリズムを具える。ただし、他のアルゴリズムを使用して、所望の結果を実現してもよいことを理解されたい。アルゴリズムという用語はまた、バイナリコード生成パラメータの場合には、ＸＯＲ又は右シフトのような、コード生成パラメータを処理できる任意の関数を含んで用いられる。
【０００９】
上記の方法を使用して、データを暗号化する暗号化ユーザの端末で、暗号化コードを生成することができる。復号化ユーザにも、コード生成パラメータ列及びアルゴリズムが提供される。カレントコード生成パラメータは、暗号化ユーザと復号化ユーザ双方に認識されており、従って、当該パラメータを使用して、暗号化ユーザと復号化ユーザの間に伝送されるデータを暗号化することができる。復号化ユーザがカレントコード生成パラメータを認識していることの保証を、適した方法によって実行することができ、例えば、暗号化ユーザと復号化ユーザの間に伝送される一連の通信において、各通信用の列内の次のコード生成パラメータを簡単に使用することができる。代替的に、例えば伝送データのヘッダ内で、カレントコード生成パラメータを暗号化ユーザから復号化ユーザに伝送してもよい。
【００１０】
暗号化コードは、暗号化ユーザにより伝送メッセージの暗号化と送信が、及び復号化ユーザにより受信と復号化が要求された時のみに生成される。以前に使用された、又は将来使用される暗号化コードは、送信端末、受信端末のいずれにも記憶されない。
【００１１】
図２ａ及び２ｂの表は、本発明による方法を示し、上述した方法を修正して、異なる暗号化ユーザのために異なる暗号化コードを作成している。図２ａ及び２ｂに示されるように本発明の実施例において、コード生成パラメータは再び整数列である。図２ａ及び２ｂの表の第２列に示すように、本発明の方法を用いる各暗号化ユーザには個人化された識別コードが提供されている。
【００１２】
示される実施例においては、ＭＤ５ハッシュアルゴリズムをコード生成パラメータと個人識別コードの積に適用することにより、暗号化コードは生成される。ただし、暗号化コードはコード生成パラメータと個人識別パラメータの他の関数に適用して生成することもでき、必ずしも積である必要はない。示されるように、個人識別コードの内包によって、図２ａに示されるような第１の暗号化ユーザ、及び図２ｂに示されるような第２の暗号化ユーザ用に生成される異なる一組の暗号化コードが得られる。片方向ハッシュのようなアルゴリズムの使用によって、傍受された場合に、傍受者がコード生成パラメータ列か個人識別コードかのいずれかの同定に用いるのが困難となる。
【００１３】
様々なユーザ間の通信のために、各ユーザの個人識別コードを含有する情報を具えるセントラルコード生成サーバを利用することが求められる。各ユーザが自身の個人識別コードの情報のみを有し、他のユーザの個人識別コードを有していない場合、ユーザ間の通信はサーバを介して伝送する必要があるであろう。しかし、いくつかのユーザグループで同一の個人識別コードを利用することがある。従って、これらのユーザは他ユーザの個人識別コードを取得する必要なく、直接的な通信が可能な閉グループを形成する。
【００１４】
上述した方法によって、送信者及び受信者側でのコード生成において完全同期を伴う必要なく、変化する暗号化コードを有するシステムの使用が可能となる。従って、この方法は同期を維持することがより困難な携帯電話のようなデバイスにより適している。
【００１５】
例えば、携帯電話において、前記方法を利用して、ＳＭＳメッセージ形式で携帯電話間で伝送されるテキスト情報を暗号化することができる。前記方法は、アプリケーションソフトウェアの形式で携帯電話上に実装することができる。アプリケーションソフトウェアはコード生成パラメータ及び個人識別コードから事前に記述された（従って、暗号化／復号化を可能にした）暗号化／復号化コード生成の機能性を提供する。ユーザが実質上コードを認識しない実現方法で、個人識別コードが電話に設けられることが望ましい。上述したような閉グループが利用される事象において、同一の個人識別コードを有する一連の電話は、グループの各ユーザに提供される。個人識別コードは、ユーザ又は電話を取得した人が個人識別コードを見つけることができないような安全な方法で電話に設けられる。
【００１６】
個人識別コードを除去する、又はアプリケーションソフトウェアを使用不可能にするリモート手段も設けられている。例えば、アプリケーションソフトウェアはデバイスに伝送される一又はそれ以上のコマンドメッセージを認識する能力を含有することができる。コマンドメッセージはアプリケーションソフトウェアにより受信されたら、伝送が暗号化又は復号化できないように個人識別コードを除去するか、完全にアプリケーションソフトウェアを使用不可能にするかのいずれかのコマンドを含んでいる。暗号化／復号化デバイスを亡失するか、盗まれた場合、このようなコマンドを送信して、無許可のアクセスを防ぐことができる。携帯電話間の暗号化ＳＭＳメッセージの場合は、特定のキャラクタを使用して、伝送情報がテキストメッセージよりもむしろシステムコマンドを具えることを示してもよい。
【００１７】
前述のように、前記方法を同一ユーザによる保存及び事後検索目的でデータを暗号化するために利用できる。定期的に変化し、記憶されない暗号化コードの使用及び片方向ハッシュアルゴリズム手段のように多くのデータ量を復号化するアルゴリズムは、各暗号化データファイルを個々に復号化するように要求され、いくつか同一の生成コードを取得した場合でも、コード生成パラメータ列を発見することができない。
【００１８】
上記の方法は適切なソフトウェア制御下で送信者及び受信者に提供される処理手段により実行されることが期待される。
【００１９】
当業者に明らかであるような修正及び変更は、本発明の範囲内であると見なされる。
【図面の簡単な説明】
【００２０】
本発明は添付図を参照し、例としてここに記述され：
【図１】図１は、ＭＤ５ハッシュアルゴリズムのアルゴリズムを用いて、コード生成パラメータ列から生成される暗号化コードの表である。
【図２ａ】図２ａは、本発明により図１の表のコード生成パラメータ列、及び第１の暗号化ユーザの個人識別コードから生成される暗号化コードの表である。
【図２ｂ】図２ｂは、本発明により図１の表のコード生成パラメータ列、及び第２の暗号化ユーザの個人識別コードから生成される暗号化コードの表である。
【図１】
2009505521.tif 000003
【図２ａ】
2009505521.tif 000004
【図２ｂ】
2009505521.tif 000005
【国際調査報告】
2009505521.tif 000006
2009505521.tif 000007