説明

セキュリティコード生成方法、セキュリティコード生成方法を用いた方法、及びセキュリティコード生成方法のためのプログラム可能な装置

プログラム可能なユーザ装置を用いてセキュリティコードを生成する方法が述べられる。この生成されるセキュリティコードは、それ自体が、ユーザ及びプログラム可能なユーザ装置の両方を表す。一実施形態では、ユーザが自分のユーザ名で登録されているサービスプロバイダを表すサービスプロバイダコードは、このセキュリティコードを計算する基準に加えられる部分を形成している。このセキュリティコードは、いくつかのセキュリティ用途、例えば、ユーザとサービスプロバイダとの間で双方向に交換される情報への署名や、そのような情報の暗号化/復号化のためだけでなく、情報のローカル保存のためやユーザ認証のためにも役立つ。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ユーザ認証のために、また、プログラム可能なユーザ装置を用いて情報を保存し、情報に署名し、情報を暗号化/復号化するために、再生可能なセキュリティコードを生成する方法に関する。本発明はまた、この再生可能なセキュリティコードを、様々なセキュリティ目的で利用させる方法と、それに対応するプログラム可能なユーザ装置にも関する。
【背景技術】
【0002】
サービスプロバイダがサービスを提供して、電子媒体を通じて情報を公衆に転送する多くの場合に、このサービスを受け取るか、情報をサービスプロバイダと交換する個人の識別を検証できるようにする装置が必要である。従来の認証方式は、ユーザ名とパスワードの対を使用して、ユーザを認証している。しかし、このような単純な方法は、最低限のセキュリティを提供するにすぎない。さらに高度のセキュリティを得るためには、いわゆる二要素認証を使用することが、ますます普通となっている。このような二要素認証は、「ユーザ認識(something you know)」要素(例えば、パスワード)と、「ユーザ所持(something you have)」要素に基づいている。一例として、(ユーザが所持している)銀行支払いカードと、それに対応する(ユーザが認識している)PIN(個人識別番号)コードがある。
【0003】
パスワードが、オープン通信網又はコンピュータネットワーク上で送られることになっている場合には、このパスワードは、容易に他人に取り込まれることがある。それゆえ、一定の(静的)パスワード(例えば、PINコード)ではなくて、いわゆるワンタイムパスワード(動的パスワード)を使用できるようにすることが望ましい。このような目的で、例えば多くの銀行は、ワンタイムパスコード(すなわち、使う度に変わる番号)を算定して、それを小さな画面上に表示するカード状の半導体装置(これは、セキュリティトークンとも呼ばれている)を使用している。認証しようとする(ログイン)人は、認証を行うときに、この番号をシステムに入力することで、自分がこの装置の所有者であることを証明する。このような半導体装置の一例は、米国特許第4,599,489号に開示されている。セキュリティを高めるために、この半導体装置はそれ自体、ときには、この半導体装置を「オープンする」のに必要なPINコードで保護されることもある。そうする場合に、正しいパスコード番号を表示させる前に、まず最初に正しいPINを入力しなければならない。
【0004】
この種の半導体装置に関わる1つの問題は、これらの半導体装置の入手及び配布にかかる多額の費用である。もう1つの問題は、インターネットを介して、様々な機関(施設)からのバンキングサービスなどのいくつかのサービス(例えば、それぞれの利用には個別の半導体装置が必要となる。)の正規ユーザである人が、異なる複数の装置を保ち、かつそれらの装置を取り扱う必要があろうということである。複数のサービスプロバイダが、複数のサービスに対して、共通の、又は一般的な「マルチコード計算機」と全く同一の半導体装置を利用できるとすれば、公衆には実に有益となろう。
【0005】
その一方、様々な種類の電子機器において、セキュリティ対策を実施できるようにする設備が知られている。例えば、ソフトウェアを通信端末に保存して、ユーザとサービスプロバイダとの間のセキュア通信サービスに使用することがある。この必要とされるソフトウェアは、この端末のメモリに、独立したコンピュータプログラムとして格納されることがある。様々な目的で、異なるサービスプロバイダから得られるアプリケーションが、全く同一の端末に保存されることがある。
【0006】
セキュア通信サービスなどのサービスに対して、コンピュータプログラムを利用したいと思っている人は、通常は、サービスプロバイダとのセキュア通信のために、その人にコンピュータ上でそのコンピュータプログラムを実行させる前に、そのサービスプロバイダにそのコンピュータプログラムを登録しなければならない。その人は、正規ユーザでありさえすれば、普通、自分のユーザ名とパスワード(おそらく、例えば上述のカード状の半導体装置により提供されるワンタイムパスコード)を入力することで、そのコンピュータプログラムを、どんなコンピュータ上でも実行できる。この手法は、このユーザが、正しいユーザ名とパスワードの所有者、あるいは後者の場合には正しい半導体装置と、それに対応するPIN(必要である場合)の所有者であることを確かめる。
【0007】
複数のサービスプロバイダの1つ1つに充てられる複数のカード状装置を持つことから生じる問題を避けるために、本発明は、セキュアID検証の目的で、現在及び将来の電子情報処理装置、一般に、通信能力を持つものを利用しようとしている。
【0008】
これを実現するために、本発明者らは、ただ1つの目的で、とりわけ設計された専用のカード状の半導体装置にユーザのIDを結びつけるのではなくて、すでに自分が所有しているか、あるいは主として、識別検証の目的とは別のさらに一般的な目的で入手されようとする機器一台に、ユーザのIDを結びつける方が費用がさらに安くなり、かつ柔軟性がさらに増すと考えている。
【0009】
本発明の1つの意図は、本発明によるシステムで使用される現行ユーザ装置のハードウェア構成に、いかなる変更も補足も必要とならないようにすることである。それゆえ、規定される使用に適した電子ユーザ装置は、最小限、プログラム可能であり、かつ、少なくとも1つのデータ入力インターフェイスと、データ処理手段と、データ記憶手段と、データ出力設備とを含むべきである。さらに、この電子ユーザ装置が、本発明により動作するように、このデータ記憶手段は、個々の装置を一意的に識別する機器識別子が保存されている読み取り可能な改ざん防止記憶装置を含まなければならない。
【0010】
選択されたサービスプロバイダとの情報交換を容易に行えるように、この機器は、好ましくは、適切な通信機能をユーザに提供すべきである。このような通信能力は、その装置に固有のものであるか、機能拡張として追加されることもある。
【0011】
それゆえ、原理上、本発明を実施するのに、様々な電子ユーザ装置が用いられることがある。しかし、あらゆるGSM(Global System for Mobile Communications)携帯電話は、改ざん防止メモリに保存された一意の機器識別子、すなわち、主としてGSMネットワーク又はGSMオペレータへの個々のGSM携帯電話を識別するのに用いられている15桁コードであるIMEI(International Mobile Equipment Identity)をすでに持っているから、GSM技術に合致する携帯電話は、本発明の目的にとりわけ適していると見なされる。GSM携帯電話がGSMネットワーク上で動作できるためには、通常、GSM携帯電話にIMEIコードが含まれていることが必須である。それゆえ、IMEIコードを除去又は変更すれば、その携帯電話は、その主要目的で、すなわちテレコミュニケーションで、動作できなくなろう。
【0012】
これに関連して、IMEIコードを使用して、移動局の使用/起動の適合性をチェックする例と、移動局の使用/起動の権利を統制する例はそれぞれ、米国特許第6,164,547号、米国特許第5,956,633号から知られている。さらに、それぞれ米国特許出願公開第2003/0236981号と米国特許出願公開第2004/0030906号から、このIMEIコードを鍵として使用して、個々のSMS(Short Message Service)メッセージを暗号化し、また、鍵としてIMEIコードで算定されたデジタル署名を通じて、これらのSMSメッセージを認証することが知られている。
【0013】
WO 01/31840 A1は、第1のワンタイムパスワードがどのように、個人識別番号(PIN)、加入者識別子(一般に、GSMネットワーク上のIMSI)、装置識別子(一般に、GSMネットワーク上のIMEI)、時間(それゆえ、使うたびに変わるパスコード)に基づいて、移動局内で生成され、次に、認証サーバーにて使用されて、この移動局とコンピュータシステムとの間で通信接続できるようにし得るのか述べた従来技術のさらなる例である。この識別処理を実行するために、その認証サーバーは、移動局から受け取った加入者識別子(IMSI)を使用して、データベースから、その加入者に対応づけられたPINコード及び装置識別子(IMEI)を検索し、また、検索時に、3つの実体(エンティティ)を全て時間と組み合わせて、第2のワンタイムパスワードを生成し、その第2のワンタイムパスワードを第1のワンタイムパスワードと比較する。
【0014】
この手法により、或るコンピュータシステム又はサービスプロバイダに認証を行うことができるが、ただし、この手法は、2つ以上のサービスプロバイダで使用するときには、必ずセキュリティを弱める。この手法が2つ以上のサービスプロバイダで使用される場合には、この手法は、それぞれのコンピュータシステムに、同一の識別子(PIN、IMEI、IMSI)を提供するように求め、それにより、全ての関係者に対して、そのセキュリティが弱められる。さらに、この手法は、認証だけに使用できるが、署名、暗号化、セキュア提供(配布)のような他のセキュリティ機能には使用できず、例えば、携帯電話に保存されたプライベートPKI(「公開鍵基盤」、Public Key Infrastructure)鍵など、感知可能な情報のローカル暗号化及びアクセス制御にも使用できない。
【0015】
WO 01/31840 A1に記載される従来技術の識別処理は、ユーザ対話(user interaction)を全く必要としないユーザに隠された処理であって、この識別処理は、その認証時点でのユーザの不充分な認証しか表さない。さらに、ユーザPINを含め、この処理で必要となる全ての識別子は、それぞれのサービスプロバイダでのコンピュータシステムに保存されるだけでなく、移動局にも保存される。この手法はまた、そのワンタイムパスワード計算に投入される唯一の変数源として時間の使用にも制限され、さらに、その時間使用がその方法の柔軟性も制限する。
【0016】
特開2003−410949号公報では、一意のコードを生成して、それらのコードを、ユーザの携帯端末にて表示する(例えば、映像の形式で)システム及び方法が開示されている。ユーザは、現金引出し又は支払いサービスのようなサービスにアクセスするために、この映像と「user secret」を使用して、サービスプロバイダ又はコンピュータシステムに対して当人であることを認証する。さらなるユーザ対話を必要とすることは別として、この方法は、この表示からそのコードを非意図的に開示できるという点で弱点がある。この方法は、携帯端末の識別子を利用しないで、ユーザ認証データを生成する。この携帯端末は、二要素認証における堅牢な所持要素(「ユーザが所持しているもの」)としてではなく、通信端末としてのみ使用される。
【0017】
本発明に関連して、携帯電話のIMEIコードは、携帯電話が本発明により動作するのに必要な一意の機器識別子として利用されることになる。
【発明の開示】
【発明が解決しようとする課題】
【0018】
いくつかの異なるサービスプロバイダにアクセスするのに使用できるセキュリティ機構は、いわゆる公開鍵アルゴリズムに基づくことが多い。PKIシステムでは、秘密鍵は、安全に保存される必要があるが、しかるに、公開鍵は、「信頼できる第三者機関(TTP)」により署名された証明書又はディレクトリで公表されることがある。ユーザ単独の管理のもとでのみ秘密鍵を使用できることを確かめるために、スマートカード又はSIM(Subscriber Identity Module)カードなどのハードウェア鍵容器に、これらの秘密鍵を保存させることが普通である。このようなシステムに関わる主要問題は、そのハードウェアの製造及び配布の費用である。本発明は、ユーザで管理される改ざん防止鍵容器をこのように必要とすることに対して、より安価なソリューションを提供している。
【課題を解決するための手段】
【0019】
本発明の一面は、ユーザ認証のために、並びに、少なくとも1つのデータ入力インターフェイスと、データ処理手段と、ユーザ装置を一意的に識別する機器識別子が予め保存されている読み取り可能な改ざん防止記憶装置を含むデータ記憶手段とを備えたプログラム可能な前記ユーザ装置を用いて情報を保存し、情報に署名し、情報を暗号化/復号化するために、再生可能なセキュリティコードを生成する方法であって、
・前記データ入力インターフェイスを介して、ユーザ個人コードを前記ユーザ装置に入力するステップと、
・前記ユーザ装置の前記データ記憶手段から前記機器識別子を取り出すステップと、
・少なくとも前記機器識別子と前記ユーザ個人コードとの組合せに基づいて、セキュリティコードを前記ユーザ装置内で計算するステップと、
・それ自体が前記ユーザ及び前記ユーザ装置の両方を表すように計算された前記セキュリティコードを出力するステップと、
を含むセキュリティコード生成方法に関する。
【0020】
本発明のこの方法は、ユーザ個人コードを登録することも保存することも全く必要とせず、二要素ユーザ識別のためにデータを生成する。
【0021】
好ましい一実施形態では、本発明による方法は、前記セキュリティコードを前記ユーザ装置内で計算する前に、
・前記ユーザが自分のユーザ名で登録されているサービスプロバイダを表すサービスプロバイダコードを、前記ユーザ装置に入力するステップと、
・前記機器識別子と前記ユーザ個人コードと前記サービスプロバイダコードとの組合せに基づいて、セキュリティコードを前記ユーザ装置内で計算するステップと、
・或る特定のサービスプロバイダに、それ自体が前記ユーザ及び前記ユーザ装置を表す前記計算されたセキュリティコードを出力するステップと、
をさらに備える。
【0022】
セキュリティコードの計算にサービスプロバイダコードを投入すれば、他の識別子(ユーザ個人コードと機器識別子)をどれも変更する必要なく、サービスプロバイダごとに、異なるセキュリティコードを生成することができる。本発明の方法により、ユーザは、デリケートなデータをサービスプロバイダ間で共有することなく、2つ以上のサービスプロバイダに対して、同一装置を使用して二要素ユーザ識別を行うことができる。
【0023】
本発明の特定の面は、自分のユーザ名及び本発明によるセキュリティコード生成方法によって得られた関連セキュリティコードを用いて、サービスプロバイダのカスタマファイルに登録されている、ユーザ装置のユーザを認証する方法であって、
・ユーザ名を前記サービスプロバイダに示すステップと、
・前記サービスプロバイダで、前記カスタマファイルを検索して、前記示されたユーザ名を見つけ出し、前記ユーザ名が前記カスタマファイルにある場合には、チャレンジコードを前記ユーザに戻すステップと、
・ユーザ個人コードを前記ユーザ装置に入力して、前記ユーザ装置の前記データ記憶手段から前記ユーザ装置の前記機器識別子を取り出すステップと、
・前記セキュリティコードを前記ユーザ装置内で計算するステップと、
・前記チャレンジコード(challenge)として前記サービスプロバイダから受け取った変数を前記ユーザ装置に入力し、暗号アルゴリズムを用いて、前記セキュリティコード及び前記変数に基づいて、ワンタイムパスワードを前記ユーザ装置内で計算するステップと、
・前記計算されたワンタイムパスワードを前記サービスプロバイダに示すステップと、
・前記サービスプロバイダで、前記ユーザによって示されたユーザ名に対応するセキュリティコードを、前記カスタマファイルから取り出すステップと、
・前記ユーザ装置と同一の暗号アルゴリズムを使用することで、前記カスタマファイルから取り出された前記セキュリティコードと、前記ユーザに戻され前記ユーザ装置で使用されるものと同一の変数とに基づいて、前記サービスプロバイダでワンタイムパスワードを計算するステップと、
・前記サービスプロバイダで、前記サービスプロバイダで計算されたワンタイムパスワードを前記ユーザから受け取ったワンタイムパスワードと比較し、これらのワンタイムパスワードが同一であれば、その認証結果が肯定的であるとし、ユーザ名により識別されたユーザが前記ユーザ装置及び対応するユーザ個人コードの所有者であることが確認され、一方、これらのワンタイムパスワードが同一でなければ、その認証結果が否定的であるとするステップと、
を備えたユーザ認証方法に関わる。
【0024】
本発明の他の面は、少なくとも1つのデータ入力インターフェイスと、データ処理手段と、ユーザ装置を一意的に識別する機器識別子が予め保存されている読み取り可能な改ざん防止記憶装置を含むデータ記憶手段とを備えたプログラム可能な前記ユーザ装置に情報を安全に保存する方法であって、当該方法は、保存前に前記情報を暗号化するステップと、当該保存された暗号化された情報の検索時にこの情報を復号化するステップと、を備え、
・前記情報を暗号化するステップが、保存される前記情報を、暗号化鍵としてセキュリティコードを用いて暗号化するステップを含み、
・前記情報を復号化するステップが、当該保存された暗号化された情報を、復号化鍵として同一のセキュリティコードを用いて検索するステップを含み、
前記セキュリティコードが、
・前記データ入力インターフェイスを介して、ユーザ個人コードを前記ユーザ装置に入力するステップと、
・前記ユーザ装置の前記データ記憶手段から前記機器識別子を取り出すステップと、
・少なくとも前記機器識別子と前記ユーザ個人コードとの組合せに基づいて、セキュリティコードを前記ユーザ装置内で計算するステップと、
・前記暗号化ステップ及び前記復号化ステップ毎に、前記計算されたセキュリティコードを出力するステップと、
により生成される情報保存方法に関する。
【0025】
本発明のさらに他の面は、自分のユーザ名及び本発明によるセキュリティコード生成方法によって得られた関連セキュリティコードを用いて、サービスプロバイダのカスタマファイルに登録されている、ユーザ装置のユーザと前記サービスプロバイダとの間で交換される情報要素に署名する方法であって、
・前記情報要素が前記ユーザ装置に存在しない場合は、前記ユーザによって署名される前記情報要素を、前記サービスプロバイダから前記ユーザ装置に転送するステップと、
・前記ユーザ装置にユーザ個人コードを入力して、前記ユーザ装置の前記データ記憶手段から前記ユーザ装置の前記機器識別子を取り出すステップと、
・前記セキュリティコードを前記ユーザ装置内で計算するステップと、
・暗号アルゴリズムを用いることで、前記セキュリティコード、及び署名され前記サービスプロバイダに転送される前記情報要素とに基づいて、「シグネーチャ(signature)」を前記ユーザ装置内で計算するステップと、
・前記ユーザ名及び前記「シグネーチャ」を前記サービスプロバイダに転送し、かつ、前記ユーザによって署名される前記情報要素が前記サービスプロバイダに存在しない場合には、前記情報要素も前記サービスプロバイダに転送するステップと、
・前記サービスプロバイダで、前記ユーザから受け取ったユーザ名に対応するセキュリティコードを、前記カスタマファイルから取り出すステップと、
・前記ユーザ装置と同一の暗号アルゴリズムを使用することで、前記カスタマファイルから取り出された前記セキュリティコードと、前記情報要素とに基づいて、前記サービスプロバイダで「シグネーチャ」を計算するステップと、
・前記サービスプロバイダで、前記サービスプロバイダで計算された「シグネーチャ」を前記ユーザから受け取った「シグネーチャ」と比較し、これらの「シグネーチャ」が同一であれば、前記ユーザ装置の前記ユーザが前記情報要素に意図的に署名していること、及び前記情報要素が変更されていないことが確認され、一方、これらの「シグネーチャ」が同一でなければ、その署名結果が否定的であるとするステップと、
を備えた情報要素署名方法に関わる。
【0026】
特定の実施形態では、前記「シグネーチャ」は、デジタル署名或いは電子署名、又はメッセージ認証コード(MAC)を含むことがある。
【0027】
本発明のさらに他の面は、自分のユーザ名及び本発明によるセキュリティコード生成方法によって得られた関連セキュリティコードを用いて、サービスプロバイダのカスタマファイルに登録されている、ユーザ装置のユーザから前記サービスプロバイダに転送される情報要素を安全にする方法であって、
・前記ユーザ装置にユーザ個人コードを入力して、前記ユーザ装置の前記データ記憶手段から前記ユーザ装置の前記機器識別子を取り出すステップと、
・前記セキュリティコードを前記ユーザ装置内で計算するステップと、
・暗号アルゴリズムと、暗号化鍵としての前記セキュリティコードとを使用することで、前記サービスプロバイダに転送される前記情報要素を前記ユーザ装置内で暗号化するステップと、
・前記ユーザ名及びこの暗号化された情報要素を前記サービスプロバイダに転送するステップと、
・前記サービスプロバイダで、前記ユーザから受け取ったユーザ名に対応するセキュリティコードを、前記カスタマファイルから取り出すステップと、
・前記ユーザ装置と同一の暗号アルゴリズムを使用することで、復号化鍵として前記カスタマファイルから取り出された前記セキュリティコードを使用して、前記暗号化された情報要素を前記サービスプロバイダで復号化するステップと、
を備えた情報要素安全化方法に関わる。
【0028】
本発明のさらに他の面は、自分のユーザ名及び本発明によるセキュリティコード生成方法によって得られた関連セキュリティコードを用いて、サービスプロバイダのカスタマファイルに登録されている、ユーザ装置のユーザに前記サービスプロバイダから転送される情報要素を安全にする方法であって、
・前記サービスプロバイダで、前記情報要素が転送される前記ユーザの前記セキュリティコードを前記カスタマファイルから取り出すステップと、
・暗号アルゴリズムと、暗号化鍵としての前記セキュリティコードとを使用することで、前記情報要素を暗号化するステップと、
・この暗号化された情報要素を前記ユーザに転送するステップと、
・この暗号化された情報要素を前記ユーザ装置で受け取ると、前記ユーザ装置にユーザ個人コードを入力して、前記ユーザ装置の前記データ記憶手段から前記ユーザ装置の前記機器識別子を取り出すステップと、
・このセキュリティコードを前記ユーザ装置内で計算するステップと、
・前記サービスプロバイダと同一の暗号アルゴリズムを使用することで、復号化鍵として、前記ユーザ装置で計算された前記セキュリティコードを用いて、前記暗号化された情報要素を前記ユーザ装置内で復号化するステップと、
を備えた情報要素安全化方法に関わる。
【0029】
サービスプロバイダから転送される情報要素を安全にするこのような方法は、メッセージを送るのに役立ち、また、コピーされないデジタルコンテンツ(例えば、電子チケット、又は不法コピーから保護される他のデジタルコンテンツ、音楽、ビデオ、ソフトウェアなど)を送るだけでなく、情報を他人に秘密にしておくのにも役立つことがある。
【0030】
本発明は、少なくとも1つのデータ入力インターフェイスと、データ処理手段と、ユーザ装置を一意的に識別する機器識別子が予め保存されている読み取り可能な改ざん防止記憶装置を含むデータ記憶手段とを備えたプログラム可能な前記ユーザ装置であって、本発明に係る方法のいずれかに応じたプロセスを実行するようプログラムされているプユーザ装置にも関わる。
【0031】
好ましくは、前記ユーザ装置の機器識別子は、ユーザに受け渡す前に前記ユーザ装置に組み込まれた製品シリアルナンバーである。また、前記ユーザ装置が携帯電話の場合には、前記ユーザ装置の機器識別子は、国際携帯機器ID(GSM電話の場合はIMEIコード)であっても良い。
【0032】
一般に、本発明は、複数のサービスプロバイダからの複数サービスに対して、ユーザ装置を、共通の、又は一般的な「マルチコード計算機」として役立たせることがある。
【発明を実施するための最良の形態】
【0033】
このユーザ装置のさらなる特徴、及び本発明によるセキュリティコードを生成する方法は、添付図面を参照して与えられる本発明の実施例の下記説明から明らかになろう。
【0034】
図1を参照すると、本発明によるユーザ装置は、テンキーパッド、フルキーボード1又は他のインターフェイス手段などの少なくとも1つのデータ入力インターフェイスと、マイクロプロセッサコントローラ2などのデータ処理手段と、このユーザ装置を一意的に識別する機器識別子が保存されている読み取り可能な改ざん防止記憶装置4(好ましくは、ROM)を含む、RAM、ROM、及び/又はキャッシュメモリなどのデータ記憶手段3と、表示ウィンドウ5、コンピュータモニタなどのようなデータ出力設備と、オプションとして、本発明の実施形態の一部では、おそらく、どんな種類のプライベートテレコムサービス又はパブリックテレコムサービスでも、トランシーバ手段を含め、標準コンピュータ周辺機器、コンピュータネットワークなどの外部機器との一方向通信又は双方向通信用の通信モジュール6とを備える。
【0035】
本発明のユーザ装置はプログラム可能である。すなわち、このユーザ装置は、マイクロプロセッサのメモリに読み込まれたコンピュータプログラム及びアプリケーションを実行できる。本発明の一部の実施形態を実施するためには、このユーザ装置は、ユーザがカスタマ又は加入者として登録されているサービスプロバイダと情報を交換することもできなければならない。それゆえ、GSM技術に合致する携帯電話は、本発明の目的に特に適していると見なされる。しかし、携帯型コンピュータ(ラップトップ)やハンドヘルド情報装置(PDA、携帯情報端末)、あるいは定置式パーソナルコンピュータ(PC)、及び将来の携帯電話などの他の個人用の一部の電子機器ももちろん、GSM携帯電話と同様なやり方で、適切な機器ID(EI)を備えているときには使用できるものと想定される。将来のポケット計算機又は専用の一般的なパスワード生成器も予想されることがある。
【0036】
<セキュリティコード計算ソフトウェア>
このセキュリティコードの計算に必要であるソフトウェアは、本発明のユーザ装置に永久に保存されても良い。例えば、このソフトウェアは、製造時にこのユーザ装置に導入される。上に示されるように、適切な種類の既存装置を使用できるようにするために、フロッピーディスク、光コンパクトディスク(CD−ROM)、及びプラグイン式データ記憶手段(メモリスティック又はメモリカード)などの任意タイプのデータ供給媒体を介して、特定のアプリケーションが、どんな時点でも、このユーザ装置に供給される。このユーザ装置が通信機能を備えている場合には、上記アプリケーションは、ソフトウェアベンダーから、このユーザ装置の通信ネットワークを介して、このユーザ装置にダウンロードされて、直接に実行され、かつ/又は、保存されて後で利用される。
【0037】
本発明により、このセキュリティコード計算ソフトウェアは、秘密を全く含まない汎用コンピュータプログラムである。そのプログラム又はアプリケーションは、適切などんなユーザ装置でも利用できるように、一般に公開されることがある。原理上、このアプリケーションは、異なるオペレーティングシステム、プログラミング言語、コンパイラなどによるコンピュータ関係の差異を除き、ユーザ装置ごとに同一である。
【0038】
原理上、このセキュリティコード計算ソフトウェアが無料配布されることと、セキュリティを弱めることなく、このセキュリティコード計算ソフトウェアを装置から装置へとコピーできるという上記特徴は、特に、ユーザソフトウェア自体に秘密が含まれていることを必要とするセキュリティ構成と比較すると、本発明の主な利点である。
【0039】
このセキュリティコード計算ソフトウェアで実行される計算は、一般に、一方向暗号化アルゴリズム(例えば、ハッシングアルゴリズム(hashing algorithm))を使用してセキュリティコードを生成し、また、双方向暗号化アルゴリズムを使用して、情報要素を暗号化/復号化することに基づいているが、ただし、他の様々な種類の暗号化アルゴリズムが使用されることもある。使用されるこの暗号化法は、本発明の実施には決定的なものではない。しかし、このセキュリティコードは、充分独特なものでなければならず、また、そのセキュリティコード自体から、その入力データ要素を得ることが可能であってはならない(すなわち、一方向の暗号化)。このセキュリティコード計算ソフトウェアの他の重要な特徴は、このセキュリティコード計算ソフトウェアが、セキュリティコードを使用するたびに、該当する装置を一意的に識別する機器識別子を読み取るように設計されていることと、その計算されたセキュリティコードが、この装置には決して保存されないことである。
【0040】
<セキュリティコードの計算>
図2を参照すると、一実施形態において、プログラム可能なユーザ装置(図1を参照のこと)と、上述したユーザソフトウェアを用いてセキュリティコードを生成する本発明による方法は、
・この装置を所持するユーザが、自分のユーザ個人コードを、装置データ入力インターフェイスを介して、この装置に入力するステップ(ステップS1)
・この装置が、それ自体のデータ記憶手段4から、その機器識別子を取り出すステップ(ステップS2)
・取り出された機器識別子と、入力されたユーザ個人コードとの組合せに基づいて、このユーザ装置が、これ自体の内部でセキュリティコードを計算するステップ(ステップS3)
という3つの主要ステップを含む。
【0041】
このようにして得られたセキュリティコードは、2つの要素に基づいている。それゆえ、二要素認証方式と見なすと、このユーザ個人コードは、「ユーザ認識」要素となるが、一方、機器識別子は、「ユーザ所持」要素である。このセキュリティコードは、ユーザとユーザの装置の一意の識別を表しているが、ただし、元の入力識別子(このユーザ個人コードと機器識別子)は、このセキュリティコードから再計算することはできない。本発明による方法は、これらの入力識別子が、他のどんな関係者にも暴露されないようにするものであり、また、このユーザ個人コードを保存することを全く必要としない方法でもある。
【0042】
原理上、ユーザは、適切などんな個人コードも自由に選択して、それを入力することで、セキュリティコードを生成することができる。もちろん、この個人コードは、様々な目的で、異なるものであってもよい。本件では、このセキュリティコードは、ユーザと、ユーザ装置を両方とも表している。ここで、このセキュリティコードは、表示ウィンドウ5に表示されているようなユーザ装置のデータ出力設備を介して、あるいは、通信モジュール6を介して出力されて、外部の或るローカル機器又はリモート機器に、例えばサービスプロバイダ側にある通信機器に送ることがある。
【0043】
別法として、図2には示されていないが、セキュリティコードをこのユーザ装置内で計算する作業は、本発明の実施形態において適切であるときに、3つの要素の組合せに基づくことがある。上述の2つの要素、すなわち機器識別子とユーザ個人コードに加えて、サービスプロバイダにより、あるいはユーザ自身により選択されて、サービスプロバイダを指定するサービスプロバイダコードが、このセキュリティコードの計算に含められる。このような「三要素」セキュリティコードはそれ自体、サービスプロバイダ、あるいはそれぞれのサービスプロバイダにより提供される或るサービスに対して、ユーザとユーザ装置を表すことになる。もちろん、このようなサービスプロバイダコードは、このユーザ装置のデータ記憶手段3に保存されて、後で使用することがある。
【0044】
このサービスプロバイダコードを、別の第3のコードとして導入する代わりに、特定サービスプロバイダの或る種の指標を、そのユーザ個人コードに取り入れて、そのユーザ個人コードが2部コードとなるようにすることがあり、したがって、サービスプロバイダごとに、セキュリティコードが異なる。
【0045】
本発明の方法が、サービスプロバイダごとに、特定の、又は異なるセキュリティコードを生成できることにより、ユーザは、セキュリティを弱めることなく、2つ以上のサービスプロバイダにおけるセキュリティサービスに対して、同一の装置を使用することができる。サービスプロバイダは、同一のセキュリティコードを共用する必要がないし、また、サービスプロバイダは、これらの入力識別子を再計算することができない。
【0046】
バイオメトリック(生体)コード化技術の進展とともに、生体データが、本発明によるセキュリティコードの一部である可能性も想定されている。それゆえ、ユーザを表す生体データは、それだけで、又はその一構成部分として、ユーザ個人コードとなることがあり、したがって、「ユーザ所持」要素から、「ユーザ身元(something you are)」状況に移る。そのような場合に、このユーザ装置は、そのユーザの属性から生体詳細をスキャンして、それを、そのユーザ装置に供給できるようにするために、適切な入力手段を備えるか、あるいは適切な入力手段に接続される必要がある。
【0047】
一般に、上記のユーザ個人コードとサービスプロバイダコードはそれぞれ、一連の英字及び/又は数字から成ることがある。これらの英字及び/又は数字は、覚えやすく、また、この処理では、一連のバイナリコードデータに変換される。このユーザ個人コードとサービスプロバイダコードはまた、それらだけで、又は他のいくつかの情報と組み合わせて、一連のバイナリコードデータにすでに変換された1つの情報を含むことがある。ユーザを表す生体データは、このように予めコード化されたバイナリデータの一例である。
【0048】
いずれにしても、このセキュリティコードの計算は、単純な算術演算或いは複雑な暗号演算、又は他の種類の暗号化技法の使用を含むことがある。しかしながら、このような演算は、その計算への入力データ要素のどれも、このコードから、かつ/又は、これらの入力要素の一部を知っていることから得られないようなものでなければならない。
【0049】
<情報の暗号化/復号化>
次に、図3を参照すると、本発明のセキュリティコードは、情報要素をこのユーザ装置に保存しようとするときに使用される場合があり、その場合、この情報は、暗号化鍵として、このセキュリティコードを使用することで、保存前に暗号化される。その処理は、一般に、
・ユーザが、例えば、安全に保存する必要のある情報要素(例えば、PKI(公開鍵インフラ)システムでの秘密鍵)を生成する処理又はコンピュータプログラムを、キーボード1を用いて指定するか、あるいは始動させるステップ(ステップS1)
・ユーザが、ユーザ個人コードを、一般にキーボード1を介してユーザ装置に入力するステップ(ステップS2)、
・ユーザ装置が、それ自体のデータ記憶手段4から機器識別子を取り出して、ユーザ装置自体の内部で、セキュリティコードを計算するステップ(ステップS3とステップS4)
・暗号化鍵として、このセキュリティコードを使用することで、ユーザ装置が、この情報要素を暗号化して、この暗号化された情報をユーザ装置のデータ記憶手段3に保存するステップ(ステップS5とステップS6)
を含む。
【0050】
ユーザが、様々な目的で、異なるユーザ個人コードを使用することに決める場合には、そのユーザは、例えば、ローカルで情報要素を安全に保存する目的で、或る特定コードを選択することがある。
【0051】
図示される例では、「二要素」セキュリティコードが生成されるが、特に、安全に保存される情報要素がサービスプロバイダに関わっているときには、たぶん、「三要素」セキュリティコードも同様に使用されるであろう。
【0052】
後に、このようにユーザ装置への保存前に暗号化されている情報要素は、ユーザ装置内で、検索されて、復号化鍵としてこのセキュリティコードを使用することで、使用前に復号化されることがある。このような処理は、図4に示されるように、
・ユーザが、ユーザ装置に安全に保存された1つ又は複数の情報要素を、例えばキーボード1を用いて選択するか、又は他の手段によって指定するステップ(ステップS1)
・ユーザが、関係のある情報要素(1つ又は複数)を保存しようとするときに、使用されるユーザ個人コードを、一般にキーボード1を介してユーザ装置に入力するステップ(ステップS2)
・ユーザ装置が、それ自体のデータ記憶手段4から機器識別子を取り出して、ユーザ装置自体の内部で、セキュリティコードを計算するステップ(ステップS3とステップS4)
・復号化鍵として、このセキュリティコードを使用することで、ユーザ装置が、この情報要素(1つ又は複数)を復号化し、また、この復号化された情報を適宜に、ユーザに読み取らせ、かつ/又は使用させるステップ(ステップS5とステップS6)
を含む。
【0053】
好ましい実施例では、セキュリティの理由で、この復号化された情報要素は、使用された後で常に削除されて、暗号化された情報だけをユーザ装置のデータ記憶手段3に残す。
【0054】
<セキュア通信に使用されるセキュリティコード>
好ましい実施形態では、ユーザ装置は、有線通信ネットワーク又は無線通信ネットワークを通じて、サービスプロバイダと一方向及び/又は双方向のデータ通信を可能にする通信機能を備える。
【0055】
このような場合に、ユーザに提供される情報をユーザに送る前に暗号化させる非対称二重鍵暗号方式を、このサービスプロバイダが使用したい場合には、この情報は、図5に示されるように、この非対称二重鍵暗号方式の公開鍵を使用することで、送信前にスクランブルがかけられることがある(ステップS1)。暗号化鍵としてこのセキュリティコードを使用して得られた暗号化形式で、この非対称二重鍵暗号方式の対応する秘密鍵を、前もってユーザ装置に保存するように段取りされているならば、このスクランブルがかけられた情報を受け取ると、ユーザ装置は、
・復号化鍵としてこのセキュリティコードを使用することで、ユーザ装置に保存された暗号化秘密鍵を復号化し(ステップS5)、
・この復号化された秘密鍵を使用することで、このサービスプロバイダから受け取られた上記スクランブルがかけられた情報をスクランブル解除する(ステップS6)
ようにプログラムされる。
【0056】
このような場合、セキュリティコードは、サービスプロバイダ側で保存される必要はない。この公開鍵は、ユーザにより指定されるか、サービスプロバイダ側に前もって保存されるか、又は通知/電子掲示板サービスを介して、公けに入手できることがある。
【0057】
別の方法として、このサービスプロバイダのサービスを受けるユーザのセキュリティコードを、このサービスプロバイダ側で保存するように段取りされているならば、このサービスプロバイダは、二重鍵暗号方式を使用せずに、秘密情報の提供に関連して、本発明のセキュリティコードを使用することがある。このような処理は、暗号化鍵としてこのセキュリティコードを使用することで、送信前に情報を暗号化させるもの(図6中のステップS1)であって、これは、図6に示されるように、ユーザ装置が計算したセキュリティコードを使用することで、このサービスプロバイダから受け取った暗号化された情報を復号化させるステップ(図6中のステップS4とステップS5)を含む。
【0058】
双方の場合、使用後に、この復号化された情報は、好ましくは、セキュリティの理由で削除されて、その形跡をユーザ装置には全く残さない(図3に示されるように、このセキュリティコードをローカル暗号化鍵として使用することで、この情報がローカルで保存される場合を除く)。
【0059】
<認証に使用されるセキュリティコード>
さらに、このセキュリティコードは実際、ユーザ、及びユーザに属するユーザ装置のID検証の基礎として使用されることがある。
【0060】
本発明の一実施形態では、このユーザ装置は、通信モジュール6を含む(図1を参照)。本発明による認証方法に関連して、このように提供された通信機能は、好ましくは「オンライン」で、ユーザ装置自体を介して、サービスプロバイダと情報を交換するために使用されることがある。このような場合には、図7を参照して、ユーザが、自分のユーザ名、及び本発明による関連セキュリティコードで、サービスプロバイダのカスタマファイルにすでに登録されているとすると、このユーザ装置のユーザを認証する方法は、
・この電子装置にユーザ名を入力して、その入力されたユーザ名を、この電子装置からサービスプロバイダに送るステップ(ステップS2)
・サービスプロバイダで、カスタマファイルを検索して、この電子装置から受け取ったユーザ名を見つけ出し、また、そのユーザ名がカスタマファイルにある場合には、チャレンジコードをサービスプロバイダから、その電子装置に送るステップ(ステップS3とステップS4)
・電子装置にユーザ個人コードを入力して、電子装置のデータ記憶手段から、電子装置の機器識別子を取り出すステップ(ステップS5)
・機器識別子とユーザ個人コードに基づいて、セキュリティコードを電子装置内で計算するステップ(ステップS6)
・暗号アルゴリズムを使用することで、セキュリティコードと、チャレンジコードの一部としてサービスプロバイダから受け取った変数とに基づいて、ワンタイムパスワードを電子装置内で計算するステップ(ステップS7)
・この計算されたワンタイムパスワードを、電子装置からサービスプロバイダに送るステップ(ステップS7)
・サービスプロバイダで、電子装置から受け取ったユーザ名に対応するセキュリティコードをカスタマファイルから取り出すステップ(ステップS8)
・ユーザ装置と同一の暗号アルゴリズムを使用することで、カスタマファイルから取り出されたセキュリティコードと、電子装置に伝えられて、電子装置で使用されるものと同一の変数とに基づいて、サービスプロバイダで、ワンタイムパスワードを計算するステップ(ステップS9)
・サービスプロバイダで、ステップS9で計算したワンタイムパスワードを、電子装置から受け取ったものと比較するステップ(ステップS10)
を含む。
【0061】
これらのワンタイムパスワードが同一であれば、その認証結果は肯定的であり、それにより、ユーザ名により識別されたユーザが、電子装置及び対応するユーザ個人コードの所有者であることが確認され、またこれらのワンタイムパスワードが同一でなければ、その認証結果が否定的である。
【0062】
ユーザ装置が通信モジュールを装備しているときには、本実施形態では、ユーザ装置とサービスプロバイダ又は他の第三者との間でやり取りされるメッセージから、あるいはそのメッセージのダイジェストから、デジタル署名又はメッセージ認証コード(MAC)を計算することで、メッセージ認証にも使用される場合があり、その場合、本発明によるセキュリティコードは、そのような計算に関与する構成要素の1つである。
【0063】
本発明の他の実施形態において、ユーザ装置が通信モジュールを含まず、それゆえ、ユーザ装置自体を介してサービスプロバイダと情報を直接に交換することができない場合、又は、ユーザ装置を介して、全ての情報を交換すると都合がよくない場合には、ユーザは、このユーザ装置とサービスプロバイダとの間の「仲立ち(intermediary)」として働くことがある。その場合、サービスプロバイダとやり取りするために、ユーザは、例えば、インターネットに接続できるパーソナルコンピュータなどの利用可能な任意の通信手段を使用するが、ただし、その主な問題は、サービスプロバイダへのユーザの指示と、サービスプロバイダからユーザに戻される応答のやり取りが、許容できるやり方で、好ましくはリアルタイムで達成されることである。もちろん、このような通信リンク又は通信チャネルはそれ自体、セキュリティの理由で必要であれば、スクランブルがかけられるか、あるいは従来の任意のやり方で暗号化される。
【0064】
原理上、機器と機器とがやり取りする技術的な構成があろうと、なかろうと、本発明の認証方法は、ユーザ装置が通信機能を欠いているときに、「仲立ち」として、人と、他の何らかの通信構成がある場合にのみ、図7に示されるものに類似することがある。
【0065】
サービスプロバイダから、そのチャレンジコードの一部として受け取る変数を得る(図7中のステップS7)のではなく、ワンタイムパスワードをユーザ装置内で計算するのに使用される変数がユーザ装置自体によって生成される可能性も想定されている。このような場合には、これと同一の変数をサービスプロバイダに使用させて、サービスプロバイダ側でワンタイムパスワードを計算する(図7中のステップS9)ことで、そのワンタイムパスワードをユーザ装置からのものと比較(図7中のステップS10)できるようにする段取りがなされなければならない。このような構成は、当業者に知られているものであって、例えば時間変数又はシーケンス番号の同期部分を用いる設備を含むことがある。
【0066】
<初期ユーザ登録>
公衆に提供される多くのサービスでは、一般に、このようなサービスを受けるカスタマ又はユーザは、関係のあるサービス(1つ又は複数)にアクセスする(例えば、このサービスに加入する)ために、それぞれのサービスプロバイダに登録しなければならない。このようなサービスに本発明の実施形態を利用することに関連して、これも当てはまる。それゆえ、例えば図7中のステップS1で示されるように、ユーザは当初、自分のユーザ名、及び本発明の方法により得られた関連セキュリティコードで、サービスプロバイダに登録されることが必須条件である。
【0067】
ユーザが自分のセキュリティコードを得るための一方法は、上記の「セキュリティコードの計算」の項で説明され、かつ図2に図示された方法のステップを実行して、「二要素コード」を生成することである。他の方法は、まず最初に、特定のサービスプロバイダコード(これは、或る特定のサービスのみに関わることがある)を入力して、次に、「三要素コード」(これも、上記の項に述べられている)を計算することである。このような手法は、図8に示されるように、
・このサービスプロバイダから、サービスプロバイダコードをユーザに送るステップ(ステップS1a)か、あるいは、サービスプロバイダコードの選択をユーザに任せるステップ(ステップS1b)
・ユーザ側で、このサービスプロバイダコードをユーザ装置に入力するステップ(ステップS2)
・一般にキーボードを用いて、ユーザ個人コードを電子装置に入力するステップ(ステップS3)
・電子装置のデータ記憶手段から、電子装置の機器識別子を取り出すステップ(ステップS4)
・オプションとして、このサービスプロバイダコードを電子装置のデータ記憶手段に保存するステップ(ステップ5)
・機器識別子、ユーザ個人コード、サービスプロバイダコードに基づいて、セキュリティコードを電子装置内で計算するステップ(ステップS6)
・ユーザ名と、計算されたセキュリティコードをサービスプロバイダに送るステップ(ステップS7)
・ユーザから受け取ったユーザ名及び関連セキュリティコードを、サービスプロバイダのカスタマファイルに登録するステップ(ステップS8)
を含むことがある。
【0068】
いずれにしても、ユーザとサービスプロバイダとの間の情報交換は、例えば、郵便による手紙、ファクシミリを用いて、もしくは音声通信を介して、利用可能な任意の通信手段により達成されることがある。
【0069】
好ましい実施形態についてのこの説明は、本発明をソフトウェアで実施することに基づいてなされているが、本発明は、説明された実施形態のソフトウェアと同様な作業を実行するハードウェアコンポーネントを用いて実現されることもある。
【図面の簡単な説明】
【0070】
【図1】本発明によるユーザ装置の基本構成要素を示す概略ブロック図
【図2】ユーザ装置のユーザ及びユーザ装置自体を表すセキュリティコードを生成する処理を示す概略フローチャート
【図3】ローカルで情報を安全に保存する処理を示す概略フローチャート
【図4】図3の処理で安全に保存された情報を使用する処理を示す概略フローチャート
【図5】ユーザの公開鍵で暗号化された情報をサービスプロバイダから提供する処理を示す概略フローチャート
【図6】ユーザのセキュリティコードで暗号化された情報をサービスプロバイダから提供する処理を示す概略フローチャート
【図7】本発明の一実施形態により、ユーザを認証する処理を示す概略フローチャート
【図8】サービスプロバイダでの初期ユーザ登録の処理を示す概略フローチャート

【特許請求の範囲】
【請求項1】
ユーザ認証のために、並びに、少なくとも1つのデータ入力インターフェイスと、データ処理手段と、ユーザ装置を一意的に識別する機器識別子が予め保存されている読み取り可能な改ざん防止記憶装置を含むデータ記憶手段とを備えたプログラム可能な前記ユーザ装置を用いて情報を保存し、情報に署名し、情報を暗号化/復号化するために、再生可能なセキュリティコードを生成する方法であって、
前記データ入力インターフェイスを介して、ユーザ個人コードを前記ユーザ装置に入力するステップと、
前記ユーザ装置の前記データ記憶手段から前記機器識別子を取り出すステップと、
少なくとも前記機器識別子と前記ユーザ個人コードとの組合せに基づいて、セキュリティコードを前記ユーザ装置内で計算するステップと、
それ自体が前記ユーザ及び前記ユーザ装置の両方を表すように計算された前記セキュリティコードを出力するステップと、
を備えたことを特徴とするセキュリティコード生成方法。
【請求項2】
請求項1に記載のセキュリティコード生成方法であって、
前記セキュリティコードを前記ユーザ装置内で計算する前に、
前記ユーザが自分のユーザ名で登録されているサービスプロバイダを表すサービスプロバイダコードを、前記ユーザ装置に入力するステップと、
前記機器識別子と前記ユーザ個人コードと前記サービスプロバイダコードとの組合せに基づいて、セキュリティコードを前記ユーザ装置内で計算するステップと、
或る特定のサービスプロバイダに、それ自体が前記ユーザ及び前記ユーザ装置を表す前記計算されたセキュリティコードを出力するステップと、
をさらに備えたことを特徴とするセキュリティコード生成方法。
【請求項3】
請求項1又は2に記載のセキュリティコード生成方法であって、
前記ユーザ個人コード及び前記サービスプロバイダコードがそれぞれ、対応する一連の英字及び/又は数字、又は一連のバイナリデータを含むことを特徴とするセキュリティコード生成方法。
【請求項4】
請求項1又は2に記載のセキュリティコード生成方法であって、
前記ユーザ装置のユーザを表す生体データが、前記ユーザ個人コードの全て又は一部を構成することを特徴とするセキュリティコード生成方法。
【請求項5】
請求項3に記載のセキュリティコード生成方法であって、
前記サービスプロバイダコードが、前記サービスプロバイダより提供されるサービスを表すことを特徴とするセキュリティコード生成方法。
【請求項6】
請求項2に記載のセキュリティコード生成方法であって、
前記サービスプロバイダコードを前記ユーザ装置の前記データ記憶手段に保存するステップをさらに備えたことを特徴とするセキュリティコード生成方法。
【請求項7】
請求項6に記載のセキュリティコード生成方法であって、
前記ユーザ装置の前記データ記憶手段に予め保存されている、前記機器識別子と前記ユーザ個人コードと前記サービスプロバイダコードとの組合せに基づいて、セキュリティコードを前記ユーザ装置内で計算することを特徴とするセキュリティコード生成方法。
【請求項8】
自分のユーザ名及び請求項1〜7のいずれか1項に記載の方法によって得られた関連セキュリティコードを用いて、サービスプロバイダのカスタマファイルに登録されている、ユーザ装置のユーザを認証する方法であって、
ユーザ名を前記サービスプロバイダに示すステップと、
前記サービスプロバイダで、前記カスタマファイルを検索して、前記示されたユーザ名を見つけ出し、前記ユーザ名が前記カスタマファイルにある場合には、チャレンジコードを前記ユーザに戻すステップと、
ユーザ個人コードを前記ユーザ装置に入力して、前記ユーザ装置の前記データ記憶手段から前記ユーザ装置の前記機器識別子を取り出すステップと、
前記セキュリティコードを前記ユーザ装置内で計算するステップと、
前記チャレンジコードとして前記サービスプロバイダから受け取った変数を前記ユーザ装置に入力し、暗号アルゴリズムを用いて、前記セキュリティコード及び前記変数に基づいて、ワンタイムパスワードを前記ユーザ装置内で計算するステップと、
前記計算されたワンタイムパスワードを前記サービスプロバイダに示すステップと、
前記サービスプロバイダで、前記ユーザによって示された前記ユーザ名に対応する前記セキュリティコードを、前記カスタマファイルから取り出すステップと、
前記ユーザ装置と同一の暗号アルゴリズムを使用することで、前記カスタマファイルから取り出された前記セキュリティコードと、前記ユーザに戻され前記ユーザ装置で使用されるものと同一の変数とに基づいて、前記サービスプロバイダでワンタイムパスワードを計算するステップと、
前記サービスプロバイダで、前記サービスプロバイダで計算されたワンタイムパスワードを前記ユーザから受け取ったワンタイムパスワードと比較し、これらのワンタイムパスワードが同一であれば、その認証結果が肯定的であるとし、ユーザ名により識別されたユーザが前記ユーザ装置及び対応するユーザ個人コードの所有者であることが確認され、一方、これらのワンタイムパスワードが同一でなければ、その認証結果が否定的であるとするステップと、
を備えたことを特徴とするユーザ認証方法。
【請求項9】
請求項8に記載のユーザ認証方法であって、
前記ユーザから前記サービスプロバイダに与えられる指示、及び前記サービスプロバイダから前記ユーザに戻される応答が、前記ユーザと前記サービスプロバイダとの間の情報交換を可能とする通信設備を用いて伝えられることを特徴とするユーザ認証方法。
【請求項10】
請求項9に記載のユーザ認証方法であって、
前記ユーザが、自分の指示を、前記ユーザ装置のデータ入力インターフェイスを介して前記サービスプロバイダに入力して、前記サービスプロバイダに送信し、前記応答を、前記サービスプロバイダから前記ユーザ装置に直接受け取ることができる機能が前記ユーザ装置に設けられたことを特徴とするユーザ認証方法。
【請求項11】
請求項9に記載のユーザ認証方法であって、
前記双方向通信設備が、前記ユーザ装置外で前記ユーザが利用可能な公衆通信サービス又は公衆通信施設を含むことを特徴とするユーザ認証方法。
【請求項12】
少なくとも1つのデータ入力インターフェイスと、データ処理手段と、ユーザ装置を一意的に識別する機器識別子が予め保存されている読み取り可能な改ざん防止記憶装置を含むデータ記憶手段とを備えたプログラム可能な前記ユーザ装置に情報を安全に保存する方法であって、当該方法は、保存前に前記情報を暗号化するステップと、当該保存された暗号化された情報の検索時にこの情報を復号化するステップと、を備え、
前記情報を暗号化するステップが、保存される前記情報を、暗号化鍵としてセキュリティコードを用いて暗号化するステップを含み、
前記情報を復号化するステップが、当該保存された暗号化された情報を、復号化鍵として同一のセキュリティコードを用いて検索するステップを含み、
前記セキュリティコードが、
前記データ入力インターフェイスを介して、ユーザ個人コードを前記ユーザ装置に入力するステップと、
前記ユーザ装置の前記データ記憶手段から前記機器識別子を取り出すステップと、
少なくとも前記機器識別子と前記ユーザ個人コードとの組合せに基づいて、セキュリティコードを前記ユーザ装置内で計算するステップと、
前記暗号化ステップ及び前記復号化ステップ毎に、前記計算されたセキュリティコードを出力するステップと、
により生成されることを特徴とする情報保存方法。
【請求項13】
請求項12に記載の情報保存方法であって、
前記ユーザ装置のユーザを表す生体データが、前記ユーザ個人コードの全て又は一部を構成することを特徴とする情報保存方法。
【請求項14】
自分のユーザ名及び請求項1〜7のいずれか1項に記載の方法によって得られた関連セキュリティコードを用いて、サービスプロバイダのカスタマファイルに登録されている、ユーザ装置のユーザと前記サービスプロバイダとの間で交換される情報要素に署名する方法であって、
前記情報要素が前記ユーザ装置に存在しない場合は、前記ユーザによって署名される前記情報要素を、前記サービスプロバイダから前記ユーザ装置に転送するステップと、
前記ユーザ装置にユーザ個人コードを入力して、前記ユーザ装置の前記データ記憶手段から前記ユーザ装置の前記機器識別子を取り出すステップと、
前記セキュリティコードを前記ユーザ装置内で計算するステップと、
暗号アルゴリズムを用いることで、前記セキュリティコード、及び署名され前記サービスプロバイダに転送される前記情報要素とに基づいて、「シグネーチャ」を前記ユーザ装置内で計算するステップと、
前記ユーザ名及び前記「シグネーチャ」を前記サービスプロバイダに転送し、かつ、前記ユーザによって署名される前記情報要素が前記サービスプロバイダに存在しない場合には、前記情報要素も前記サービスプロバイダに転送するステップと、
前記サービスプロバイダで、前記ユーザから受け取ったユーザ名に対応するセキュリティコードを、前記カスタマファイルから取り出すステップと、
前記ユーザ装置と同一の暗号アルゴリズムを使用することで、前記カスタマファイルから取り出された前記セキュリティコードと、前記情報要素とに基づいて、前記サービスプロバイダで「シグネーチャ」を計算するステップと、
前記サービスプロバイダで、前記サービスプロバイダで計算された「シグネーチャ」を前記ユーザから受け取った「シグネーチャ」と比較し、これらの「シグネーチャ」が同一であれば、前記ユーザ装置の前記ユーザが前記情報要素に意図的に署名していること、及び前記情報要素が変更されていないことが確認され、一方、これらの「シグネーチャ」が同一でなければ、その署名結果が否定的であるとするステップと、
を備えたことを特徴とする情報要素署名方法。
【請求項15】
請求項14に記載の情報要素署名方法であって、
前記「シグネーチャ」は、デジタル署名或いは電子署名、又はメッセージ認証コード(MAC)を含むことを特徴とする情報要素署名方法。
【請求項16】
自分のユーザ名及び請求項1〜7のいずれか1項に記載の方法によって得られた関連セキュリティコードを用いて、サービスプロバイダのカスタマファイルに登録されている、ユーザ装置のユーザから前記サービスプロバイダに転送される情報要素を安全にする方法であって、
前記ユーザ装置にユーザ個人コードを入力して、前記ユーザ装置の前記データ記憶手段から前記ユーザ装置の前記機器識別子を取り出すステップと、
前記セキュリティコードを前記ユーザ装置内で計算するステップと、
暗号アルゴリズムと、暗号化鍵としての前記セキュリティコードとを使用することで、前記サービスプロバイダに転送される前記情報要素を前記ユーザ装置内で暗号化するステップと、
前記ユーザ名及びこの暗号化された情報要素を前記サービスプロバイダに転送するステップと、
前記サービスプロバイダで、前記ユーザから受け取ったユーザ名に対応するセキュリティコードを、前記カスタマファイルから取り出すステップと、
前記ユーザ装置と同一の暗号アルゴリズムを使用することで、復号化鍵として前記カスタマファイルから取り出された前記セキュリティコードを使用して、前記暗号化された情報要素を前記サービスプロバイダで復号化するステップと、
を備えたことを特徴とする情報要素安全化方法。
【請求項17】
自分のユーザ名及び請求項1〜7のいずれか1項に記載の方法によって得られた関連セキュリティコードを用いて、サービスプロバイダのカスタマファイルに登録されている、ユーザ装置のユーザに前記サービスプロバイダから転送される情報要素を安全にする方法であって、
前記サービスプロバイダで、前記情報要素が転送される前記ユーザの前記セキュリティコードを前記カスタマファイルから取り出すステップと、
暗号アルゴリズムと、暗号化鍵としての前記セキュリティコードとを使用することで、前記情報要素を暗号化するステップと、
この暗号化された情報要素を前記ユーザに転送するステップと、
前記暗号化された情報要素を前記ユーザ装置で受け取ると、前記ユーザ装置にユーザ個人コードを入力して、前記ユーザ装置の前記データ記憶手段から前記ユーザ装置の前記機器識別子を取り出すステップと、
前記セキュリティコードを前記ユーザ装置内で計算するステップと、
前記サービスプロバイダと同一の暗号アルゴリズムを使用することで、復号化鍵として、前記ユーザ装置で計算された前記セキュリティコードを用いて、前記暗号化された情報要素を前記ユーザ装置内で復号化するステップと、
を備えたことを特徴とする情報要素安全化方法。
【請求項18】
少なくとも1つのデータ入力インターフェイスと、データ処理手段と、ユーザ装置を一意的に識別する機器識別子が予め保存されている読み取り可能な改ざん防止記憶装置を含むデータ記憶手段とを備えたプログラム可能な前記ユーザ装置であって、請求項1〜18のいずれか1項に記載の方法に応じたプロセスを実行するようプログラムされていることを特徴とするユーザ装置。
【請求項19】
請求項18に記載のユーザ装置であって、
前記ユーザ装置の機器識別子は、ユーザに受け渡す前に前記ユーザ装置に組み込まれた製品シリアルナンバーであることを特徴とするユーザ装置。
【請求項20】
請求項19に記載のユーザ装置であって、
前記ユーザ装置が携帯電話であり、前記ユーザ装置の機器識別子は、国際携帯機器ID(GSM電話の場合はIMEIコード)であることを特徴とするユーザ装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公表番号】特表2008−527905(P2008−527905A)
【公表日】平成20年7月24日(2008.7.24)
【国際特許分類】
【出願番号】特願2007−551213(P2007−551213)
【出願日】平成18年1月11日(2006.1.11)
【国際出願番号】PCT/NO2006/000012
【国際公開番号】WO2006/075917
【国際公開日】平成18年7月20日(2006.7.20)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.フロッピー
【出願人】(507236029)
【Fターム(参考)】