(57)【要約】モバイルデバイス（例えば、セル電話）上のソフトウェアアプリケーションのアクセスの制限を改善するためのシステムおよび方法が開示される。例示的な実施形態にしたがうと、ソフトウェアアプリケーションのアクセスの制限を改善するためのコンピュータに実装されるシステムおよび方法は、メモリを有するデバイスを使用することであって、ソフトウェアアプリケーションは、メモリ内に格納されている、ことと、ユーザからオリジナルＰＩＮを入力するように要求することであって、オリジナルＰＩＮは、メモリ内に格納されてなく、オリジナルＰＩＮに関する任意の情報は、メモリ内に格納されていない、ことと、を含む。本発明はさらに、オリジナルＰＩＮをシード数として使用して、正しい暗号鍵を形成することと、正しい暗号鍵を使用して、アプリケーションの秘密データを暗号文へと暗号化することと、暗号文をメモリ内に格納することと、を含む。
2009526280.tif 000002
【特許請求の範囲】
【請求項１】
ソフトウェアアプリケーションを使用することに関する制限を改善するための方法であって、該ソフトウェアアプリケーションは、動的な認証コードを生成するように構成され、該ソフトウェアアプリケーションに対するアクセスは、ユーザから個人識別番号（ＰＩＮ）を要求することによって制限されており、
メモリを有するデバイスを使用することであって、該ソフトウェアアプリケーションは、該メモリ内に格納されている、ことと、
該ユーザからオリジナルのＰＩＮを入力するように要求することであって、該オリジナルのＰＩＮは、該メモリ内に格納されておらず、該オリジナルのＰＩＮに関する情報は、全く該メモリ内に格納されていない、ことと、
該オリジナルのＰＩＮをシード数として使用して、正しい暗号鍵を形成することと、
該正しい暗号鍵を使用して、アプリケーションの秘密データを暗号文へと暗号化することと、
該暗号文を該メモリ内に格納することと
を包含し、
任意の人間によって該ソフトウェアアプリケーションがアクセスされるときには常に、該アクセスする人間から、該ソフトウェアアプリケーションによって検証されないＰＩＮを要求し、
何の検証もなしに、該要求されたＰＩＮを該シード数として使用して、暗号鍵を形成し、
該暗号鍵を使用して、該暗号文を復号化する、方法。
【請求項２】
前記ＰＩＮは、パスワードを含む、請求項１に記載の方法。
【請求項３】
前記ＰＩＮは、パスワードと数字との組み合わせを含む、請求項１に記載の方法。
【請求項４】
前記デバイスは、セル電話を含む、請求項１に記載の方法。
【請求項５】
前記デバイスのメモリは、外部機器を含む、請求項４に記載の方法。
【請求項６】
前記外部機器は、加入者識別モジュール（ＳＩＭ）を含む、請求項４に記載の方法。
【請求項７】
前記外部機器は、デバイスのメモリに接続されたユニバーサルシリアルバス（ＵＳＢ）を含む、請求項４に記載の方法。  
【請求項８】
前記外部機器は、ワイヤレスメモリデバイスを含む、請求項４に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
（発明の分野）
本発明は、概して、モバイルデバイス上のソフトウェアアプリケーションのアクセスに関し、より具体的には、モバイルデバイス上のソフトウェアアプリケーションへのアクセスに対する制限の改善に関する。
【背景技術】
【０００２】
（発明の背景）
ソフトウェアプリケーションおよびサービスに対するアクセスを制限するために、個人識別番号（ＰＩＮ；ｐｅｒｓｏｎａｌ  ｉｄｅｎｔｉｆｉｃａｔｉｏｎ  ｎｕｍｂｅｒ）を使用すること、およびパスワードを使用すること（これは、パスワードが追加的な文字（例えば、英数字）を使用可能にするという事実が理由でより幅広く普及している）が、世界中で広く確立されている。
【０００３】
さらに、アクセスを制限するためにＰＩＮおよび／またはパスワードを使用することに関する弱点もまた、周知である。例えば、ＰＩＮまたはパスワードは、使用されるときに（特に、それらが送信されるときに）容易に盗まれ得る。秘密ＰＩＮまたはパスワードの露出によって引き起こされる弱点を克服するための、最も受け入れられている方法は、代わりに「ワンタイムパスワード（Ｏｎｅ−Ｔｉｍｅ−Ｐａｓｓｗｏｒｄ）」を使用することである。ワンタイムパスワードとは、１回のみの使用に適したＰＩＮまたはパスワードのことをいう。
【０００４】
明らかではあるが、ワンタイムパスワードが使用されるときに、それらが露出される場合に、その露出は問題とはならない。なぜならば、ワンタイムパスワードは、将来使用することができないからである。現在、サービスまたはアプリケーション（本明細書中では以下、「ターゲットのアプリケーション（ｔａｒｇｅｔｅｄ  ａｐｐｌｉｃａｔｉｏｎ）」と称される）にアクセスするエンティティは、次回のアクセスのために有効なワンタイムパスワードを取得するために、パスワード生成器デバイス（ｐａｓｓｗｏｒｄ  ｇｅｎｅｒａｔｏｒ  ｄｅｖｉｃｅ）と称されるものを使用し得る。
【０００５】
これらのパスワード生成器デバイスは、通常、ワンタイムパスワードの計算の種を与え（ｓｅｅｄ）、その後、アクセスする人間に対してそれらを表示するために、順序アルゴリズムまたは時間依存アルゴリズムを使用する。ＰＩＮ／パスワードの露出の問題に関するこの解決策は、別の問題を引き起こす。すなわち、ワンタイムパスワード生成器が認可されていない者の手に陥った場合に、何が起こるのであろうか。明らかに、犯罪者にとっては、制限されている「かもしれない（ｗｏｕｌｄ  ｂｅ）」ターゲットのアプリケーションにアクセスするためには、理想的な状況になり得る。
【０００６】
この新しい問題、すなわちワンタイムパスワード生成器が認可されていない者の手に陥り得る可能性は、ワンタイムパスワード生成器を使用するための、一定または固定のＰＩＮまたはパスワードを要求することによって、容易に解決され得る。ここで、ＰＩＮ／パスワードが一定であるという事実は、問題とはならない。なぜならば、そのような固定のＰＩＮ／パスワードは送信されず、そのような一定のパスワードはワンタイムパスワード生成器に使用または入力されるだけであり、それ故に容易に露出されないからである。
【０００７】
当然ながら、アクセスするエンティティが追加的なデバイス（パスワード生成器）を所持しなければならないという事実は、最小限であると言うためには、有利ではない。また、ワンタイムパスワード生成器が不便な状況も多々見られる。
【０００８】
世界中のトレンドは、考え得る全ての用途のための、１つのデバイス（すなわち、セル電話）を所持することなので、アクセスするエンティティのセル電話を、ワンタイムパスワード生成器として使用することは、自然なアプローチである。このアプローチは、特に、ワンタイムパスワードを計算することが可能なソフトウェアアプリケーションをセル電話にダウンロードし、そして、セル電話をワンタイムパスワード生成器に転用することである。
【０００９】
このアプローチは、今日では広範囲にわたって使用されており、いくつかの会社は、この種類の解決策を販売している。しかしながら、今日では新しい問題が認識されている。本明細書中では、セル電話のソフトウェアアプリケーションのセキュリティの欠如と称することにする。
【００１０】
セル電話のアプリケーションは、容易に露出されたり、ハッキングされたり、見破られたりする（ｐｅｎｅｔｒａｔｅｄ）ので、特にＪａｖａ（登録商標）ベースのアプリケーションは、安全ではない。Ｊａｖａ（登録商標）アプリケーションは、苦も無く分解・模倣することができるので、熟練の侵入者に対して、データ（例えば、パスワード）を秘密に保持することは、困難である。
【００１１】
ここで、ＰＩＮ／パスワードの原理の真の性質が共有の秘密であるという事実は、アプリケーションに対するアクセスを制限するために現在使用されている方法の弱点の一因となっている。秘密のＰＩＮ／パスワードに関する知識が、サービスまたはアプリケーションにアクセスするエンティティに限らず、制限されたセル電話のワンタイムパスワード生成器アプリケーションに対しても知られなければならないという事実は、実際のところ、セキュリティの穴となる。なぜアプリケーションは、ＰＩＮを知るべきなのであろうか。このことは、アプリケーションが、アクセスするエンティティによって入力されたパスワードを検査したり、正しいＰＩＮ／パスワードと比較したりすることを可能にするために、必要なのである。
【００１２】
ハッカーがセル電話のメモリを読み取り、そして期待されるパスワードを読み取った場合に、ハッカーはまた、認可されたオーナーと同じ方法で、ワンタイムパスワード生成器ソフトウェアを使用し得る。
【００１３】
概略すると、固定パスワードの方法の弱点の１つは、アクセスされるワンタイムパスワード生成器アプリケーションが秘密を知っているという事実に起因する。その結果、犯罪者がそのような秘密にアクセスし得る場合に、犯罪者はパスワードを知り、認可されたエンティティになりすますことができ、そして、ワンタイムパスワード生成器アプリケーションにアクセスすることができる。
【００１４】
上述で言及されたセキュリティの穴を克服するために使用される直接的な方法は、ＰＩＮを保持する代わりに、固定のＰＩＮのハッシュ値を保持または格納することを含む。周知の通り、任意のハッシュ関数は、一方向性の関数であり、ＰＩＮのハッシュ値からＰＩＮそのものへと逆行することは、理論的には不可能である。この事実は、ハッカーがハッシュ値を読み取った場合に、そのハッカーはＰＩＮを推測（ｉｎｆｅｒ）することが不可能であり得、それ故に、ワンタイムパスワード生成器アプリケーションの制限が保護されると考えられるという事実を理由として、上述で言及されたセキュリティの穴を克服する。ワンタイムパスワード生成器のセル電話のソフトウェアアプリケーションのほとんどは、このような方法でハッシュ関数を使用している。
【００１５】
しかしながら、セキュリティは、ただ簡単な方法が存在するが故に、ハッカーがこのハッシュの障害を克服することは明白である。本発明の目的の１つは、ＰＩＮのハッシュ値を格納するための現在使用されているアプローチに固有のセキュリティの欠如を暴くこと、およびワンタイムパスワード生成器のタイプのセル電話のＰＩＮが制限されるアプリケーションのセキュリティの欠如を真に克服する方法を示すことである。
【００１６】
したがって、ハッシュ関数が不可逆性であり、さらにその結果、アタッカーがＰＩＮのハッシュ値からＰＩＮそのものを推定（ｄｅｄｕｃｔ）または推測することができないことは完全に正しいが、一方、アタッカーがワンタイムパスワード生成器アプリケーションをＰＣに完全にコピーしてスクリプトを形成し得ると、アタッカーは、全ての可能性のあるＰＩＮの組み合わせを単純に試行し得、結局は正しいＰＩＮが入力され、それに続きＰＣにおいてワンタイムパスワード生成器アプリケーションが機能する。
【００１７】
したがって、アタッカーは、特定のセル電話における特定のアプリケーションを実行する正しいＰＩＮを知ることができる。ワンタイムパスワード生成器アプリケーションが試行を制限する場合に、正しくない一連のＰＩＮの数を制限できるようにすることは、何の意味もなく、この制限は、ＰＣにおけるアプリケーションを再始動することによって、容易に克服される。
【００１８】
当然ながら、アタッカーは上記の特定のアプリケーションを実行することができ、ワンタイムパスワード生成器アプリケーションは、この時間の間に正しいワンタイムパスワードの値を表示し得る。その結果、アタッカーは、ターゲットのアプリケーションにアクセスし、そして、ターゲットのアプリケーションに対する制限を破ることができる。セル電話のワンタイムパスワード生成器アプリケーションを保護するための現在使用されている方法（ＰＩＮを必要とする）が安全ではない、ということは明白な結論である。
【発明の開示】
【課題を解決するための手段】
【００１９】
本発明のより完全な理解は、図面と関連して考慮されたときに、詳細な説明および特許請求の範囲を参照することによって、導かれ得る。ここで、複数の図面を通して、同じ参照番号は同じ要素を示している。
【００２０】
本明細書において、本発明は、様々なコンポーネントおよび処理ステップの観点で記載され得る。そのようなコンポーネントおよびステップは、特定の機能を実行するように構成された、任意の個数のハードウェアコンポーネントまたはソフトウェアコンポーネントによって実現され得るということが、理解されるべきである。例えば、本発明は、様々な電子制御デバイス、ビジュアルディスプレイデバイス、入力端末、等を利用し得、これらは、１つ以上の制御システム、マイクロプロセッサ、またはその他の制御デバイスの制御下で、様々な機能を実行し得る。加えて、本発明は、任意の個数のモバイルデバイスにおいて実施され得、セル電話は、本発明と共に使用され得る例示的なモバイルデバイスのほんの一例である。
【００２１】
本発明は、ワンタイムパスワード生成器アプリケーション（特に、セル電話にダウンロードされるもの、および／またはセル電話において実行するもの）のセキュリティを改善するシステムおよび方法に関する。本発明にしたがうと、一旦消費者がアプリケーションを設定してＰＩＮを確立すると、ＰＩＮはセル電話のメモリ内には格納されず、ＰＩＮのハッシュ値がセル電話内に格納されることも、ＰＩＮのその他の任意の派生物がセル電話内に格納されることもない。
【００２２】
本発明の一局面にしたがうと、消費者の選択したＰＩＮは、セル電話の内部にも、セル電話の外部（例えば、加入者識別モジュール（ＳＩＭ）カード、機器に接続されたユニバーサルシリアルバス（ＵＳＢ）、または無線機器、等の任意のセル電話機器）にも、記憶または格納されないということに、留意されたい。加えて、本発明の一局面にしたがうと、ＰＩＮが格納のために別のエンティティへと送信されることも、ＰＩＮに作用する一方向性の関数の任意の数値の結果が送信されることない。
【００２３】
言い換えると、本発明にしたがうＰＩＮのそのような選択は、消費者によってなされ得、通常は消費者のみに知られ得る。期待される問題は、ソフトウェアアプリケーションがＰＩＮを知らない場合に、アプリケーションはどのようにして、認可されたユーザのみに対するアクセスを制限することができるのであろうか、ということである。セル電話が消費者の選択したＰＩＮまたはＰＩＮの派生物（例えば、ＰＩＮのハッシュ値）の記憶を有していない場合に、セル電話内のワンタイムパスワード生成器アプリケーションはどのようにして、そのＰＩＮが正しいということを検査（ｖｅｒｉｆｙ）または確認（ｃｏｎｆｉｒｍ）または検証（ｖａｌｉｄａｔｅ）することができるのであろうか。ソフトウェアアプリケーションは、消費者によって入力されたＰＩＮを検査または確認または検証することができない、ということが結論である。
【００２４】
ＰＩＮが正しいかどうかを、そのようなＰＩＮに関する情報を一切有することなしに、ワンタイムパスワード生成器アプリケーションが検査し得る方法は、存在しない。この不可能性は、まさに、既に使用されている方法に対する本発明の利点の１つである。これは、ＰＩＮが正しくない場合も含めて、ワンタイムパスワード生成器アプリケーションが実行し得るということを意味する。様々なＰＩＮを試すアタッカーは、自身が成功したかどうかに関するヒントを有することがなかったり、または正しいＰＩＮを推量（ｇｕｅｓｓ）できなかったりする。アプリケーションは、どのような場合でも、ワンタイムパスワードを生成および表示し得る。しかしながら、本発明は、ワンタイムパスワード（ＯＴＰ；ｏｎｅ  ｔｉｍｅ  ｐａｓｓｗｏｒｄ）生成器アプリケーションの制限を保護するために既に使用されている方法よりも、強い保護を提供する。
【発明を実施するための最良の形態】
【００２５】
図１を参照すると、本発明の一実施形態によれば、通常は登録（ステップ１００）の間または直後に、最初にＰＩＮが入力されると（ステップ１１０）、本発明は、アプリケーションの秘密鍵／データ（「Ａ．Ｓ．Ｋ．」；ａｐｐｌｉｃａｔｉｏｎ’ｓ  ｓｅｃｒｅｔ  ｋｅｙｓ／ｄａｔａ）の計算を提供し（ステップ１２０）、暗号鍵
【００２６】
【化１】
2009526280.tif 000003
の計算を提供する（ステップ１３０）。ここで、最後の
【００２７】
【化２】
2009526280.tif 000004
は、セル電話のオーナーによって選択されたＰＩＮの強い相関要素である。本発明の一実施形態にしたがうと、本発明の方法はまた、
【００２８】
【化３】
2009526280.tif 000005
を使用して、Ａ．Ｓ．Ｋ．の暗号化
【００２９】
【化４】
2009526280.tif 000006
もまた提供する（ステップ１４０）。勿論、アプリケーションは、セル電話の任意のメモリ内に、
【００３０】
【化５】
2009526280.tif 000007
もＰＩＮも保持しないが、当然のように、暗号文とも称される
【００３１】
【化６】
2009526280.tif 000008
を格納し得る（ステップ１５０）。
【００３２】
この方法では、図２を参照すると、セル電話の真のオーナーが、自身のセル電話において実行しているＯＴＰ生成器アプリケーションの助けを借りて生成されるＯＴＰを有することを所望するときには常に、真のオーナーは、ＯＴＰ生成器アプリケーションを呼び出し（ステップ２００）、真のオーナーに知られているＰＩＮを入力し（ステップ２１０）、ＯＴＰ生成器アプリケーションは、暗号鍵
【００３３】
【化７】
2009526280.tif 000009
を生成し（ステップ２２０）、そのような
【００３４】
【化８】
2009526280.tif 000010
を用いることによって、記憶されている
【００３５】
【化９】
2009526280.tif 000011
を復号化すると（ステップ２３０）、
【００３６】
【化１０】
2009526280.tif 000012
となる。このようにして、Ａ．Ｓ．Ｋ．を復元する。したがって、Ａ．Ｓ．Ｋ．を知っているＯＴＰ生成器アプリケーションは、正しいＯＴＰを計算することが可能である。
【００３７】
対照的に、図３を参照すると、アプリケーションから正しいＯＴＰを取得しようとする認可されていない人間（例えば、アタッカー）は、アプリケーションをＰＣにコピーし（ステップ３００）、ＰＣにおいてアプリケーションを実行し、ＰＣにおいて組織的な方法で全ての可能性のあるＰＩＮの組み合わせを試し、最大の推量回数が尽きるたびに、この認可されていない人間は、再度ＰＣにおいて、推量された正しいＰＩＮがアプリケーションを実行し得るまで、アプリケーションを再度実行することを始める。しかしながら、本発明の方法にしたがうと、任意のＰＩＮが入力されると（ステップ３１０）、良いものでも悪いものでもアプリケーションを実行し、ＯＴＰを生成し得る（ステップ３２０）。しかしながら、そのようなＯＴＰは、正しくないＰＩＮが入力されたときには、常に正しくないものとなり得る。したがって、推量されたＰＩＮが良いものであるかどうかを判断するためにアタッカーが有する唯一の方法は、チェックされるべきＯＴＰを使用して、サーバのターゲットのアプリケーション（オリジナルのもの）にアクセスすること（ステップ３３０）である。ここで、アタッカーがターゲットのアプリケーションを制御していないという事実のために、アタッカーは、非常に限られた数の一連の正しくないＯＴＰのみを試すこと（例えば、５回の試行）が可能であり得、直後に、アタックされたアカウントは使用不可能になり、中止される（ステップ３４０）。したがって、アタッカーは、ターゲットのアプリケーションにアクセスし、成功することができない。このようにして、制限が機能する。
【００３８】
これは、本発明の方法が、実際に、セル電話のセキュリティの欠如に起因するアタック、またはセル電話のメモリ内に保持されている全ての秘密データに対する良く認識されたアタッカーの潜在的なアクセスに起因するアタックを克服するための方法を提供することの理由である。本発明の方法にしたがうと、ＰＩＮが格納または送信されないという事実のために、ＰＩＮを盗むことは不可能である。
【００３９】
本明細書中では、セル電話において実行しているアプリケーションのセキュリティを改善するための方法に関する本発明の長所または利点は、ワンタイムパスワード生成器アプリケーションを使用して、上記で説明されてきたが、当業者には、本明細書において上記で提案されてきたのと同じ方法が、セキュリティを改善したり非セキュアデバイス（例えば、セル電話、ＰＤＡ、ＰＣ）（ここではアタッカーは、デバイスのメモリ内に格納された任意の秘密にアクセスすることができる）において実行する任意の所望のアプリケーションへのアクセスを制限したりするために、使用され得るということが理解される。
【００４０】
セル電話において実行している「制限されなければならない（ｍｕｓｔ−ｂｅ−ｒｅｓｔｒｉｃｔｅｄ）」アプリケーションの制限を、本発明の方法がどのようにして改善するのかを示す本発明の別の実施形態にしたがうと、本明細書においては以下、セル電話において入力されたデータに対するＰＫＩデジタル署名を生成するアプリケーションが参照される。デジタル署名を生成するアプリケーションに関するさらなる情報については、本発明の発明者に付与された、英国特許第２３７４１８２号明細書および米国特許第６，９１２，６５９号明細書に記載されている出願を参照されたい。明らかではあるが、ＰＫＩ秘密鍵は、認可されていない人間がそのような知識を獲得し、その結果、ドキュメントにデジタル署名をすることができるようになったり、秘密鍵の正当なオーナーになりすますことができるようになったりするという、あらゆる可能性に対して安全に保たれていなければならない。加えて、米国特許第６，９１２，６５９号明細書は、機密であったり秘密であったりする公開鍵を管理するための方法を記載している。
【００４１】
前述の場合におけるように、セル電話において実行しているデジタル署名アプリケーションが、認可されていない者の手に陥る可能性は、アプリケーションを実行するために、一定のＰＩＮまたはパスワードを要求することによって、容易に防止され得る。しかしながら、上述のように、セル電話のアプリケーションは、容易に露出されたり、ハッキングされたり、見破られたりし、安全ではない。ここで、パスワードの原理の真の性質が共有の秘密であるという事実は、この防御の、すなわちこのアクセス制限の弱点の一因となっている。
【００４２】
上述のように、ＯＴＰ生成器アプリケーションについて言及するとき、現在使用されている防御方法にしたがうと、秘密、すなわちパスワードに関する知識が、サービスまたはアプリケーションにアクセスするエンティティに限られておらず、制限されたセル電話のデジタル署名アプリケーションにも知られなければならないという事実は、実際のところ、セキュリティの穴となる。
【００４３】
明らかなことであるが、ハッカーがセル電話のメモリを読み取り、そして期待されるパスワードを読み取ることができる場合に、ハッカーは、認可されたオーナーと同じ方法で、デジタル署名アプリケーションソフトウェアを使用し得る。結果として、固定パスワード方法の弱点の１つは、アクセスされるデジタル署名アプリケーションが秘密（すなわち、ＰＩＮ、ＰＩＮのハッシュ値、等）を知っており、それ故に、犯罪者がそのような秘密に対するアクセスを有し得る場合に、犯罪者はパスワードを知り、認可されたエンティティになりすますことができ、そして、デジタル署名アプリケーションを使用することができる。ＰＩＮのハッシュ値を使用するための従来の使用アプローチに固有のセキュリティの欠如は、既に議論された。
【００４４】
アタッカーは、デジタル署名アプリケーションをＰＣへとコピーしてスクリプトを形成し得ると、アタッカーは、全ての可能性のあるＰＩＮの組み合わせを単純に試行し得、結局は正しいＰＩＮが入力され、ＰＣにおいてデジタル署名アプリケーションが機能する。したがって、アタッカーは、特定のアプリケーション（すなわち、特定のセル電話におけるデジタル署名アプリケーション）を実行する正しいＰＩＮを知ることができる。
【００４５】
ＰＩＮを要求することによる、セル電話のデジタル署名アプリケーションに対するアクセスを保護するための現在使用されている方法が安全ではない、ということは明白な結論である。ここで、本発明の方法が、実際に、セル電話におけるセキュリティの欠如、およびセル電話のメモリ内に格納されたデジタル署名アプリケーションの全ての秘密データに対する良く認識されたアタッカーの潜在的なアクセスを克服するための方法を提供するということが、示される。
【００４６】
前述のように、本発明の一実施形態（ＯＴＰ生成器）にしたがうと、一旦消費者がデジタル署名アプリケーションを設定してＰＩＮを確立すると、そのようなＰＩＮはセル電話に保持されることも、試行ＰＩＮが正しいＰＩＮであるかどうかを検査または確認するために使用され得るＰＩＮのその他の任意の派生物が保持されることもない。
【００４７】
上述のように、消費者の選択したＰＩＮは、セル電話の内部にも、任意のセル電話機器にも、記憶または格納されない。これは、ＰＩＮが保持のために別のエンティティへと送信されることも、ＰＩＮに作用する一方向性の関数の任意の数値の結果が送信されることもない、ということを意味する。言い換えると、デジタル署名アプリケーションを実行するＰＩＮのそのような選択は、認可された消費者のみに知られ得る。上述のように、新しく入力されたＰＩＮが正しいかどうかを、そのようなＰＩＮに関する情報を一切有することなしに、デジタル署名アプリケーションが検査し得る方法は、存在しない。これは、ＰＩＮが正しくないＰＩＮである場合も含めて、デジタル署名アプリケーションが実行し、無効なものであり得るデジタル署名を生成する、ということを意味する。様々なＰＩＮを試すアタッカーは、自身が成功するかどうかに関するヒントを有しなかったり、正しいＰＩＮを推量できなかったりし得る。アプリケーションは、どのような場合においても、デジタル署名を生成し得る。
【００４８】
上述のように、本発明は、ＰＩＮのハッシュ値を格納することに基づく現在使用されている制限の防御よりも強い保護を提供する。本発明の一実施形態にしたがうと、方法は、選択されたＰＩＮが最初に入力されたときに、登録の間に、ＰＫＩペア（すなわち、秘密鍵および公開鍵）の計算、および追加的な暗号鍵
【００４９】
【化１１】
2009526280.tif 000013
の計算を提供する。ここで、最後の
【００５０】
【化１２】
2009526280.tif 000014
は、ＰＩＮを知っているエンティティに対してのみ、ＰＫＩの秘密鍵へのアクセスを制限するために、セル電話のオーナーによって選択されたＰＩＮの強い相関要素である。本発明の方法はまた、
【００５１】
【化１３】
2009526280.tif 000015
を使用して、ＰＫＩ秘密鍵の暗号化
【００５２】
【化１４】
2009526280.tif 000016
もまた提供する。勿論、アプリケーションは、セル電話のメモリ内に、
【００５３】
【化１５】
2009526280.tif 000017
もＰＩＮも保持しないが、アプリケーションは、
【００５４】
【化１６】
2009526280.tif 000018
を保持し得る。
【００５５】
この方法では、セル電話の真のオーナーが、自身のセル電話において実行しているデジタル署名アプリケーションを使用して、何らかのデータにデジタル署名しようとするときには常に、セル電話のオーナーは、デジタル署名アプリケーションを呼び出し、セル電話のオーナーのみに知られているＰＩＮを入力し、デジタル署名アプリケーションは、暗号鍵
【００５６】
【化１７】
2009526280.tif 000019
を計算し、そのような
【００５７】
【化１８】
2009526280.tif 000020
を用いることによって、記憶されている
【００５８】
【化１９】
2009526280.tif 000021
を復号化すると、
【００５９】
【化２０】
2009526280.tif 000022
となる。したがって、ＰＫＩ秘密鍵を知っているデジタル署名アプリケーションは、所望のデータに関して、正しいデジタル署名を計算することが可能である。
【００６０】
ある状況においては、アタッカーまたは正しいＰＩＮを知っていない任意の認可されていない人間が、デジタル署名アプリケーションにアクセスすることを試みる。そのような状況においては、アタッカーは、アプリケーションをＰＣへとコピーすることを企て、ＰＣにおいてそれを実行し、ＰＣにおいて組織的な方法で全ての可能性のあるＰＩＮの組み合わせを試し、最大の推量回数が尽きるたびに、このアタッカーまたは認可されていない人間は、再度ＰＣにおいて、推量された正しいＰＩＮがアプリケーションを実行するまで、アプリケーションを再度実行することを始める。しかしながら、本発明の方法にしたがうと、任意のＰＩＮが入力されると、良いものでも悪いものでもデジタル署名アプリケーションを実行し、デジタル署名を生成し得るが、そのようなデジタル署名は、正しくないＰＩＮが入力されたときには、常に正しくないものとなり得る。したがって、推量されたＰＩＮが良いものであるかどうかを判断するためにアタッカーが有する唯一の方法は、試行ＰＩＮを用いて取得された計算されたデジタル署名を使用すること（すなわち、デジタル署名された命令を、銀行に送信し、取引を行うこと）である。
【００６１】
ここで、アタッカーがデジタル署名されたアプリケーションを制御していないという事実のために、アタッカーは、非常に限られた数の一連の正しくないデジタル署名のみを試すこと（例えば、５回の試行）が可能であり得、その後、デジタル署名銀行アプリケーションの観点からは、アタックされたアカウントは使用不可能になり、中止され得る。したがって、アタッカーは、なりすましたり、成功したりすることができない。
【００６２】
したがって、ここでもまた、本発明の一実施形態にしたがうと、対称的な暗号鍵
【００６３】
【化２１】
2009526280.tif 000023
は、一方では選択されたＰＩＮの強い相関要素として計算され、他方では、この
【００６４】
【化２２】
2009526280.tif 000024
は、ＰＩＮと同様に、デバイスのメモリにも保持されないし、任意のデバイス機器（例えば、ＳＩＭカード、ＵＳＢトークン、任意の追加的なＳＩＭカード、追加的なＣＰＵ、等）にも保持されない。しかしながら、この
【００６５】
【化２３】
2009526280.tif 000025
は、ＰＩＮが入力されたときには常に計算されるので、明らかではあるが、アプリケーションは、正しいＰＩＮが入力された場合には、正しい
【００６６】
【化２４】
2009526280.tif 000026
を再計算する。この事実は、アタッカーが任意のデバイスのメモリに到達し得る場合でも、アプリケーションの制限を向上させる。
【００６７】
これは、再計算された暗号鍵が、正しい
【００６８】
【化２５】
2009526280.tif 000027
ではなく、すなわち入力された正しくないＰＩＮから推測された異なる鍵
【００６９】
【化２６】
2009526280.tif 000028
である場合に、数学的な演算
【００７０】
【化２７】
2009526280.tif 000029
が、正しくない秘密鍵になるということが理由である。
【００７１】
また、そのような正しくない秘密鍵を使用して計算されたデジタル署名は、Ｘ．５０９  Ｃｅｒｔｉｆｉｃａｔｅ’ｓ  Ｐｕｂｌｉｃ  Ｋｅｙとは整合しないので、デジタル署名は、無効であり得る。上述のように、秘密鍵または証明（ｃｅｒｔｉｆｉｃａｔｅ）そのものは、上記で参照された特許に記載されている公開された知識に対して開かれているべきではない。明らかなことではあるが、アタッカーは、消費者のデジタル署名された命令を待機する金融上の命令に対して正しくないデジタル署名を送信する機会を、わずかしか有していないので、結果的にアタッカーは、認可された消費者になりすます企てに失敗し得る。
【００７２】
２つの異なるセル電話のセキュリティアプリケーションまたは実施形態を用いて例示されてきた本発明の方法は、アプリケーションそのものとは独立であり、任意のアプリケーション（このアプリケーションは、制限を必要とし、デバイスのメモリ内に格納された秘密を読み取ろうとするアタッカーの企てを止めることが困難な環境において実行する）において使用され得るということが、理解されるべきである。
【００７３】
さらに、本発明の一実施形態にしたがう方法はまた、正しいＰＩＮを知っている認可された消費者が変更を希望する場合にはいつでも、選択されたＰＩＮを変更および更新する方法を提供する。
【００７４】
認可された消費者がアプリケーションに対して通知するとき、すなわち、正しいＰＩＮ（古いＰＩＮ）を入力した後に、新しいもの（新しいＰＩＮ）によって古いＰＩＮを変更および更新しようとする自身の企てを通知するとき、アプリケーションは、入力されたばかりの古いＰＩＮを使用して、暗号鍵
【００７５】
【化２８】
2009526280.tif 000030
を計算し、暗号化されたアプリケーションの秘密鍵を復号化し、
【００７６】
【化２９】
2009526280.tif 000031
アプリケーションの暗号鍵を復元する。ここで、新しいＰＩＮを使用することによって、アプリケーションは、新しい暗号鍵
【００７７】
【化３０】
2009526280.tif 000032
を計算し、そのような
【００７８】
【化３１】
2009526280.tif 000033
を使用することによって、Ａ．Ｓ．Ｋ．を暗号化し、
【００７９】
【化３２】
2009526280.tif 000034
アプリケーションは、デバイスのメモリ内に、それ
【００８０】
【化３３】
2009526280.tif 000035
を保持する。以後、正しい結果は、新しいＰＩＮが入力された場合のみに、アプリケーションによって生成されることになる。
【００８１】
利益、その他の利点、および問題に対する解決策は、本明細書においては、特定の実施形態に関して記載されてきた。しかしながら、想到またはさらに述べられる、利益、利点、問題に対する解決策、および任意の利益、利点、または解決策をもたらす任意の要素は、本発明の任意または全ての請求項の決定的、必須、または主要な特徴であるとは、考えられない。したがって、本発明の範囲は、添付の特許請求の範囲による以外には、制限されない。特許請求の範囲においては、単数の要素に対する言及は、特に断りがない限り、「１つおよびその１つだけ（ｏｎｅ  ａｎｄ  ｏｎｌｙ  ｏｎｅ）」を意味することを意図しておらず、「１つ以上（ｏｎｅ  ｏｒ  ｍｏｒｅ）」を意味する。当業者に公知な上述の例示的な実施形態の要素に対する構造的および機能的な等価物は、本明細書中では、明示的に組み込まれてはいないが、特許請求の範囲に含まれることが意図されている。
【図面の簡単な説明】
【００８２】
【図１】図１は、本発明の一実施形態にしたがう、有効なＰＩＮに基づいて暗号鍵を生成および使用する方法を示している。
【図２】図２は、本発明の一実施形態にしたがう、正しいパスワードを計算する方法を示している。
【図３】図３は、本発明の一実施形態にしたがう、ソフトウェアアプリケーションへのアクセスを制限する方法を示している。
【図１】
2009526280.tif 000036
【図２】
2009526280.tif 000037
【図３】
2009526280.tif 000038