(57)【要約】  本発明は、ユーザに対するデバイスの認証および詐欺防止に係わる。本発明によるパーソナル・デバイス（２１０）の認証方法は、少なくとも第１の好みの出力フォーマットがユーザによって選択されるセットアップ・シーケンス（３０５−３１０）と、デバイス・コンフィギュレーション検証シーケンス（３１５−３５５）とを含む。デバイス・コンフィギュレーション検証シーケンスにおいては、チェックサムが計算され、ユーザにより選択された好みの出力フォーマットに基づくユーザフレンドリ出力フォーマトに変換される。さらに、チェックサムは、可変でユーザが選択した鍵材料に基づいて計算できる。パーソナル・デバイス（２１０）は、上述のように認証された後、第２デバイス（２１５）を認証するのに使用できる。
2009508389.tif 000002
【特許請求の範囲】
【請求項１】
ユーザに対して少なくとも第１デバイス（２１０）を認証する方法であり、前記第１デバイス内で発生されたチェックサムを、ユーザフレンドリな出力フォーマットに変換することを含む方法であって、
セットアップ・シーケンス（３０５−３１０）と、
デバイス・コンフィギュレーション検証シーケンス（３１５−３３５）と
を含み、
前記セットアップ・シーケンスが、
少なくとも２つのユーザフレンドリな出力フォーマットから選択された少なくとも第１の好みの出力フォーマットを受け取り記憶するステップ（３０５）を含み、
前記デバイス・コンフィギュレーション検証シーケンスが、
前記チェックサム計算するステップ（３２０）と、
前記チェックサムをユーザフレンドリな出力フォーマットに変換するステップであって、前記変換が前記選択された好みの出力フォーマットに少なくとも部分的に基づくステップ（３２５−３３０）と
を含むことを特徴とする方法。
【請求項２】
少なくとも前記第１の好みの出力フォーマットが前記ユーザによって前記第１デバイス（２１０）に入力されることを特徴とする請求項１に記載の方法。
【請求項３】
前記ユーザフレンドリな出力フォーマットに変換することが、前記第１デバイス（２１０）の現在のコンフィギュレーションにさらに基づくことを特徴とする請求項２に記載の方法。
【請求項４】
少なくとも第１および第２の好みの出力フォーマットが前記ユーザにより選択されて前記第１デバイスにより受け取られ且つ記憶され、前記第１デバイス（２１０）が第１コンフィギュレーションであるときに、第１の好みの出力フォーマットが使用され、前記第１デバイス（２１０）が第２コンフィギュレーションであるときに、第２の好みの出力フォーマットが使用されることを特徴とする請求項２または３に記載の方法。
【請求項５】
前記チェックサムが前記第１デバイス内の複数の鍵材料に基づいて計算され、前記鍵材料の選択は変更可能で選択可能であることを特徴とする請求項１乃至４のいずれか一項に記載の方法。
【請求項６】
前記ユーザフレンドリな出力フォーマットに変換することが、イメージ、音またはテキストのうちの一つまたは組み合わせに変換することを含むことを特徴とする請求項１乃至５のいずれか一項に記載の方法。
【請求項７】
前記第１デバイス（２１０）内で実行される前記セットアップ・シーケンス（３０５−３１０）が、
少なくとも一つの好みの出力フォーマットを受け取り且つ記憶するステップ（３０５）と、
前記チャックサム計算中に含まれるべき前記鍵材料の仕様を受け取り且つ記憶するステップ（３１０）と
を含み、
前記第１デバイス（２１０）内で実行される前記デバイス・コンフィギュレーション検証シーケンス（３１５−３３５）が、
前記パーソナル・デバイス（２１０）内に設けられた少なくとも一つのアイデンティフィケーション・モジュール（２４０−２５５）から前記選択された鍵材料を抽出するステップ（３１５）と、
前記鍵材料に基づいてチェックサムを計算するステップ（３２０）と、
どのユーザフレンドリな出力フォーマットを使用するか決定するステップであって、前記決定が前記好みの出力フォーマットに少なくとも部分的に基づくステップ（３２５）と、
前記チェックサムを前記選択されたユーザフレンドリな出力フォーマットに変換するステップ（３３０）と
を含むことを特徴とする請求項５または６に記載の方法。
【請求項８】
前記第１デバイスの動作の間、前記コンフィギュレーション検証部分（３１５−３３５）が繰り返されることを特徴とする請求項７に記載の方法。
【請求項９】
前記コンフィギュレーション検証部分（３１５−３３５）が手動でアクティベートされ得ることを特徴とする請求項７に記載の方法。
【請求項１０】
前記セットアップ・シーケンス（３０５−３１０）が手動でアクティベートされ得ることを特徴とする請求項８または９に記載の方法。
【請求項１１】
前記第１デバイス（２１０）が、前記セットアップ・シーケンス（３０５−３１０）および前記デバイス・コンフィギュレーションシーケンス（３１５−３３５）を少なくとも一回実行し、これにより認証され、前記第１デバイス（２１０）が第２デバイス（２１５）の認証に使用されることを特徴とする請求項１乃至１０のいずれか一項に記載の方法。
【請求項１２】
前記第２デバイス（２１０）から前記第１デバイス（２１５）に送られる外部チェックサムを受け取るステップ（４２０,４５５）と、
前記送られてきた外部チェックサムをユーザフレンドリな出力フォーマットに前記第１デバイス（２１０）中で変換するステップ（４２５,４６５ｂ）と
をさらに含むことを特徴とする請求項１１に記載の方法。
【請求項１３】
前記ユーザフレンドリな出力フォーマットが予め選択されていることを特徴とする請求項１２に記載の方法。
【請求項１４】
前記第１デバイスと前記第２デバイスとの間の初期エンカウンタにおいて実行されるべき、前記方法の初期部分が、
前記第２デバイス（２１０）から送られる初期チェックサムを受け取るステップ（４２０）と、
前記送られてきた初期チェックサムをユーザフレンドリな出力フォーマットに前記第１デバイス（２１０）中で変換するステップ（４２５）と
を含み、
前記第１デバイスと前記第２デバイスとの間の連続エンカウンタにおいて実行されるべき、前記方法の連続部分が、
前記第２デバイス（２１０）から送られる連続チェックサムを受け取るステップ（４５５）と、
前記送られてきた連続チェックサムをユーザフレンドリな出力フォーマットに前記第１デバイス（２１０）中で変換するステップ（４６５ｂ）と
を含むことを特徴とする請求項１２または１３に記載の方法。
【請求項１５】
前記第１デバイスと前記第２デバイスとの間の初期エンカウンタにおいて実行されるべき、前記方法の初期部分が、
前記第２デバイス（２１０）から送られる初期チェックサムを受け取るステップ（４２０）と、
前記送られてきた初期チェックサムの表現を前記第１デバイス（２１０）中で記憶するステップ（４２５）と
を含み、
前記第１デバイスと前記第２デバイスとの間の連続エンカウンタにおいて実行されるべき、前記方法の連続部分が、
前記第２デバイス（２１０）から送られる連続チェックサムを受け取るステップ（４５５）と、
前記初期チェックサムと前記連続チェックサムとを前記第１デバイス中で比較し（４６５ｃ）、前記初期チェックサムと前記連続チェックサムとが一致しないときに、警報メッセージを発するステップ（４７０）と
を含む
ことを特徴とする請求項１１に記載の方法。
【請求項１６】
複数の異なる第２デバイスに対応する複数の初期チェックサムの表現が前記第１デバイスに記憶され、前記複数の第２デバイスとの連続エンカウンタにおいて、前記比較ステップが、
前記送られてきた連続チェックサムを前記複数の記憶された初期チェックサムと比較するステップ（４６５ｃ）と、
前記送られてきた連続チェックサムが、前記記憶された初期チェックサムのいずれとも一致しないときに、警報メッセージを発するステップ（４７０ｃ）と
を含む
ことを特徴とする請求項１５に記載の方法。
【請求項１７】
前記送られてきた初期チェックサムの前記表現は、前記送られてきた初期チェックサムの暗号変換により得られることを特徴とする請求項１２または１３に記載の方法。
【請求項１８】
前記第１デバイスと前記第２デバイスとの間の初期エンカウンタにおいて実行されるべき、前記方法の初期部分が、
前記第２デバイス（２１０）から送られる初期チェックサムを受け取るステップ（４２０）と、
前記送られてきた初期チェックサムおよびデバイスのセットの値を含む表現を記憶するステップ（４２５ｄ）と
を含み、
前記第１デバイスと前記第２デバイスとの間の連続エンカウンタにおいて実行されるべき、前記方法の連続部分が、
前記第２デバイス（２１０）から送られる連続チェックサムを受け取るステップ（４５５）と、
前記送られてきた初期チェックサムおよびデバイスのセットの値を含む前記記憶された表現と、前記連続チェックサムとに基づく値を前記第１デバイス中で抽出し、前記値をユーザフレンドリな出力フォーマットに変換するステップ（４６５ｄ）と
を含む
ことを特徴とする請求項１１に記載の方法。
【請求項１９】
前記表現を形成し、初期チェックサムとデバイスのセットを示す値との少なくともいずれかを抽出するために、ＸＯＲ演算を使用することを特徴とする請求項１８に記載の方法。
【請求項２０】
前記表現が暗号変換により得られることを特徴とする請求項１８または１９に記載の方法。
【請求項２１】
複数のマン−マシン通信インターフェースが設けられ、他のデバイスと通信できるようになっているパーソナル・デバイス（２１０）であり、鍵材料を提供するようになっている複数のアイデンティフィケーション・モジュール（２４０−２５５）と、前記鍵材料に基づいてチェックサムを計算する手段（２６０）と、チェックサムをユーザフレンドリな出力フォーマットに変換する手段（２７０−２８５）とを含む前記パーソナル通信デバイスであって、
少なくとも一つの好みの出力フォーマットのユーザ選択を受信し記憶するようになっているユーザ好み仕様手段（２６５）を具備し、
前記ユーザ好み仕様手段（２６５）が、前記チェックサム計算手段（２６０）と、少なくとも一つの変換手段（２７０−２８５）とに接続されていることを特徴とするパーソナル・デバイス。
【請求項２２】
前記好み仕様手段（２６５）が、さらに、鍵材料のユーザ選択を受信し記憶するようになっていることを特徴とする請求項２１に記載のパーソナル・デバイス。
【請求項２３】
第２デバイス（２１５）から外部チェックサムを受信するようになっている受信手段（２９０）と、
受信し記憶した外部チェックサムを比較するようになっている比較手段（２９２）と、
複数の外部チェックサムを記憶するようになっている記憶手段（２９０）と
をさらに具備することを特徴とする請求項２１または２２に記載のパーソナル・デバイス。
【請求項２４】
前記ユーザ好みモジュール（２６５）に接続され、第２デバイス（２１５）から外部チェックサムを受信し、前記変換手段（２７０−２８５）の一つの中でのさらなる変換のために、前記外部チェックサムを前記ユーザ好みモジュール（２６５）に送る受信手段（２９０）をさらに具備することを特徴とする請求項２１または２２に記載のパーソナル・デバイス。
【請求項２５】
パーソナル・デバイスと通信できるようになっているパブリック・デバイス（２１５）であり、パーソナル・デバイスまたはユーザから符号を受信する入力手段（２１８）が設けられるパブリック・デバイスであって、
前記符号受信手段（２１８）および通信手段（２２０）に接続されたチェックサム計算手段（２１９）を具備し、
前記チェックサム計算手段（２１９）が、受信した符号および内部でリトリーブした鍵材料に基づいてチェックサムを計算するようになっており、
前記通信手段（２２０）が、前記チェックサムを前記パーソナル・デバイス（２１０）に送るようになっており、
これにより、前記パーソナル・デバイス（２１０）を使用して前記パブリック・デバイス（２１５）の認証を容易に行えることを特徴とするパブリック・デバイス。
【請求項２６】
前記チェックサム計算手段（２１９）に接続され、前記チェックサム計算手段（２１９）に鍵材料を提供するようになっているアイデンティフィケーション手段（２１９）を
さらに具備することを特徴とする請求項２５に記載のパブリック・デバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザに対するデバイスの認証および詐欺防止に係わる。特に、本発明は、ユーザフレンドリ・デバイス認証方法および装置に関する。
【背景技術】
【０００２】
マン−マシン相互作用のほとんど全ての面において、認証、アイデンティフィケーション（同一確認）および権限付与の重要度が増している。何故なら、典型例を挙げるなら、価値有るまたはセンシティブなデータに対するアクセス権は、物理的に検証できないからである。適用範囲は、現金自動預け払い機（ＡＴＭ）を使用することや、無線通信システムを使用するプライバシの保護といった日常生活から、政治や産業界の秘密保護や商業取引の安全確保に及ぶ。
【０００３】
例えば、コンピュータ・システムや特定構内にアクセスを許すための人間の同一確認および権限付与の領域に、大きな注意が払われてきた。このための方法および装置は、パーソナル・アイデンティフィケーション番号（ＰＩＮ）を使用すること、例えば自動化指紋または顔認識のための種々の生物測定装置／方法を含む。これらの方法および装置は、デバイスに対して人間の同一確認がなされ、デバイスが、典型的には種々のソフトウェア手段を使用して、例えば、そのデバイス使用に対するアクセス、特定構内に対するアクセス、データベースに対するアクセスを許容する。
【０００４】
従来、ほとんど注意が払われていなかったが、重要度が増している領域は、ユーザに対するデバイスまたはシステムの認証である。多くの状況において、ユーザは、ユーザがそれと信じているデバイスそのものなのかの検証、および／またはシステムが改ざんされていないかの検証が必要である。このことを、次の例を使用してさらに説明する。
【０００５】
例１：偽ＡＴＭが配備されたところでは、詐欺が行なわれる。ユーザは、その磁気カードおよびＰＩＮを挿入／入力する。ユーザに知られないで、ＡＴＭは、“技術エラー”メッセージを表示して磁気カードを排出する前に、磁気ストライプを走査しＰＩＮを記録する。この結果、偽ＡＴＭの“所有者”は、ＡＴＭカードのコピーを作ることができ、真のユーザの名前でお金を引き出すことができる。全てのＡＴＭは、基本的に同様の外観をしており、偽ＡＴＭを検出することは非常に難しい。
【０００６】
例２：ユーザが、例えば大きな銀行内の口座保守プログラムのようなあるセンシティブ・アプリケーション用のコンピュータ・プログラムを実行しようとしているものとする。プログラム／コンピュータが改ざんされていないことが最も重要である。何故なら、異なる口座間の悪意の取引によって壊滅的結果が生じる可能性があるからである。事実、コンピュータがトロージャン（Ｔｒｏｊａｎ）の存在する同一マシンに置き換えられたことを検証することは非常に難しい。原理的には、プログラムの真正は、例えばデジタル署名のようなプログラムのチェックサムを計算することおよび／またはプラットフォームそれ自体十分に信頼に値することを推定できるハッシュ値によりチェックできる。例えば、チェックサム計算それ自体“改ざんに対して抵抗力がある”ものでなければならない。依然として、チェックサムは、（セキュリティのため）、長く、完全にランダムな外観のバイナリ・ストリングでなければならない。この文字毎に手動で検証することは、非常に骨が折れることである。
【０００７】
例３：ユーザが彼の携帯電話をほったらかしにして、コーヒー・ブレークに出かけたとする。彼が戻ったとき、その携帯電話が確かに彼のもので（ほとんど）同一のもので置き換えられていないとどのようにして確信するのであろうか。ユーザが置き換えに気が付くにはかなりの時間がかかるであろう。置き換えに気が付いたときには、ユーザは既にあるセンシティブ・パーソナル情報をデバイスに入力してしまっており、この情報は即座に悪意の当事者に転送されてしまっている。
【０００８】
上記例のあるものにおいては、ユーザがＰＩＮを入力するという条件は、デバイスを認証することに使用できないことに留意されたい。何故なら、例えば、偽ＡＴＭまたは偽電話のような偽デバイスは、全てのＰＩＮを単にアクセプトするように作れるからである。
【０００９】
例えば、ＴＣＧ（Ｔｒｕｓｔｅｄ  Ｃｏｍｐｕｔｉｎｇ  Ｇｒｏｕｐ（トラステッド・コンピューティング・グループ）,非特許文献１）は、ウイルス、情報漏洩等のリスクを低減しようとしているように、トラステッド・プラットフォーム・アーキテクチャ（ｔｒｕｓｔｅｄ  ｐｌａｔｆｏｒｍ  ａｒｃｈｉｔｅｃｔｕｒｅ）の仕様を決めるのにかなりの努力がなされた。かなりのことが達成されているが、ユーザが、例え彼が彼の電話を信頼していたとしても、彼が使用しているものが本当に彼のデバイスであると、どのようにして検証できるかという問題にはアドレスしていない。
【００１０】
多くのコンピュータ・アプリケーションは、コンピュータまたはアプリケーションの真正を検証するために、ユーザがスクリーン上で見ることができる“チェックサム”を出力する。セキュリティを確保するために、チェックサムは、非常に長い。現在、チェックサムは、ユーザによって、文字毎、デジット毎、走査されて検証されるが、これは退屈な仕事である。さらに、ユーザは、チェックサムを書いた紙コピーを必要とするが、これが紛失したり盗まれる可能性がある。これにより、偽プログラムを作ることが可能となる。
【００１１】
ユーザに対するデバイスの認証の問題は、非特許文献２で取り上げられている。この原理ステップは、図１の概略メッセージ・フロー・スキームに示されている。ユーザ（Ｕ）１０５は、トラステッド（信頼されている）パーソナル・デバイス（Ｔ）１１０を所有しており、通信ネットワーク（ＣＮ）１２２を介してサーバ（Ｓ）１２５に接続された例えばＡＴＭのようなアントラステッド（信頼されていない）デバイス（Ｄ）１１５を使用する意思がある。ステップの説明は、次の通りである。
【００１２】
１５０：トラステッド・デバイス１１０が、例えば赤外線のような遠隔手段により、あるいは物理的接続により、アントラステッド・デバイス１１５に接続される。
【００１３】
１５５：ユーザ１０５は、トラステッド・デバイス１１０に、それに連結されているデバイスＤを認証するように要求する。
【００１４】
１６０：トラステッド・デバイス１１０は、アントラステッド・デバイス１１５に、サーバ１２５に対してそれ自身を認証するように、要求する。
【００１５】
１６５：アントラステッド・デバイス１１５は、サーバ１２５に対して、一方向認証プロトコルを実行させる。成功すれば、サーバ１２５とアントラステッド・デバイス１１５との間に認証チャネルが確立される。これは、図では、二重線で示されている。
【００１６】
１７０：サーバ１２５は、トラステッド・デバイス１１０に対して、一方向認証プロトコルを実行させる。成功すれば、サーバ１２５とトラステッド・デバイス１１０との間に認証チャネルが確立される。
【００１７】
１７５：サーバ１２５は、メッセージ“Ｄは真正”を、トラステッド・デバイス１１０に送る。さらに、サーバ１２５は、トラステッド・デバイス１１０とアントラステッド・デバイス１１５との間にセキュア（安全な）チャネルを構築するために、トラステッド・デバイス１１０およびアントラステッド・デバイス１１５によって使用されるセッション・キーまたは証明書のような追加情報を送ることができる。
【００１８】
１８０：トラステッド・デバイス１１０は、アントラステド・デバイス１１５がサーバ１２５によると事実真正であることを、ユーザ１０５に知らせる。
【００１９】
エイソカン（Ａｓｏｋａｎ）らによって教示された方法は、２つのデバイス１１０および１１５がサーバ１２５に対してセキュア接続が確立できたこと、アントラステッド・デバイス１１５が事実偽物であり、且つサーバ１２５が真正であり、且つデバイス１１０が事実ユーザ１０５自身のトラステッド・デバイスであるときに、ユーザ１０５に警告が与えられることを確実にするものであると見ることができる。この方法の第１の限界は、トラステッド（第三者）サーバを必要とすることである。すなわち、ユーザが彼／彼女自身のパーソナル・デバイスを持っているという事実は十分ではなく、上記パーソナル・デバイスがいかに信頼できるかは問題ではない。さらに、この方法は、該方法をより確固たるもにするのにきわめて重要な、デバイス１１０が事実ユーザ自身のものであることを、ユーザがいかに確信できるかということを取り上げていない。従って、デバイス１１０およびサーバ１２５の双方が偽物であるとき、すなわち、アントラステッド（偽物）デバイス１１５および（偽物）サーバ１２５が同じ偽物ネットワークの部分であり、且つデバイス１１０が上記偽物ネットワークの制御の下に誰かによって置換されたときには、上記方法は、明らかに有効ではない。偽物ネットワークは、実際、複数のエンティティを有している必要はなく、典型的場合、アントラステッド・デバイス１１５中で構成されるが、デバイス１１０および従ってユーザ１０５への完全なネットワークの外観を有するように構成されることに留意されたい。従って、詐欺を行なおうとする者は、偽ターミナルを企てるのに必要なこと以上のことをほとんどすることなしに、エイソカン（Ａｓｏｋａｎ）らによって提供されるセキュリティを越えることができる。
【００２０】
非特許文献３では、例えば、上記例における長いチェックサムである、デバイスまたはアプリケーションからの検証出力が、グラフィカル表現に変換される。このグラフィカル表現は、デバイスのディスプレイ上で見たときにはランダムな外観を呈するが、正しく予め作成されたオーバレイ・スライドを介して見ると、それとわかるイメージが現れる。これは、ユーザにとって、文字／デジットの長いシーケンスすなわちランダム・イメージより認識が容易である。この方法は、ユーザがデバイスを検証するために予め製造されたスライドを持ち歩かなければならないという制限があるため、スライドが紛失し盗まれる危険があり、また、スライドを使い古すと機能を害するおそれがある。イメージを変更してセキュリティを高めようとすると、ユーザは、スライドのセットを持ち歩くか、新たなスライドを作成できる手段を持っていなければならない。さらに、この方法は、ユーザの視力（非常に良いと仮定）に依存する検証方法を提供するのみであり、ユーザにより適するかもしれない他の検証方法を提供するものではない。また、この方法は、同じスライドをｎ＞１の認証に使用するためには、スライドの寸法は、ｎが大きくなればなるほど、大きくなる。この方法の主たる利点は、この方法のセキュリティを正式／数学的に証明できるという理論的面が大きい。
【００２１】
また、従来、チェックサムを、上記例のグラフィカル・フォーマット以外の他のユーザ・フレンドリ・フォーマット、例えば読み取り可能な語を含むより長いテキスト・ストリングに変換することが知られている。長いけれども、大部分の人にとって、一連の実際の語は、ランダム数より覚えやすい。より長いがより読み取り可能なフォーマットに変換するプロセスは、逆ハッシュイング（ｉｎｖｅｒｓｅ  Ｈａｓｈｉｎｇ）と呼ばれることがある。
【非特許文献１】インターネット〈ｈｔｔｐｓ：／／ｗｗｗ．ｔｒｕｓｔｅｄｃｏｍｐｕｔｉｎｇｇｒｏｕｐ．ｏｒｇ〉
【非特許文献２】エイソカン（Ａｓｏｋａｎ）ら、「パブリック・ターミナルの認証（Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  ｏｆ  ｐｕｂｌｉｃ  ｔｅｒｍｉｎａｌｓ）」、エルスビア（Ｅｌｓｖｉｅｒ）発行、コンピュータ  ネットワークス（Ｃｏｍｐｕｔｅｒ  Ｎｅｔｗｏｒｋｓ）３１（１９９９）  ８６１−８７０．
【非特許文献３】Ａ．ナオア（Ａ．Ｎａｏｒ）およびＢ．ピンカス（Ｂ．Ｐｉｎｋａｓ）、「視覚認証およびアイデンティフィケーション（Ｖｉｓｕａｌ  Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  ａｎｄ  Ｉｄｅｎｔｉｆｉｃａｔｉｏｎ）」、スプリンガー  バーラグ（Ｓｐｒｉｎｇｅｒ  Ｖｅｒｌａｇ）発行、レクチャ・ノーツ・イン・コンピュータ・サイエンス（Ｌｅｃｔｕｒｅ  Ｎｏｔｅｓ  ｉｎ  Ｃｏｍｐｕｔｅｒ  Ｓｃｉｅｎｃｅ）ｖｏｌ１２９４、Ｃｒｙｐｔｏ９７予稿集（Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  Ｃｒｙｐｔｏ）１９９７、ｐｐ．３２２−３３６．
【発明の開示】
【発明が解決しようとする課題】
【００２２】
従って、単にデバイスに対してユーザを認証するだけでなく、ユーザに対してデバイスを、ユーザ・フレンドリな態様で、確実に認証する方法および装置が必要なのは明らかである。従来提案されている装置および方法は、次のような重大な欠点がある。すなわち、従来装置方法は、より念入りな詐欺から保護できず、および／または、ユーザがチェックサムの紙コピーまたはグラフィカル・スライドを保持し持ち歩く必要があり、従来方法は、ユーザがパーソナル・デバイス、サーバ、および／または他の情報の信頼性についてある保証を既に取得していることを当然のこととしており、重要な初期信頼がどのように確立されるかについて取り上げていない。
【００２３】
上記説明から、従来技術が大きな欠点を有していることは明確である。従って、パーソナル・デバイスおよびパブリック・デバイスの双方を認証する安全かつ便利な方法および装置を見出すことが望ましい。
【００２４】
本発明の目的は、パーソナル・デバイスおよびパブリック・デバイスをユーザに対して認証する際のセキュリティおよび便利さを増大させる方法、パーソナル・デバイスおよびパブリック・デバイスを提供することにある。
【課題を解決するための手段】
【００２５】
本目的は、請求項１に記載の方法、請求項２１に記載のパーソナル・デバイスおよび請求項２５に記載のパブリック・デバイスにより達成される。
【００２６】
上記問題は、本発明が、少なくとも第１デバイス、パーソナル・デバイスをユーザに対して認証する方法を提供することにより解決される。本方法は、少なくとも第１の好みの出力フォーマットがユーザにより選択されるセットアップ・シーケンスと、デバイス・コンフィギュレーション検証シーケンスとを含む。デバイス・コンフィギュレーション検証部分では、チェックサムが計算され、ユーザフレンドリな出力フォーマットに変換される。この変換は、選択された好みの出力フォーマットに少なくとも部分的に基づく。
【００２７】
セキュリティをさらに高めるために、チェックサムは、パーソナル・デバイス内の複数の鍵材料に基づいて計算される。鍵材料の選択は変更可能で、セットアップ・シーケンス中でユーザによって特定されることが好ましい。
【００２８】
本発明の別の面によれば、パーソナル・デバイスは、上述のように認証された後、第２デバイス、パブリック・デバイスを認証するのに使用される。パブリック・デバイスを認証するためのパーソナル・デバイス中の方法は、
第２デバイスから送られる外部チェックサムを受け取るステップと、
送られてきた外部チェックサムをユーザフレンドリな出力フォーマットに変換するステップとを含むことができる。
【００２９】
このようにする代りに、パーソナル・デバイスは、パブリック・デバイスから送られる１つまたはそれより多くのの初期チェックサムを記憶し、パーソナル・デバイスとパブリック・デバイスとの間の連続エンカウンタ（ｃｏｎｓｅｃｕｔｉｖｅ  ｅｎｃｏｕｎｔｅｒ）において、パーソナル・デバイスは、パブリック・デバイスから送られた連続チェックサムと、初期チェックサムとを比較する。初期チェックサムと連続チェックサムとが一致しなければ、パーソナル・デバイスがユーザに警告メッセージを発する。
【００３０】
本発明により、パーソナル・デバイスおよびパブリック・デバイスの双方をユーザに対して有効にかつユーザ・フレンドリな態様で認証する方法を提供できる。
【００３１】
本発明の一つの利点は、ユーザが、デバイスを検証するためのスライドまたは検証数のメモを持ち歩く必要が無くなることである。
【００３２】
別の利点は、検証に使用されるチェックサムがユーザの選択によりユーザ・フレンドリなフォーマットに変換されることである。このようにして、ユーザが、異常、すなわちデバイスが改ざんされたしるしを検出する可能性が大きく高まる。
【００３３】
さらに別の利点は、本発明により認証されたパーソナル・デバイスを、他の（パブリック）デバイスの認証に使用できることである。
【００３４】
本発明の実施例は、特許請求の範囲の従属項に記載される。本発明の他の目的、利点および新規な特徴は、次に行なう本発明の詳細説明を、添付図面および特許請求の範囲に関連付けて考察することにより明らかとなろう。
【発明を実施するための最良の形態】
【００３５】
上に略述した本発明の特徴および利点を、以下に、同一要素には同一参照番号を付した図面を参照して詳細に説明する。
【００３６】
以下、図面を参照して本発明の実施例を説明する。
【００３７】
本発明による方法および装置が使用されるシナリオ例が、図２ａに概略的に示されている。ユーザ（Ｕ）２０５は、例えば携帯電話であるパーソナル・デバイス（Ｔ）２１０を使用し、例えばＡＴＭであるパブリック・デバイス（Ｄ）２１５を使用する意思がある。パブリック・デバイス２１５は、通信ネットワーク（ＣＮ）２２２を介してサーバ（Ｓ）２２５に接続されてパブリック・システム２１６を形成する。このような構成ではなく、パブリック・デバイス２１５は、他のユニットに固定的に接続されることのないスタンドアローン・ユニットということもある。パーソナル・デバイス２１０は、例えば、コンピュータ、携帯電話／モバイル・ターミナル、または例えばＡＴＭターミナルと通信するための専用デバイスである。パーソナル・デバイス２１０には、入力手段、および好ましくは例えばグラフィカルおよびテキスト出力のあるディスプレイ、音発生手段、および振動アラートのような複数の出力手段が設けられる。本発明の第１実施例は、パーソナル・デバイスが信頼できるものであることを確実にする方法および装置を取り上げる。パブリック・デバイス／パブリック・システム２１５／２１６は、最初は、ユーザに対して認証されていない。本発明の別の実施例は、今認証されたパーソナル・デバイス２１０の助けによりパブリック・デバイスをいかにして認証するかを取り上げる。パブリック・デバイス／パブリック・システム２１５／２１６の例としては、これに限定されるわけではないが、ＡＴＭ、パーソナル・コンピュータ（ＰＣ）、他の民生用電子機器、自動販売機／チケット販売機、医療装置、自動ドア・ロック、自動車、電子政府のためのデバイス（例えば、電子投票ブース）、スロット・マシン、および他の種のギャンブル／ゲーム・マシン等を挙げることができる。
【００３８】
典型的な場合、ユーザ２０５は、パーソナル・デバイス２１０およびパブリック・デバイス２１５またはパブリック・システム２１６の双方と相互作用を行なう。この相互作用は、図では、矢印で示されている。パーソナル・デバイス２１０は、パブリック・デバイス２１５またはパブリック・システム２１６と相互作用を行なう。
【００３９】
本発明によりパーソナル・デバイス２１０を認証する方法は、少なくとも第１の好みの出力フォーマットがユーザにより選択されるセットアップ・シーケンスと、デバイス・コンフィギュレーション検証シーケンスとを含む。デバイス・コンフィギュレーション検証シーケンスでは、チェックサムが計算され、ユーザにより選択された好みの出力フォーマットに基づきユーザフレンドリな出力フォーマットに変換される。さらに、チェックサムは、ユーザにより選択可能なまたはランダムに発生される鍵材料に基づいて計算できる。パーソナル・デバイス２１０は、上述のように認証された後、パブリック・デバイス２１５を認証するのに使用できる。この場合、チェックサムが、パブリック・デバイス２１５からパーソナル・デバイス２１０に送られ、このパーソナル・デバイス中で、予め選択された出力フォーマットに変換される。このようにする代りに、パーソナル・デバイス２１０が、パブリック・デバイス２１５からのチェックサムを自動的に記憶し、比較し、検証し、パーソナル・デバイスが不一致を検出したときにのみユーザに警報を発するようにしてもよい。
【００４０】
好ましくは、パーソナル・デバイス２１０は、セキュリティの望まれるレベルを提供するために、トラステッド・プラットフォームを頼りにすべきである。このようなプラットフォームは、上述のＴＣＧおよびその対応するデバイス・プロファイルにより提供される。パーソナル・デバイス２１０に適した同様のセキュリティ技術も思い描くことができる。ＴＣＧは、この分野で知られており、ＴＣＧプロファイルまたは同様の技術により仕様が決められるパーソナル・デバイス２１０は、本発明の一部とみなすべきではない。しかしながら、トラステッド・プラットフォーム・アーキテクチャの概念は、本発明をより高いセキュリティ・レベルで実施する上で重要であり、ＴＣＧの重要特徴について、以下、簡単に説明する。
【００４１】
ＴＣＧは、キーおよび他のセンシティブ情報のセキュアで改ざんに抵抗力のある記憶装置を提供する。特定のセンシティブ動作（例えば、キーの使用）は、権限あるシステム・コンポーネントのみが鍵（キー）等をアクセスでき、且つ結果が正しいという確信を持てるように行なわれる。
【００４２】
ＴＣＧは、コンピュータ・システムが期待通り構成されていることを検証することを助けることができる。すなわち、ＴＣＧは、現在のデバイス／システム構成の完全性の検証を行なう、すなわち、重要な機能は完全でマルウェアがないことを保証する。これの特に重要な点は、トラステッド・パスを作り出すこと、すなわちキーボードに入力されたことがアプリケーションに実際に到達することを確実にすることであり、また計算の出力が表示されていることと一致することである。
【００４３】
パーソナル・デバイス２１０は、ＴＣＧイネーブルドであることが好ましい。次の説明では、パーソナル・デバイス２１０がＴＣＧイネーブルドであるか、あるいはこれと同じまたはこれより高いセキュリティを提供するものと仮定する。本発明は、この仮定が無くても適用可能であるが、高い総合セキュリティを提供するにはセキュア・プラットフォーム・アーキテクチャが好ましい。
【００４４】
また、ランダム・データをユーザ理解可能情報に変換する方法、例えばランダム・データをイメージ、音、テキストまたは同様のものに変換する方法が存在するものと仮定する。ランダム・データをユーザ理解可能情報に変換する適当なアルゴリズムの例を以下に説明する。
【００４５】
背景部分で説明したように、ＴＣＧおよび引用した従来技術は、デバイスの真正をユーザに対して保証するのに十分な手段を提供しない。本発明の第１の実施例は、パーソナル・デバイスが信頼できるものであること、すなわちそれがパーソナル・デバイスそのもので詐欺的に置き換えられたあるいはその“クローン”ではないことをユーザに保証する方法および装置を提供する。本発明のこの実施例を、図２ｂに示されたパーソナル・デバイスの概略図および図３のフローチャートを参照して説明する。
【００４６】
図２ｂに、本発明によるパーソナル・デバイス２１０が概略的に示されている。モジュールおよびブロックは、機能部分とみなされ、必ずしもそれらの物理的オブジェクトではない。モジュールおよびブロックは、本発明による方法を実施するのに適合するように、少なくとも部分的にソフトウェア符号手段として実施されることが好ましい。“含む（ｃｏｍｐｒｉｓｉｎｇ）”という用語は、主として論理的構造を示すもので、“接続された”という用語は、機能部分間のリンクと解釈すべきで、必ずしも物理的接続を意味するものではない。しかしながら、選択された実施により、特定のモジュールは、デバイス中の物理的に区別できるオブジェクトとして実現でき、これは、ある場合には、セキュリティの観点から好ましい。
【００４７】
パーソナル・デバイス２１０は、複数のモジュールを含み、これらのモジュールは、それ自身にユニークとなり得るアイデンティフケーション（同一性認識）手段を有する。このようなモジュールは、ハードウェア・モジュール２４０と、メモリ・モジュール２４５とを含むが、これに限定されるわけではない。１つのメモリ・モジュール２４０は、例えば、そのデバイスそのもののユニーク・アイデンティフィケーション番号を持つことができる。デバイスが携帯電話である場合には、デバイスは、アイデンティフィケーション番号を提供できるＳＩＭカード２５０（またはそれと同等のもの）をさらに含むことができる。デバイス２１０は、また、ユーザからの符号、例えばＰＩＮコードを受ける符号モジュール２５５を有することができる。現在入力されたＰＩＮコードは、あるいは他の情報とともに、そのモジュールのアイデンティフィケーション番号とみなされる。これらのモジュールは、少なくともそれらのうちあるものは、最も好ましくは番号の形のアイデンティフィケーション手段を提供する能力を有し、アイデンティフィケーション・モジュール２４０−２５５と呼ばれる。チェックサムを計算するのに使用できる、特定シナリオに使用できるアイデンティフィケーション手段の総セットは、鍵材料と呼ばれる。例を挙げてさらに明確に説明すると、デバイス・ハードウェア・アイデンティファイアとともにユーザにより入力されたＰＩＮコード、またはこれらのある機能は、鍵材料の例である。これは、単なる例であり、同じデバイスが、別のシナリオにおいて、鍵材料を形成するために異なるアイデンティフィケーション手段を使用することができる。アイデンティフィケーション・モジュール２４０−２５５に関連して、チェックサム・モジュール２６０は、アイデンティフィケーション・モジュール２４０−２５５から提供された鍵材料に基づいてチェックサムを計算する。チェックサム・モジュール２６０は、ユーザ好みモジュール２６５に関連付けられる。ユーザ好みモジュール２６５は、計算されたチェックサムがユーザに対してどのように表現されるかについてのユーザの好みを受け取り記憶するようになっている。ユーザ好みモジュール２６５は、複数の変換モジュール２７０−２８５に接続され、好みの出力フォーマットに対応する変換モジュール２７０−２８５にチェックサムを送る。パーソナル・デバイス中で見受けられる典型的な変換モジュールの例は、イメージ変換モジュール２７０、テキスト変換モジュール２７５、および音変換モジュール２８０である。変換モジュール２８５により示された種々の他のタイプの変換モジュールとしては、例えば、スピーチを発生するようにしたものがあげられる。変換モジュール２７０−２８５において、チェックサムが特定のユーザ・フレンドリ・フォーマットに変換される。変換モジュールは、その結果をユーザに表示するための通常手段、例えば表示または音回路（図示せず）に接続される。
【００４８】
本発明の別の実施例によれば、パーソナル・デバイス２１０は、また、パブリック・デバイス２１５を認証するのにも使用される。この目的のため、パーソナル・デバイスは、パブリック・デバイスから外部チェックサムを受け取る受信モジュール２９０を備えることが好ましい。受信モジュール２９０は、受信した外部チェックサムをユーザ・フレンドリ・フォーマットに変換するために、ユーザ好みモジュールに接続されることができる。他方、受信モジュール２９０は、比較モジュール２９２に接続され、比較モジュール２９２は、メモリすなわち外部チェックサムのデータベース２９５に接続される。比較モジュール２９２は、受信したチェックサムを、メモリ／データベース２９５からリトリーブした前に記憶されたチェックサムと比較するようになっている。
【００４９】
本発明によるパブリック・デバイス２１５が、図２ｃに概略的に示されている。パブリック・デバイス２１５は、少なくともＰＩＮ受信モジュール２１７に接続されたチェックサム計算モジュール２１８を含む。チェックサム計算モジュール２１７およびＰＩＮ受信モジュール２１８は、好ましくは、パーソナル・デバイス２１０とデータを送受信するようにされた通信モジュール２２０に接続される。ＰＩＮ受信モジュール２１８は、パーソナル・デバイス２１０またはユーザ２０５からＰＩＮまたは他の情報を受け取るようなっている。チェックサム計算モジュール２１７は、パブリック・デバイス２１５にユニークな内部秘密を記憶し、またはリトリーブできる。チェックサム計算モジュール２１７は、さらに、１つまたはそれより多くのアイデンティフィケーション・モジュール２１９、例えば鍵材料として使用できるアイデンティフィケーション手段を提供できるハードウェアおよびメモリ・モジュールに接続できる。
【００５０】
図３に示された、本発明の第１実施例による方法は、次のステップを含む。
【００５１】
３０５：パーソナル・デバイス２１０は、そのデバイス内で利用可能なユーザフレンドリ出力フォーマットの中からユーザ２０５によって選択された少なくとも１つの好みの出力フォーマットを受信し記憶する。好みの出力フォーマットは、チェックサムが好ましくはどのユーザフレンドリ・フォーマットに変換されるべきかを示す。
【００５２】
３１０：オプションとして、ユーザは、利用可能などの鍵材料がチェックサムに含まれるべきか決定する。この選択は、パーソナル・デバイス２１０によって受信され記憶される。好ましくは、このオプションは、このデバイス中で利用可能な鍵材料に基づいて、ユーザフレンドリな態様でユーザに提示される。このようにする代わりに、選択は、ランダムにまたは予め定められたように行われる。
【００５３】
３１５：鍵材料は、パーソナル・デバイス２１０中に含まれる（選択された）アイデンティフィケーション・モジュールから抽出される。
【００５４】
３２０：チェックサムが、鍵材料に基づいて計算される。
【００５５】
３２５：好みの出力フォーマット（ステップ３０５）に少なくとも部分的に基づいて、チェックサムが対応する変換モジュール２７０−２８５に送られる。
【００５６】
３３０：好みの出力フォーマットに対応する選択された変換モジュール２７０−２８５は、チェックサムをユーザフレンドリ・フォーマットに変換する。
【００５７】
３３５：変換の結果は、適当な手段によって、例えば、ディスプレイ上でグラフィカルに、またはスピーカまたはイヤフォーンを通して一連の音調を演奏することにより、ユーザに提示される。
【００５８】
セットアップ・シーケンスと呼ばれるステップ３０５−３１０は、典型例では、セットアップまたはコンフィギュレーション・シナリオ中で実行される。このようにする代わりに、ユーザは、チェックサムを計算する態様または好みの出力を変更するためにこのシーケンスをアクティベートできる。
【００５９】
デバイス・コンフィギュレーション検証と呼ばれるステップ３１５−３３５は、少なくともパーソナル・デバイス２１０の立ち上げ時に、およびオプションとして好ましくはデバイスの動作の間時々、点線で示されているように繰り返される。デバイス・コンフィギュレーション検証は、例えばデバイスをある時間ほったらかしにしておいた後、ユーザがデバイスの真正をチェックしたいと望むときに、アクティベートすることができる。
【００６０】
デバイスの比較的静的コンフィギュレーションに関する鍵材料と見ることができるステップ３２０で使用された鍵材料に加えて、本方法は、トラステッド・パーソナル・デバイスで実行されるべきアプリケーションに関する鍵材料も含ませることができる。例えば、ユーザが通信アプリケーションを実行するパーソナル・デバイスを使用する場合、チェックサムは、このアプリケーションに関連したＩＤ、符号またはチェックサムも含む鍵材料に基づいて計算される。アプリケーションを使用する前に、ユーザは、このアプリケーションに関連したデバイス・コンフィギュレーション検証をアクティベートし、この確認のために変換されたチェックサムが提示される。第２のアプリケーションは、異なるチェックサムを生じさせ、従って異なる提示がなされる。従って、この実施例においては、本発明による方法は、アプリケーションの検証も含むように拡張され、ここでは、検証は、各アプリケーションにユニークである。
【００６１】
この実施例による方法および装置によって得られる改良されたセキュリティは、チェックサムが複数且つ可変セットの鍵材料に基づいて計算される方法、ならびに少なくともフォーマットがユーザの好みのフォーマットというだけではなく、チェックサムが長いシーケンスの数よりユーザにとって認識し易いフォーマットに変換されるという事実の双方によって達成される。このことは、大部分の人間は、例えば短い曲または歌として認識される一連の音色は表示されたチェックサムより容易に覚えることができるという事実による。もし、デバイスが改ざんされるか置換されると、その結果生じる曲は、ユーザが通常検出できるほど異なったすなわち変わったものとなる。ユーザが好むならば、結果は、例えばこれまた大部分の人間が変化を認識できるフォーマットであるグラフィカル・イメージとして出力される。本発明により出力フォーマットをユーザの好みに適合させることができることは、特に身体障害者には重要である。例えば、聴覚障害者は、グラフィカル表現を使用することができ、視覚障害者は、オーディオ表現を使用できる。
【００６２】
携帯電話においては、計算の一部および／または鍵材料の一部が、ＳＩＭ、例えば、より高い保護のためにはＳＩＭアプリケーション・ツールキット（ＳＡＴ）内に配置される。
【００６３】
オーディオに関して生じ得る問題は、それが、近くのデバイスによって記録され、後に再生される可能性があることである。従って、小さなスクリーン上のイメージの方が好ましいかもしれない。あるいは、イヤフォーン／ハンズフリーが接続されているか否か（携帯電話は通常これを自動的に検出する）によってオーディオを使用するか決めても良い。従って、ステップ３２５は、どのユーザフレンドリ・フォーマット（変換モジュール２７０−２８５）を使用すべきか決定するのに、好みの出力フォーマットに組み合わせてさらに追加のパラメータを考慮するように変更される。追加のパラメータは、例えば、パーソナル・デバイス２１０の現在のコンフィギュレーションを反映させたものになる。このようにする代わりに、ユーザは、１つより多くの好みの出力フォーマットを特定するようにしてもよい。例えば、パーソナル・デバイス２１０が第１コンフィギュレーションのときには第１の好みの出力フォーマットが使用され、パーソナル・デバイス２１０が第２コンフィギュレーションのときには第２の好みの出力フォーマットが使用される。
【００６４】
オプションとして、デバイスが少数のユーザ例えばファミリーで共用される場合には、各ユーザが別個のＰＩＮを入力でき、このＰＩＮはチェックサム計算の一部となる。従って、各ユーザは、異なるチェックサム／歌／イメージを得る。さらに、各ユーザは、プレゼンテーション・フォーマットに対して異なった好みを有することができる。
【００６５】
ユーザに、今、トラステッド・パーソナル・デバイス２１０が与えられているものとする。次の説明では、ユーザのパーソナル・デバイス２１０は、本発明の第１実施例の観点から信頼できるものと仮定する。ユーザが信頼でき既に認証されたパーソナル・デバイスを有しており、このパーソナル・デバイスが、パブリック・デバイス２１５と呼ばれる非パーソナル・デバイスのブートストラップ認証にも使用することができると仮定する。単純な非制限的例として、外部デバイスが（好ましくはＴＣＧイネーブルド）ＡＴＭとする。なお、例えば、パーソナル・コンピュータ（ＰＣ）、他の消費者用製品、自動販売機／チケット販売機、医療機器、自動ドア・ロック、自動車、電子政府用デバイス（電子投票ブース）等の他のデバイスにどのように拡張するかは容易にわかるであろう。
【００６６】
原理的には、検証のためにパーソナル・デバイスに（例えば、ＩＲまたはブルートウース（Ｂｌｕｅｔｏｏｔｈ）を介して）安全に送られるチェックサムをＡＴＭが計算することが好ましい。ユーザのデバイスは、トラステッド（信頼できる）なので、ユーザのデバイスは、ユーザの代わりに（予期したチェックサムと比較して）検証を実行でき、何らのランダム変換に関与することなく、その代わりにパーソナル・デバイス中で変換を実行し、その結果を、ユーザフレンドリ・フォーマットでユーザに提示する。ＡＴＭからトラステッド・パーソナル・デバイスには、“生の”ランダム・データを送るのが好ましい。何故なら、パーソナル・デバイスは、特定のユーザが好む変換方法を実施できるからである。あるユーザは、オーディオを好み、他のユーザは、イメージを好む等である。これにより、ＡＴＭ中で多くのユーザ特定変換機能を実施する必要を回避でき、ＡＴＭに多くの種々の出力手段を設ける必要も回避できる。
【００６７】
ＡＴＭによって作り出されるチェックサムは、パーソナライズされることが好ましい。その結果、ＡＴＭだけでなく、現在のユーザにも独特のものになる。これは、種々の方法で実行できる。簡単な方法は、チェックサムをユーザの入力したＰＩＮまたはそのある機能に依存させることである。別の方法は、ユーザのパーソナル・デバイスから、より高いセキュリティのために、非常に長いＰＩＮまたは他の符号を発生させ、送信させることである。
【００６８】
次に、上述のブートストラップ・シナリオを扱う本発明の第２の実施例を、図２ａ、および図４ａおよび図４ｂに示された概略メッセージ・フローを参照して説明する。パブリック・デバイス２１５は、スタンドアローン・ユニットでも、パブリック・システム２１６の一部であっても良い。次の説明では、パブリック・デバイス２１５という用語は、スタンドアローン・デバイスおよびパブリック・システム２１６の双方を例示するものとする。当初ユーザに対して認証されていないパブリック・デバイス／システムの例としては、これに限定されるわけではないが、ＰＣ、プリンタおよびファックス・マシンのような民生用電子機器；ＡＴＭ、自動販売機／チケット販売機、および自動クレジット・カード・システムのような金融取引に関連した装置／システム；医療機器；自動ドア・ロック；自動車；例えば電子投票ブースのような電子政府用デバイス、ゲーム／ギャンブル機械等を挙げることができる。
【００６９】
パブリック・デバイス２１５との最初のエンカウンタ（ｅｎｏｕｎｔｅｒ）において、図４ａに示された第２実施例の初期部分が実行され、次のステップを含む。
【００７０】
４０５：Ｄ＜−＞Ｔ：パーソナル・デバイス２１０とパブリック・デバイス２１５とがセキュア（安全）な接続（例えば、ブルートゥース、ＩＥＥＥ８０２．１１ｉ等）を確立する。
【００７１】
４１０：Ｕ−＞：ユーザ２０５が、パブリック・デバイス２１５に、ＰＩＮまたは他の“鍵”を入力する。
【００７２】
４１５：Ｄ：パブリック・デバイス２１５が、少なくとも内部秘密および入力されたＰＩＮに基づいて初期チェックサムを計算する。さらに、パーソナル・デバイス２１０中で鍵材料がどのように取り出されるのかということと同様に、鍵材料は、Ｄの他のアイデンティフィケーション手段、例えば、アイデンティティ（Ｄ）、他の内部情報（Ｄ）、および外部情報（Ｄ）を含むことができる。
【００７３】
４２０：Ｄ−＞Ｔ：パブリック・デバイス２１５が、計算した初期チェックサムをパーソナル・デバイス２１０に送る。
【００７４】
４２５：Ｔ：パーソナル・デバイス２１０は、送られてきた初期チェックサムおよび他のオプショナル・データのユーザフレンドリ変換を行う。このようにして、初期チェックサムは、パブリック・デバイス２１５を認証するための鍵材料の少なくとも一部を提供する。“一部”ということにより、パブリック・デバイス２１５により直接提供される鍵材料のほかに、Ｔそれ自身により内部的に供給される鍵材料も使用されることを理解されたい。これは、ある時間が経過しても利点がある。何故なら、Ｕに向けたＴの初期認証が行われ、Ｔの“暗黙の”再認証が自動的に行われ、信頼が高まる。外部情報（Ｄ）が使用されると、これも同様に検証される（以下、参照）。変換は、第１実施例に従うものであり、次のステップを含む。
【００７５】
４２５：１  ユーザの好み（ステップ３０５）に基づいて、送られてきた初期チェックサムが、記憶されたユーザの好みに対応した変換モジュール２７０−２８５に出力される。
【００７６】
４２５：２  記憶されたユーザの好みに対応する変換モジュール２７０−２８５が、送られてきた初期チェックサムをユーザフレンドリ・フォーマットに変換する。
このようにする代わりに、初期チェックサムおよび／または変換された初期チェックサムは、パーソナル・デバイス２１０によってメモリすなわちデータベース２９５に記憶される。
４３０：  Ｔ−＞Ｕ：  パーソナル・デバイス２１０は、適当な手段、例えば、ディスプレイ上でグラフィカルに、またはスピーカを通して一連の音色を再生することにより、変換結果をユーザに提示する。
４３５：  Ｕ／Ｔ  ユーザ２０５は、送られてきた初期チェックサムの変換表現を将来のために記憶する。
【００７７】
ステップ４１０において、“ＰＩＮ”は、パーソナル・デバイス２１０によって“実際”のユーザＰＩＮに関係なく、別のＰＩＮに変更でき、パーソナル・デバイス２１０からパブリック・デバイス２１５に送られる。これは、ユーザ２０５がデバイスの真正を確信するまで彼の“実際”のＰＩＮを開示する必要がないという利点がある。パーソナル・デバイス２１０は、将来の使用のため、ＰＩＮを記憶する。これにより、ＰＩＮをより長くより安全に保護できる。
【００７８】
ステップ４１５において、“外部情報”は、例えばトラステッド第三者によって提供される情報、例えば、ＡＴＭの場合、マシン・ベンダまたは銀行によって発行される“ドメイン証明書”であり、パブリック・デバイス２１５に独特の情報に署名されている。これは、初期認証のセキュリティが強化するものであり、典型例においては、連続エンカウンタ（ｃｏｎｓｅｃｕｖｉｖｅ  ｅｎｃｏｕｎｔｅｒｓ）では、必要ない。
【００７９】
ステップ４２５において、初期チェックサムまたは変換されたチェックサムが記憶される場合、ステップ４３０および４３５は、パーソナル・デバイス２１０が自らが初期チェックサムを受け取り且つ記憶していることをユーザ２０５に知らせるステップに置換される。このようにする代わりに、パブリック・デバイス２１５に対応する初期チェックサムが、他の手段によって、典型例では初期エンカウンタ（ｉｎｉｔｉａｌ  ｅｎｃｏｕｎｔｅｒ）の前に、パーソナル・デバイス２１０に送られるようにしても良い。例えば、銀行が、パーソナル・デバイス２１０に記憶させるために、それらのＡＴＭの全てのチェックサムのリストをユーザに提供しても良い。
【００８０】
パブリック・デバイス２１５との連続エンカウンタでは、図４ｂに示された第２実施例の第２部分が実行され、この部分は、次のステップを含む。
【００８１】
４４５：  Ｔ＜−＞Ｄ  パーソナル・デバイス２１０とパブリック・デバイス２１５とがセキュアな接続（例えば、ブルートウース）を確立する。
【００８２】
４５０：  Ｕ−＞Ｄ  ユーザ２０５が、パブリック・デバイス２１５に、ＰＩＮまたは他の“鍵（キー）”を入力する。
【００８３】
４５５：  Ｄ：  パブリック・デバイス２１５が、内部秘密,ＰＩＮ,｛アイデンティ（Ｄ）,他の内部情報（Ｄ）,外部情報（Ｄ）｝の連続チェックサムを計算する。
【００８４】
４６０：  Ｄ−＞Ｔ：  パブリック・デバイス２１５は、計算した連続チェックサムをパーソナル・デバイス２１０に送る。
【００８５】
４６５ｂ：Ｔ：パーソナル・デバイス２１０は、送られてきた連続チェックサムのユーザフレンドリ変換を行う。“外部情報（Ｄ）”が使用されると、これも同様に検証される（以下、参照）。変換は、第１実施例に従うものであり、次のステップを含む。
【００８６】
４６５：１  ユーザの好み（ステップ３０５）に基づいて、送られてきた連続チェックサムが、記憶されたユーザの好みに対応した変換モジュール２７０−２８５に出力される。
【００８７】
４６５：２  記憶されたユーザの好みに対応する変換モジュール２７０−２８５が、送られてきた連続チェックサムをユーザフレンドリ・フォーマットに変換する。
【００８８】
４７０ｂ：  Ｔ−＞Ｕ：  パーソナル・デバイス２１０は、適当な手段例えば、ディスプレイ上でグラフィカルに、またはスピーカを通して一連の音色を再生することにより、変換結果をユーザに提示する。
【００８９】
４７５ｂ：  Ｕ：  ユーザ２０５は、送られ変換され提示された連続チェックサムが、予期したすなわち記憶した変換初期チェックサムと一致するかチェックする。
【００９０】
４８０ｂ：初期チェックサムと連続チェックサムとが（すなわちそれらを変換したものが）一致すると、ユーザ２０５には、パブリック・デバイス２１５が認証されたこと、並びにパブリック・デバイス２１５の使用を続けてたぶん安全であること、典型例では、通信ネットワーク２２２を介してサーバ２２５により提供されるサービスを使用してもたぶん安全であることが知らされる。
【００９１】
４８５ｂ：ユーザ２０５が、変換された初期チェックサムと変換された連続チェックサムとが一致しないことを検出すると、ユーザ２０５には、パブリック・デバイス２１５は認証されていないこと、並びにパブリック・デバイス２１５の使用を続けることは愚かであるという警告が発せられる。
【００９２】
初期部分と同様のオプションが適用される。
【００９３】
この実施例においては、外部チェックサム、すなわちパブリック・デバイス２１５からパーソナル・デバイス２１０に送られる初期および連続チェックサムは、ユーザフレンドリ・フォーマットに変換するのに必要な時間のみパーソナル・デバイス２１０に保持され、デバイスには貯蔵されないことが好ましいことに留意されたい。すなわち、一旦レンダリング（ｒｅｎｄｅｒｉｎｇ）が行われたら、ユーザフレンドリ表現フォーマットの全てのデータは、パーソナル・デバイス２１０の内部メモリから即座に消去される。ユーザのメモリは、初期の認証に続いて、次の認証において、ユーザによって選択されたユーザフレンドリ・フォーマットへの変換の補助のために使用される。これにより、誰かがデバイスを入手するか、またはウイルスすなわちトロ−ジャン（Ｔｒｏｊａｎ）を植え付けてチェックサムに権限なくアクセスするリスクを低減するので、セッキュリティを高めることができる。
【００９４】
このようにする代わりに、送られてきた連続チェックサムおよび／または送られ変換された連続チェックサムを、パーソナル・デバイス２１０により前に記憶された（ステップ４３５）初期チェックサムと比較しても良い。この代わりの実施例が図４ｃに示され、ステップ４６５ｂ,４７０ｂおよび４８５ｂが次のステップで置換される。
【００９５】
４６５ｃ：  パーソナル・デバイス２１０が、送られ変換された連続チェックサムと、前に記憶した（ステップ４３５）初期チェックサムと比較する。
【００９６】
４７０ｃ：  Ｔ−＞Ｕ：  送られてきた連続チェックサムが、記憶された初期チェックサムと一致すると、ユーザには、“ＯＫメッセージ”により、パブリック・デバイス２１５が認証されたことが示される。送られてきた連続チェックサムが、記憶された初期チェックサムと一致しないと、ユーザには、“警告メッセージ”により、パブリック・デバイス２１５は認証されていないことが示される。
【００９７】
パーソナル・デバイス２１０は、複数の前に認証したアントラステッド・デバイス２１５に対応する複数の異なる初期チェックサムを記憶できる。チェックサムのデータベースは、リトリーバルを容易にするため、各パブリック・デバイス２１５のアイデンティファイアによってインデックスされることが好ましい。ステップ４６５において、パーソナル・デバイス２１０は、メモリ／データベース２９５に記憶された複数の初期チェックサムと比較する。現在送られてきたチェックサムが、記憶されたもののどれとも一致しないと、ユーザには、接触中のパブリック・デバイスは、新しくまだ認証されていないか、または信頼できるものではないという警告が発せられる。この実施例は、検証が、パーソナル・デバイス２１０によって自動化され制御され、ユーザ２０５はパーソナル・デバイス２１０によって警告が発せられるまで関与する必要がないという魅力的なソリューションを提供する。セキュリティが高まるかは、パーソナル・デバイスが信頼できるかに依存する。偽パーソナル・デバイスは、例えば、警告を発生することはできない。この実施例は、パーソナル・デバイスの認証にデバイス・コンフィギュレーション検証を使用する（３０５−３３５）ので、新たな外部チェックサムと記憶されたチェックサムと比較が外部から干渉されることはない（改ざんされることはない）ことをユーザに保証できる。
【００９８】
本発明の別の実施例においては、複数のチェックサムを記憶し、チェックサムを変換／記憶する上記２つの代替実施例の構成要素が、便利でかつセキュア認証を行うように組み合わされる。複数のパブリック・デバイス２１５が認証されるべきときには、各デバイスが特有のチェックサムを発生し、ユーザ自身によって比較が行われる。このことは、ユーザが複数の歌／絵／テキストを記憶する必要があることを意味する。これは、本発明のセキュリティに何かを付加するものであるが、ユーザにとって少し不便でもある。しかしながら、後述するように、セキュリティと便利さとのトレードオフが可能である。説明を簡単にするために、変換モジュール２７０−２８５への全ての入力は、ｋビットの大きさであると仮定する。当業者は、ｋを異なる値でできることは理解できるであろう。“アイデンティティ”ｊを有するパブリック・デバイス２１５が、チェックサムｃ(ｊ),ｊ＝１,２,．．．を発生し、ｃは、ユーザが選択した好ましい出力／表現されるべきイメージ／歌／テキスト等に対応するｋビット値である。すなわち、ｃは、選択されたモジュール（図２ｂの２７０,２７５,２８０または２８５）によって変換されたときに、特定のユーザ好みのイメージ／歌／テキストを発生するｋビット値である。全てのデバイス２１５に対して唯一のｃというのもあるが、パブリック・デバイス２１５の各タイプに一つ（例えば、ＡＴＭに独特のあるｃ、自動販売機に独特のあるｃ等）というのもあり得る。最後に、好ましくはユーザおよび／またはユーザのパーソナル・トラステッド・デバイス２１０にのみに知られる秘密ｓがある。
【００９９】
本実施例によれば、チェックサムを記憶するステップ４２５は、次のように変更／拡張される。
【０１００】
４２５ｄ：パブリック・デバイスｊに向けて送られてきたチェックサムｃ(ｊ)とともに、またはこれの代わりに、ｙ(ｊ)＝Ｅｎｃｒ(ｓ,ｃ(ｊ)ＸＯＲｃ)、すなわち、秘密ｓによって暗号化されたｃ(ｊ)ＸＯＲｃが暗号化表現として記憶される。
【０１０１】
そして、ユーザ・フレンドリ・フォーマットに変換するステップであるステップ４６５ｂは、次のように変更される。
【０１０２】
４６５ｄ：連続的チェックサムｃ(ｊ)の変換は、ｃ(ｊ)に基づくのではなく、ｃ(ｊ)ＸＯＲ  Ｄｅｃｒ(ｓ,ｙ(ｊ))（すなわち、鍵ｓを使用したｙ(ｊ)の解読）に基づいて行われる。変換への入力として、ｃ(ｊ)に関係なく、同じ値ｃが発生することは容易にわかるであろう。
【０１０３】
従って、ユーザは、一つの値ｃ（または、デバイス各タイプにつき一つの値ｃ）を記憶するだけでよく、ユーザ２０５の自分の記憶による認証を容易にできる。鍵ｓが十分に保護されて（例えばユーザのＰＩＮによって）いれば、値ｃ(ｊ)ＸＯＲｃは暗号化された形で記憶されるので、これらは、パーソナル・デバイス２１０が無くなるあるいは盗まれても、安全に保たれる。デバイス２１０それ自体で十分な保護（例えば、物理的な）が提供できれば、暗号化／解読化を省略できることに留意されたい。さらに、ＸＯＲ演算のほかに他の演算も使用できる。例えば、記憶される値は、
ｙ'(ｊ)＝Ｅｎｃｒ(ｓ,(ｃ(ｊ)+ｃ)ｍｏｄＭ)
の形にすることができ、比較の時には、
(ｃ(ｊ)-Ｄｅｃｒ(ｓ,ｙ'(ｊ))ｍｏｄＭ
とすることができる。ここで、Ｍは、ｋビット（またはそれより大きい）整数である。一般に、Ｅｎｃｒ（ｓ,ｆ（ｃ,ｃ(ｊ)））を記憶でき、変換のときには、ｇ(Ｄｅｃｒ(ｓ,ｙ(ｊ)),ｃ(ｊ))を使用する。ｇは、各ｃにつきｇ(ｆ(ｃ,ｃ(ｊ)),ｃ(ｊ))＝ｃの意味でｆの“逆数”である。
【０１０４】
オプションとして、４６５ｄは、パーソナル・デバイス２１０が解読化／変換を行う前にまずｃ(ｊ)と比較することを付加することができる。
【０１０５】
セキュリティをさらに高めるために、パーソナル・デバイス２１０中において、デバイス・コンフィギュレーション検証（３０５−３３５）を自動的にトリガーするステップを、例えば、開始ステップ４４５に関連付けて追加することができる。従って、ユーザ２０５は、例えば、パブリック・デバイス２１５を使用して潜在的にセンシティブな取引を始める前に、パーソナル・デバイス２１０が信用できるものであるという自動確認を得ることになる。上述したように、パブリック・デバイス２１５の各認証、さらに信頼されたパーソナル・デバイス２１０からの鍵材料を受け入れても、同様の効果を得ることができる。
【０１０６】
パブリック・デバイス２１５の自動検証の別の方法は、ステップ４４５におけるパーソナル・デバイス２１０とパブリック・デバイス２１５との間の接続を確立する間、例えば、パブリックおよびプライベート・キーを使用する、暗号アイデンティフィケーションを含む。典型例においては、両デバイスは、前に、トラステッド・サプライアから証明書の提供を受けている。また、この場合、パーソナル・デバイスが信頼されるべきものであることがユーザにとって最も重要である。
【０１０７】
以上、ユーザがパブリック・デバイス２１５またはパブリック・システム２１６に直接コンタクトし、これらのデバイスが、例えば、現金を引き出すためにＡＴＭを使用する次の動作に直接使用されるというシナリオに基づいて、本発明を例示して説明した。本発明の方法および装置は、この使用に限定されるわけではなく、パーソナル・デバイス２１５がより高いセキュリティの利益を享受できるさらなる動作にアクティブに使用されるアプリケーションにも使用できる。このようなアプリケーションは、例えば、パーソナル・デバイス２１０が音声またはデータ通信をセットアップするために無線アクセス・ネットワークをアクセスする携帯電話であることを含む。ＵＭＴＳにおいては、携帯電話とアクセス・ネットワークは、互いに認証し合う。このシナリオでは、本発明により、携帯電話と無線アクセス・ネットワークが真正であることがユーザに保証され、通知なくシステムが“ハイジャック”されるリスクが効果的に低減される。
【０１０８】
［実現例］
本発明は、ランダム・バイナリ・ストリング（チェックサム）を人間が容易に認識できるデータに変換する方法が必要である。これは、いくつかの方法で実現でき、以下、簡単な理論的背景、続いて代替可能な実現例を説明する。当業者には、理解できるように、バイナリ・ストリングをユーザ・フレンドリ・データに変換する他のフレームワーク、上記理論の他の実際例を、本発明に関連付けて使用できる。
【０１０９】
本方法は、コンピュータ・サイエンスに精通した者には、直観的に“逆ハッシュ（ｉｎｖｅｒｓｅ  ｈａｓｈｉｎｇ）”を思い浮かべるであろう。ハッシュの目的は、長い、非均一に分布されている可能性があるストリングを、短いがより均一に分布されたストリングに変換することである。従って、比較的短いランダム・ストリングが、より長い非ランダム表現に変換され得る。生成されたストリング／表現は、同じ長さの全てのストリングのセットの中では非ランダムであるが、情報のエントロピー（伝達効率）／量は、元の短いストリングと均等にできることが論証されている。
【０１１０】
可能な方法を正式に説明する。Ｎ＝｛１,２,．．．．｝が自然数を示すものとする。アルファベットΣは、基数（ｃａｒｄｉｎａｌｉｔｙ）ｂのシンボルのセットとする。ｎ∈Ｎとし、Σnは、Σにわたる長さｎの全てのストリングからなるものとする。従って、Σnの基数は、ｂnである。（典型例においては、Σは、｛０,１｝であり、従って、Σnは、長さｎの全てのバイナリ・ストリングのセットである）。ｍ(ｎ)≧ｊ(ｎ)≧ｋ(ｎ)が、ｋ(ｎ)≧ｎとする整数値関数（ｉｎｔｅｇｅｒ  ｖａｌｕｅｄ  ｆｕｎｃｔｉｏｎ）であり、Ｓ1,Ｓ2,．．．,Ｓm(n)は、セットとする（Ｓjは、人間が認識できるアイテム、例えば英語の言葉、絵、音等を含むものとする）。次のマッピングを行う符号関数が存在する。：
Ｃn：Σn→Ｓr1×Ｓr2×...×Ｓrk(n)
冗長関数は、次の式で示される。：
ρn：Ｓr1×...×Ｓrk(n),  →Ｓt1×...×Ｓtj(n)
ここで、ｔ＝(ｔ1,ｔ2,．．．,ｔj(n))である。ここで、ｔi∈Ｎであり、ｔ1＜ｔ2＜．．．＜ｔj(n)≧ｍ(ｎ)である。ここで、ρnは、好ましくは、ｔ∈｛ｒ1,ｒ2,．．．,ｒk(n)｝としたときの各Ｓtについての恒等関数（ｉｄｅｎｔｉｔｙ  ｆｕｎｃｔｉｏｎ）である。従って、リスト／ベクトルｒは、ρnを唯一決定する。換言すれば、逆数ρn-1は、投影である。直観的に述べると、ｃnは、バイナリ・ストリングを“ユーザ・フレンドリ”データ・アイテムのｋ(ｎ)組に変換し、ρnは、特定の場所に追加のユーザ・フレンドリ・データを“挿入”する。関数ｃn,ρnは、もちろん効率的に計算可能でなければならない。いくつかの例を後述する。確率
Ｐｒ[ρn(ｃn(ｘ1))＝ρn(ｃn(ｘ2))]
（ランダムｘ1≠ｘ2としたときの確率）は、高いセキュリティにおいては小さくなくてはならない。すなわち、２つのチェックサムが同じ人間読み取り可能データを生成することがあってならない。ρnは、冗長関数であり、ｃnの出力にアイデンティティ・マッピングをしていると仮定しているので、確率は、次の値より大きくできない。：
Ｐｒ[ｃn(ｘ1)＝ｃn(ｘ2)]
この場合、ｃnの選択のみが、セキュリティ上、重要である。ランダム特性に対する強い要求がある場合には、セキュリティを実際に保証するために、ｃnとρnとの間に次の関係が課せられる。：
ρn(ｃn(ｘ1))＝ρn(ｃn(ｘ2))  ⇒  ｘ1＝ｘ2
（すなわち、ρnの範囲に限って、ｃnは１対１の関数である。これについては、さらに後述する）しかし、上述のように、確率ｘ1＝ｘ2が十分に小さければ、１０億中１あたりで実際上十分である。この最後の特性は、（Σにわたって全ての入力ストリングが可能とすると）セットのサイズに対して次の条件を意味する：Πiｓｉｚｅ(Ｓi)≧ｂn,ここで、あるｊに対してｉ＝ｒjとなるようなｉのセットにわたって積が取られる。セット｛Ｓj｝および関数ｃnに対する他の唯一の制限（これは、絶対的数学条件で表現することが難しい）は、Σnからランダムにｘを選択するときに、イメージｃn(ｘ)が人間に“覚えることが容易”ということである。
【０１１１】
このスキームの実際的使用のアイディアは、次の通りである。ランダムなｎビットのストリングｘが、例えば、デバイス中のハードウェアのチェックサムとして生成される。この値にρn(ｃn(ｘ))が適用され、ユーザに“示される”。ユーザは、この出力を承認するか否かに応じて受け入れるか拒絶する。
【０１１２】
所与のｎに対して、｛Σ,ｃn,ｔ,ｍ(ｎ),ｋ(ｎ),Ｓr1,Ｓr2,．．．,Ｓrk(n)｝によって、符号スキームが決まる。同じアルファベットに対して異なる入力長ｎが必要ならば、次のような符号化ファミリーを定義できる。：
Σ,ｍ(ｎ),ｋ(ｎ),｛ｃn,ｔ,Ｓr1,Ｓr2,．．．,Ｓr2(n)｝n≧1
これにより、一つの可能な符号スキームの正式な説明を終了する。
【０１１３】
［観察］
離散的セット｛ｘ1,ｘ2,．．．,ｘn｝についての確率分布Ｄに対して、次のようにエントロピーを定義する。：
Ｈ(Ｘ)＝−Σiｌｏｇ2(ＰｒD[Ｘ＝ｘi])・(ＰｒD[Ｘ＝ｘi])
すなわち、Ｄによりランダムに選択された要素を示すのに必要な（バイナリ）ビットの期待数である。任意の関数ｆに対して、ｆが１対１であるときのみ、Ｈ(ｆ(Ｘ))≦Ｈ(Ｘ)が対等に成立することは周知である。このことは、符号化関数ｃnが、それを１対１にすることにより、元のランダム・ソースのエントロピーを維持できることを示す。（１対１符号化が実際に好ましくない場合がある。下記コメント参照）。
【０１１４】
冗長関数の目的は、生成される出力の“見かけ”を改善することにある。例えば、バイナリ・ストリングが英語文に変換される場合、符号化には重要ではないが読み易さを高めるために、余分な語（例えば、前置詞）を導入するのが有益である。このような冗長の例は、以下に述べる。ユニークなプリメージュ（ｐｒｅｉｍａｇｅ）が望まれるときでさえ、上述のように非冗長部分に限定すれば、符号化がユニークなことだけが必要である。
【０１１５】
ある場合には、符号化を１対１にしない方が有益なことがある。例えば、チェックサムが１６０ビット・ハッシュ値であるチェックサム・シナリオを考える。これを英語に変換する一つの可能な方法は、各バイトを英語の単語の発言と解釈する方法である。これによると、出力は、長さにして２０（英語）単語程度になる。この文の全体の長さは、覚えるのが困難であり、会話が行われる前に、ハッシュ値のある部分を無視してセキュリティにつて僅かに妥協するのが良い。このような場合、２ステップの検証を行うと良い。すなわち、チェックサム（変換された暗号化されていない英語）が正しくないのではとユーザが疑った場合、実際の全体のチェックサムの第２マニュアル・コントロールを行うことができる。このようにして比較するテキストは、非常に長いが、１６０ビットのランダム・バイナリ・ストリングを比較するよりは、約２０単語の英語文を人間が読んで比較する方が非常に容易である。
【０１１６】
長いリアリスティックな例をマニュアルで発生することは問題があるため、上記例は単純である。しかしながら、上記例は、当業者に対する例示としては十分である。
【０１１７】
［パスフレーズ発生］
例１：
完全な２デジットＰＩＮコードに等しいセキュリティが必要とされる場合を考える。従って、ｎ＝２で、アルファベットが、Σ＝｛０,１,．．．９｝で、ｂ＝１０である。これが、３つの単語の英文、すなわちｊ(ｎ)＝３に変換されなければならない。各ｉ,ｉ＝１,２,３について、Ｓiは、英単語のセットであり、ここで、Ｓ2およびＳ3は次の通りである。
【０１１８】
【表１】
2009508389.tif 000003
【０１１９】
コーディングｃ2は、単純である。２デジット入力ｘ＝ｘ1ｘ2に対して、ｃ2(ｘ1ｘ2)は、単純に、Ｓ2からｘ1番目の単語、Ｓ3からｘ2番目の単語である。“読取可能度”を改善するために、首位には常に“ｔｈｅ”が付加される。すなわち、Ｓ1＝｛ｔｈｅ｝である。従って、冗長関数は、ｔ＝（１,２,３）およびρ2,t(ｗ2ｗ3)＝“ｔｈｅ”ｗ2ｗ3である。
【０１２０】
入力されたＰＩＮコード／チェックサムが“７１”（ランダムに発生）とする。第１列の７番目の単語“ａｐｐｌｅ”、第２列の１番目の単語“ｓａｉｌｓ”を選ぶと、“ａｐｐｌｅ  ｓａｉｌｓ”が得られる。首位“ｔｈｅ”を付加すると、出力は、“ｔｈｅ  ａｐｐｌｅ  ｓａｉｌｓ”となる。例えば、３単語シーケンス“ｔｈｅ  ｄｏｇ  ｊｕｍｐｓ”を対応符号に逆変換すると、冗長により、“ｔｈｅ”が消去される。残りに２つの単語は、逆テーブル・ルックアップで１０進デジットに逆変換され、“ｄｏｇ”−＞１,“ｊｕｍｐｓ”−＞４、すなわちＰＩＮコードは“１４”となる。この符号（またはその関数）は、内部データベースに記憶されたある値と比較され、許容／拒絶の決定がなされる。“ｔｈｅ  ｃａｒ  ｓｔｏｐｓ”のような無効（不存在符号）は、もちろん容易に検出できる。作り出された文のエントロピー（ｅｎｔｒｏｐｙ）は、明らかに、２デジット１０進数に等しい。
【０１２１】
発生されたストリングが真にランダムであれば、上記テーブル（符号関数）に知識は、敵が正しいパスワードを想像する助けを与えるものではない。
【０１２２】
例２：
上述のチェックサムまたはＰＩＮコードをコンピュータ・スクリーン上のグラフィカル・オブジェクトに変換するグラフィカル・コーディングについて簡単に説明する。例えば、第１および第２デジットは、オブジェクトが描かれるスクリーン上の１０対１０グリッド中の(ｘ,ｙ)グリッド点と解釈できる。ＰＩＮコードに逆変換すれば、オブジェクトは、コンピュータのマウスを使用してドラッグすることにより、スクリーン上に配置される。このようにする代わりに、ＰＩＮコードの第１デジットでオブジェクトのタイプを特定し、第２デジットでスクリーン上の位置を指定するようにもできる。多くの可能性がある。例えば、オブジェクトの色を変化させるカラー・グラフィクスも使用できる。例えば、回転のような他のグラフィカル変形も可能である。
【０１２３】
例３：
前述したように、コンピュータ・プログラムが認証のためにチェックされる場合について検討する。実際のプログラム符号ｐの１６０ビット・ハッシュ値（またはチェックサムの他の手段）が計算されてｈ(ｐ)が得られるものとする。このｈ(ｐ)は、次のように英語に変換される。１０個のテーブルＳ1,．．．Ｓ10が有り、各テーブルが（最大）２５６英単語からなる。ｈ(ｐ)の各第２の８ビット・ブロックが一つのテーブルをインデックスし、２ｉ番目の８ビット・ブロックｈ(ｐ)2iがテーブルＳiをインデックスし、テーブルＳiから単語ｈ(ｐ)2iｍｏｄ｜Ｓi｜を選択する。ここで、｜Ｓi｜は、Ｓi,ｉ＝１,．．．,１０中の単語の数である。（従って、ハッシュの各第２の８ビット・ブロックｈ(ｐ)2i+1が無視される。）これにより、１０単語英語文が作られる。最後に、読取可能度を高めるために、冗長が付加される。
【０１２４】
例４：
これまで説明した全ての例に共通する分母は、入力ランダム・ストリングが部分に分割され、各部分が、“テーブル”または同様のものをインデックスするのに独立に使用されることである。このように構成されたフレーズは、完全に意味が有り英語の文とみなされるが、上記独立使用のため、すごく自然な英文とはいえない。事実、自然言語においては、次の単語が、前の単語に関係ないということは少ない。このような現象の研究は、既に、シー・イー・シャノン（Ｃ．Ｅ．Ｓｈａｎｎｏｎ）によって行われており、［Ｓｈａｎｎｏｎ］を参照されたい。例えば、上記例１において、文“ｔｈｅ  ｗｏｍａｎ  ｓｗｉｍｓ”は、“ｔｈｅ  ａｐｐｌｅ  ｆｏｒｇｅｔｓ”より非常に自然である。しかし、両者は文法上完全に正しい。
【０１２５】
一般に、確率過程は、離散的な時間Ｘ1,Ｘ2,．．．においてシュミレートされる。Ｘi＝ｓの確率は、次に示すように前に観察した結果に依存し、
Ｐｒ[Ｘi＝ｓ｜Ｘi-1＝ｓi-1,Ｘi-2＝ｓi-2,．．．,Ｘ1＝ｓ1]
一般に、ｓおよびｉの項のみで表現できない。特に魅力的なケースは、マルコフ・プロセス（Ｍａｒｋｏｖ  ｐｒｏｃｅｓｓ）を有する場合で、Ｘiの結果がＸi-1にのみ依存する次の場合である：
Ｐｒ[Ｘi＝ｓi｜Ｘi-1＝ｓi-1,Ｘi-2＝ｓi-2,．．．,Ｘ1＝ｓ1]
＝Ｐｒ[Ｘi＝ｓi｜Ｘi-1＝ｓi-1]
しかしながら、この例は、完全に一般性を有する。
【０１２６】
検証したい装置またはプログラムｐのチェックサムｈ(ｐ)が入力として与えられたとする。一般性を損なうことなく、ｈ(ｐ)は、長さｎの２進値とする。望ましい出力は、長さｋ(ｎ)で（例えば、ｋ(ｎ)個の単語の英文）、ｋ(ｎ)個のテーブル｛Ｓi｝を有し、Ｓiは、｜Ｓi｜のエントリを有する。テーブル値は、次にように仮定する。：
ｐ(ｉ,ｓi,ｓ)＝Ｐｒ[Ｘi＝ｓi｜Ｘi-1＝ｓi-1,Ｘi-2＝ｓi-2,．．．,Ｘ1＝ｓ1]
ここで、各ｉ＝１,．．．ｋ(ｎ)、および各ｓi,ｓについて、ｓ＝(ｓi-1,ｓi-2,．．．．ｓ1)である。（これらの値は、“オン・ザ・フライ（ｏｎ  ｔｈｅ  ｆｌｙ）”で効率的に計算することもできる）ｎは、十分大きいものとする。このことが何を意味し何故必要なのかを次に説明する。
【０１２７】
ｈ(ｐ)を、自然な態様で、ｈ(ｐ)1,．．．ｈ(ｐ)k(n)に分割する。（従って、ｎ≧ｋ(ｎ)であり、一般に、各ｈ(ｐ)iの長さは、事前に決定しておく必要はなく、ｈ(ｐ)iの長さは、ｈ(ｐ)1,．．ｈ(ｐ)i-1に依存する。）ｈ(ｐ)1,．．ｈ(ｐ)i-1は、既に出力ｓ1,．．,ｓi-1（例えば、英単語）に変換されたものとし、次にどのようにしてｓiを計算するか？ｓ＝(ｓi-1,ｓi-2,．．．ｓ1)であることが知られている。何故なら、これは既に計算され、仮定として、ｓが与えられると、各可能な選択ｓj∈Ｓiについて、次のことが知られているからである。：
ｐi,s(ｓj)＝ｐ(ｉ,ｓj,ｓ)
＝Ｐｒ[Ｘi＝ｓj｜Ｘi-1＝ｓi-1,Ｘi-2＝ｓi-2,．．．,Ｘ1＝ｓ1]
さらに、ｈ(ｐ)ｉの長さ（ビット数）がｍで示され、ｍは少なくとも次の条件を満たすものとする。
【０１２８】
【数１】
2009508389.tif 000004
ここで、εは、セキュリティ・パラメータであり、その決定は延期される。ｔ(０)＝０およびｔ(ｊ)＝ｔ(ｊ-１)+ｐi,s（ｓj）と定め、ここで、ｊ＝１,２,．．．,｜Ｓi｜とすると、ｔ(｜Ｓi｜)＝１である。最後に、２進ストリングｈ(ｐ)iを自然な態様の整数と解釈し、次の値を計算する。：
Ｔi＝２-m・ｈ(ｐ)i  （ただし、Ｔi∈[０,１]）
ｓj∈Ｓiは、Ｔi∈[ｔ(ｊ-１),ｔ(ｊ)]に対するｊによって決定され、出力される。ｓjが計算された後、ｓj+1が計算されるというように計算が続く。
【０１２９】
スキームが解析されれば、Ｔiが[０,１]中に完全に均一に分散された場合、各ｓj∈Ｓiは、確率ｔ(ｊ)-ｔ(ｊ-１)＝ｐi,s（ｓj）（これは正しい確率である）により選択される。これは完全に正しくないかもしれない。しかしながら、ｈ(ｐ)iが[０,２m-１]内で均一に分散するものと仮定すると、ｈ(ｐ)iの長さ、すなわちｍの小さい範囲では、Ｘi-1,Ｘi-2,．．．,Ｘ1が与えられているとして、各ｓjは、Ｘiの真の分散のε内の確率で選択されるとみることができる。パラメータεは、セキュリティ要件に従って選択される。ｈ(ｐ)のストリングの必要な長さ、すなわちｎは、計算でき、必要な条件は、次のように示され、
ｎ＝Σiｌｅｎｇｔｈ(ｈ(ｐ)i)
≧ｋ(ｎ)・ｌｏｇ2ε-1＋Σiｍａｘjｌｏｇ2ｐi,s(ｓj)-1
ｑを次のように定義すると、
ｑ＝ｍｉｎi,jｌｏｇ2ｐi,s(ｓj)
ｎは次のように表現でき
ｎ≧ｋ(ｎ)・(ｌｏｇ2ε-1＋ｑ-1)
これで十分である。実際には、ｈ(ｐ)は、１６０ビット・ハッシュ値で、上記不等式を満たさない。そうであっても、ｈ(ｐ)は、擬似乱数発生器ｇの入力種として使用でき、代わりに、ｇ(ｈ(ｐ))を使用できる。元の長さの多項式伸長係数は、セキュアな態様で得ることができることは周知である。
【０１３０】
本発明を、現在最も実用的で好ましい実施例に関連付けて説明したが、本発明は、上述の実施例に限定されるものではなく、反対に、添付の特許請求の範囲およびその精神に含まれる種々の変形および均等な構成を含むものである。
【図面の簡単な説明】
【０１３１】
【図１】従来技術による概略メッセージ・フロー・スキームである。
【図２ａ】本発明が使用されるシナリオの概略図である。
【図２ｂ】本発明によるトラステッド・パーソナル・デバイスの概略図である。
【図２ｃ】本発明によるパブリック・デバイスの概略図である。
【図３】本発明の方法の第一実施例のフロー・チャートを示す。
【図４ａ】本発明の実施例の初期部分の概略メッセージ・フロー・スキームである。
【図４ｂ】上記方法の連続部分の概略メッセージ・フロー・スキームである。
【図４ｃ】本発明の別の実施例による連続部分のメッセージ・フロー・スキームである。
【図１】
2009508389.tif 000005
【図２ａ】
2009508389.tif 000006
【図２ｂ】
2009508389.tif 000007
【図２ｃ】
2009508389.tif 000008
【図３】
2009508389.tif 000009
【図４ａ】
2009508389.tif 000010
【図４ｂ】
2009508389.tif 000011
【図４ｃ】
2009508389.tif 000012
【国際調査報告】
2009508389.tif 000013
2009508389.tif 000014
2009508389.tif 000015