(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-09-12
(45)【発行日】2022-09-21
(54)【発明の名称】ワンタイムパスコードを組み込む持続性認証システム
(51)【国際特許分類】
H04L 9/08 20060101AFI20220913BHJP
G06F 21/31 20130101ALI20220913BHJP
G06F 21/32 20130101ALI20220913BHJP
【FI】
H04L9/08 C
H04L9/08 F
G06F21/31
G06F21/32
(21)【出願番号】P 2020000501
(22)【出願日】2020-01-06
(62)【分割の表示】P 2016557958の分割
【原出願日】2015-03-16
【審査請求日】2020-02-05
(32)【優先日】2014-03-16
(33)【優先権主張国・地域又は機関】AU
(73)【特許権者】
【識別番号】517049334
【氏名又は名称】ハヴェンテック ピーティーワイ リミテッド
(74)【代理人】
【識別番号】100108453
【氏名又は名称】村山 靖彦
(74)【代理人】
【識別番号】100110364
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100133400
【氏名又は名称】阿部 達彦
(72)【発明者】
【氏名】リチャードソン, リック ビー.
【審査官】金沢 史明
(56)【参考文献】
【文献】国際公開第2008/035450(WO,A1)
【文献】特開平10-336169(JP,A)
【文献】特開2005-167589(JP,A)
【文献】齋藤 孝道,マスタリングTCP/IP 情報セキュリティ編,第1版,株式会社オーム社,2013年09月01日,pp. 215-220
(58)【調査した分野】(Int.Cl.,DB名)
H04L 9/08, 9/32
G09C 1/00
G06F 21/31-21/32
G06F 21/64
(57)【特許請求の範囲】
【請求項1】
サーバとクライアント側プラットホーム上に存在するクライアント側アプリケーションのユーザとの間で継続中の認証を維持する方法であって、
前記方法は、
ステップa:クライアント側プラットホームが、継続的なワンタイムパスコードの使用を行う対象であるサーバに接続するステップ;
ステップb:クライアント側プラットホーム及びサーバによって、Secure Socket Layer(SSL)又はTransport Layer Security(TLS)を用いて現在のセキュリティで保護されたセッションを作成するステップ;
ステップc:クライアント側プラットホームが、一つ前のセッションで作成された現在の鍵対、及び、ユーザに関連付けられた一意のユーザID
、又はユーザ名を取得するステップ;
ステップd:クライアント側プラットホームによって、前記一意のユーザID及び前記現在の鍵対におけるクライアント側公開鍵をサーバに提供するステップ;
ステップe:サーバが、前記一意のユーザID
、又はユーザ名を用いてユーザデータベースを検索し、以前に保存されたクライアント側公開鍵を取得するステップ;
ステップf:サーバが、取得した以前に保存されたクライアント側公開鍵と、クライアント側プラットホームから受信した現在のクライアント側公開鍵を比較し、現在のセキュリティで保護されたセッションにおいて、取得した以前に保存されたクライアント側公開鍵と現在のクライアント側公開鍵が一致した場合にクライアント側プラットホームとサーバ間の認証が有効となるステップ;
ステップg:サーバが、クライアント側プラットホーム又はサーバに次の鍵対を生成するように要請するステップ;
ステップh:クライアント側プラットホーム又はサーバによって、次のセッションで使用するために、クライアント側プラットホームに安全に保存される次の鍵対を生成し、対応するクライアント側秘密鍵はサーバに保存されないステップ;
ステップi:クライアント側プラットホームとサーバの間で、次のセッションで使用するための次の鍵対における次のクライアント側公開鍵を共有するステップ;
ステップj:サーバが、前記一意のユーザID
、又はユーザ名に関連付けて次のクライアント側公開鍵を前記ユーザデータベースに保存するステップ;
ステップk:現在のセキュリティで保護されたセッションが終了するかタイムアウトになるまで、現在の鍵対とサーバの鍵対を使用してクライアント側プラットホームとサーバ間の継続的な通信を維持するステップ;
ステップl:クライアント側プラットホームが、現在の鍵対と次の鍵対を置き換えるステップ;を含み、
各セッションごとに、ステップaからlを繰り返して、ユーザが各セッションで
伝統的に使用された伝統的なユーザ名と対応するパスワード
との組合せを入力及び再入力することなく複数の継続的なセッションでクライアント側プラットホームとサーバ間の安全な接続を継続化し、生成されてから次のクライアント側公開鍵に置き換えられるまで継続的に維持される現在のクライアント側公開鍵の途切れないチェーンが生成される、方法。
【請求項2】
前記次の鍵対は、前記クライアント側プラットホームで生成される、請求項1に記載の方法。
【請求項3】
クライアント側公開鍵は、PKI鍵対の公開鍵である、請求項2に記載の方法。
【請求項4】
クライアント側プラットホームが、ユーザに第1のデータ項目と第2のデータ項目を入力することを要求し、
前記第1のデータ項目は、クライアント側公開鍵である「あなたが有する何か」であり、
前記第2のデータ項目は、任意のセッションで秘密鍵を生成するために用いられるユーザPIN又はパスワードであ
り、何時もサーバに保存されない「あなたが知る何か」である、ことをさらに含む、請求項2に記載の方法。
【請求項5】
前記第2のデータ項目は、任意のセッションで秘密鍵を生成するために用いられる、親指の指紋又は他の生体認証データを含む任意の形態の個人識別情報を含む、請求項4に記載の方法。
【請求項6】
各セッションごとにクライアント側プラットホームが新しい鍵対を生成してサーバに前記新しい鍵対を渡し、
サーバ側公開鍵と前記ユーザIDに一致するクライアント側公開鍵が一致する場合にのみ、後続のセッションも通信が有効になることをさらに含む、請求項4に記載の方法。
【請求項7】
前記
伝統的なユーザ名とパスワード
との組合せはサーバに保存されない、請求項1に記載の方法。
【請求項8】
前記次の鍵対は、サーバで生成される、請求項1に記載の方法。
【請求項9】
生成された前記鍵対の次の前記公開鍵が、伝統的なユーザ名に関して保存された前記現在の公開鍵を置き替え、前記公開鍵と前記秘密鍵は前記次のセッションで使用するために前記クライアントに保存される、請求項8に記載の方法。
【請求項10】
クライアント側プラットホームが、ユーザに第1のデータ項目と第2のデータ項目を入力することを要求し、
前記第1のデータ項目は、クライアント側公開鍵である「あなたが有する何か」であり、
前記第2のデータ項目は、任意のセッションで秘密鍵を生成するために用いられるユーザPIN又はパスワードである「あなたが知る何か」である、ことをさらに含む、請求項8に記載の方法。
【請求項11】
前記第2のデータ項目は、任意のセッションで秘密鍵を生成するために用いられる、親指の指紋又は他の生体認証データを含む任意の形態の個人識別情報を含む、請求項10に記載の方法。
【請求項12】
各セッションごとにクライアント側プラットホームが新しい鍵対を生成してサーバに前記新しい鍵対を渡し、
サーバ側公開鍵と前記ユーザIDに一致するクライアント側公開鍵が一致する場合にのみ、後続のセッションも通信が有効になることをさらに含む、請求項10に記載の方法。
【請求項13】
サーバと、プロセッサ及びメモリを有するクライアント側プラットホーム上に存在するクライアント側アプリケーションのユーザとの間で継続中の認証を維持するシステムであって、
前記システムは、
ステップa:クライアント側プラットホームが、継続的なワンタイムパスコードの使用を行う対象であるサーバに接続するステップ;
ステップb:クライアント側プラットホーム及びサーバによって、Secure Socket Layer(SSL)又はTransport Layer Security(TLS)を用いて現在のセキュリティで保護されたセッションを作成するステップ;
ステップc:クライアント側プラットホームが、一つ前のセッションで作成された現在の鍵対、及び、ユーザに関連付けられた一意のユーザIDを取得するステップ;
ステップd:クライアント側プラットホームによって、前記一意のユーザID及び前記現在の鍵対におけるクライアント側公開鍵をサーバに提供するステップ;
ステップe:サーバが、前記一意のユーザIDを用いてユーザデータベースを検索し、以前に保存されたクライアント側公開鍵を取得するステップ;
ステップf:サーバが、取得した以前に保存されたクライアント側公開鍵と、クライアント側プラットホームから受信した現在のクライアント側公開鍵を比較し、現在のセキュリティで保護されたセッションにおいて、取得した以前に保存されたクライアント側公開鍵と現在のクライアント側公開鍵が一致した場合にクライアント側プラットホームとサーバ間の認証が有効となるステップ;
ステップg:サーバが、クライアント側プラットホーム又はサーバに次の鍵対を生成するように要請するステップ;
ステップh:クライアント側プラットホーム又はサーバによって、次のセッションで使用するために、クライアント側プラットホームに安全に保存される次の鍵対を生成し、対応するクライアント側秘密鍵はサーバに保存されないステップ;
ステップi:クライアント側プラットホームとサーバの間で、次のセッションで使用するための次の鍵対における次のクライアント側公開鍵を共有するステップ;
ステップj:サーバが、前記一意のユーザIDに関連付けて次のクライアント側公開鍵を前記ユーザデータベースに保存するステップ;
ステップk:現在のセキュリティで保護されたセッションが終了するかタイムアウトになるまで、現在の鍵対とサーバの鍵対を使用してクライアント側プラットホームとサーバ間の継続的な通信を維持するステップ;
ステップl:クライアント側プラットホームが、現在の鍵対と次の鍵対を置き換えるステップ;を実行するように構成され、
各セッションごとに、ステップaからlを繰り返して、ユーザが各セッションで
伝統的に使用された伝統的なユーザ名と対応するパスワード
との組合せを入力及び再入力することなく複数の継続的なセッションでクライアント側プラットホームとサーバ間の安全な接続を継続化し、生成されてから次のクライアント側公開鍵に置き換えられるまで継続的に維持される現在のクライアント側公開鍵の途切れないチェーンが生成される、システム。
【請求項14】
前記次の鍵対は、前記クライアント側プラットホームで生成される、請求項13に記載のシステム。
【請求項15】
クライアント側公開鍵は、PKI鍵対の公開鍵である、請求項14に記載のシステム。
【請求項16】
クライアント側プラットホームが、ユーザに第1のデータ項目と第2のデータ項目を入力することを要求するステップをさらに実行するように構成されるシステムであって、
前記第1のデータ項目は、クライアント側公開鍵である「あなたが有する何か」であり、
前記第2のデータ項目は、任意のセッションで秘密鍵を生成するために用いられるユーザPIN又はパスワードである「あなたが知る何か」である、請求項13に記載のシステム。
【請求項17】
前記第2のデータ項目は、任意のセッションで秘密鍵を生成するために用いられる、親指の指紋又は他の生体認証データを含む任意の形態の個人識別情報を含む、請求項16に記載のシステム。
【請求項18】
各セッションごとにクライアント側プラットホームが新しい鍵対を生成してサーバに前記新しい鍵対を渡し、
サーバ側公開鍵と前記ユーザIDに一致するクライアント側公開鍵が一致する場合にのみ、後続のセッションも通信が有効になるステップをさらに実行するように構成される、
請求項16に記載のシステム。
【請求項19】
前記
伝統的なユーザ名とパスワード
との組合せはサーバに保存されない、請求項13に記載のシステム。
【請求項20】
前記次の鍵対は、サーバで生成される、請求項13に記載のシステム。
【請求項21】
生成された前記鍵対の次の前記公開鍵が、伝統的なユーザ名に関して保存された前記現在の公開鍵を置き替え、前記公開鍵と前記秘密鍵は前記次のセッションで使用するために前記クライアントに保存される、請求項20に記載のシステム。
【請求項22】
クライアント側プラットホームが、ユーザに第1のデータ項目と第2のデータ項目を入力することを要求するステップをさらに実行するように構成されるシステムであって、
前記第1のデータ項目は、クライアント側公開鍵である「あなたが有する何か」であり、
前記第2のデータ項目は、任意のセッションで秘密鍵を生成するために用いられるユーザPIN又はパスワードである「あなたが知る何か」である、ことをさらに含む、請求項20に記載のシステム。
【請求項23】
前記第2のデータ項目は、任意のセッションで秘密鍵を生成するために用いられる、親指の指紋又は他の生体認証データを含む任意の形態の個人識別情報を含む、請求項22に記載のシステム。
【請求項24】
各セッションごとにクライアント側プラットホームが新しい鍵対を生成してサーバに前記新しい鍵対を渡し、
サーバ側公開鍵と前記ユーザIDに一致するクライアント側公開鍵が一致する場合にのみ、後続のセッションも通信が有効になることをさらに含む、請求項22に記載のシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ワンタイムパスコードを組み込む持続性認証システムに、およびとりわけ、しかし限定することなく、ユーザによって開始されるユーザセッションに対してシステムのユーザが、ユーザ名および対応するパスワードを入力してかつ再入力する必要がないようなシステムに関する。
【背景技術】
【0002】
ユーザ名およびパスワードの使用は、公知技術である。増大する課題が存在し、ここでパスワードのサーバ側記憶領域が攻撃をより被りがちになっており、および複数のウェブサイトにわたって異なるおよび安全なパスワードを使用するユーザの負担が、不便、過度の複雑化および継続したセキュリティ上の問題点を導いてきている。
【0003】
この課題を解決する試みは、装置ハードウェア指紋鑑定または生体認証のような他の複数要素認証を含む。これらは、セキュリティを高めてかつ標準ユーザ名およびパスワード認証システムと関連する問題の露出を減少させる試みに使用される。しかしながら、一般的に、それらはすでに重荷となっているプロセスに複雑性および不便のより多くのステップを追加するだけである。
【0004】
この種の試みの一例が、その内容が相互参照によって本願明細書に組み込まれる、IBMに付与された(特許文献1)である。その解決策は、それの請求項1内に以下に読めるように概説されている:
【0005】
分散コンピューティング環境の分散ファイルシステムに接続可能なウェブサーバに対してクライアントを認証する方法であって、前記分散コンピューティング環境が前記分散ファイルシステムにアクセスするために認証されるユーザに証明書を戻すためのセキュリティサービスを含み、以下のステップ、すなわち:
【0006】
前記クライアントからユーザIDおよびパスワードのウェブサーバによる受信に応答して、前記セキュリティサービスによってログインプロトコルを実行しかつそこから得られる証明書を記憶するステップ;
【0007】
その中に識別子を有する持続性クライアント状態オブジェクトを前記クライアントへ戻すステップ;ならびに
【0008】
前記分散ファイルシステム内のウェブ文書に対する以降のアクセスを得るためにユーザIDおよびパスワードの代わりに前記識別子を含む前記持続性クライアント状態オブジェクトを前記クライアントに使用させるステップを含む方法。この配置は、持続性クライアント状態オブジェクトとして「クッキー」を利用すると解釈されることができる。この配置は、顕著なセキュリティ問題に苦しむ。
【0009】
更なる従来技術例(その全てが相互参照によって含まれる)が、以下を含む:
【0010】
Canon KKに付与された(特許文献2)の主請求項は以下のように読める:
【0011】
ネットワークを介してサーバによって装置を認証する方法であって、前記方法が以下のステップ、すなわち:
【0012】
前記装置によって、前記サーバとの安全な接続を確立するステップ;
【0013】
前記装置によって、前記サーバに前記装置の識別情報を通信するステップであって、前記識別情報が、前記サーバに対して前記装置を一意的に識別してかつ前記装置内に予め記憶されるステップ;
【0014】
前記サーバによって、前記装置によって通信される前記識別情報を使用して前記装置の信憑性を判定するステップ;ならびに
【0015】
前記装置が信用できると前記サーバが判定する場合:
【0016】
前記サーバによって、前記装置に対する第1の認証トークンを作り出すステップであって、前記装置が信用できると前記第1の認証トークンが示すステップ;
【0017】
前記サーバによって、前記第1の認証トークンを記憶するステップ;
【0018】
前記サーバによって、前記安全な接続を使用して前記装置に前記第1の認証トークンを伝達するステップ;ならびに
【0019】
前記装置によって、前記第1の認証トークンを記憶するステップを含み;
【0020】
前記方法が更に、次のステップ、すなわち:
【0021】
前記装置によって、前記サーバとの安全な再接続を確立するステップ;ならびに
【0022】
前記サーバによってかつ前記安全な再接続を介して、認証するステップであって、前記装置が前記装置によって記憶される前記第1の認証トークンを使用するステップを含むことを特徴とする方法。
【0023】
Sun MicroSystemsに付与された(特許文献3)の主請求項は以下のように読める:
【0024】
単数または複数の情報資源へのアクセスを制御するセキュリティアーキテクチャに用いられるセッション証明書であって、前記セッション証明書が:
【0025】
主体を一意的に識別する主体識別子;および
【0026】
前記主体に対応するログイン証明書の以前の認証の後で前記セキュリティアーキテクチャによって与えられる認可のエンコーディングを備え、
【0027】
前記主体識別子および認可エンコーディングが暗号によって安全にされ、かつ前記セキュリティアーキテクチャが前記ログイン証明書の再認可なしで前記単数または複数の情報資源へのアクセスに対する前記認可の十分性を評価することを可能にするセッション証明書。
【0028】
First Dataに付与された(特許文献4)の主請求項は以下のように読める:
【0029】
移譲可能な認証のための方法であって、それによって第1のコンピュータにアクセスするユーザが、前記第1のコンピュータから遠隔の第2のコンピュータに対して、前記ユーザが前記第2のコンピュータに対して必ずしも彼自身を明示的に識別する必要なく、認証されることができ、以下のステップ、すなわち:
【0030】
ユーザのコンピュータで前記第1のコンピュータにアクセスするステップ;
【0031】
前記第1のコンピュータに対して前記ユーザを認証するステップ;
【0032】
前記第1のコンピュータから、ユーザ特性の前記第1のコンピュータのデジタルバウチャを含むクッキーを受信するステップであって、前記バウチャが前記第1のコンピュータによって暗号によって保証され、前記第1のコンピュータによって、前記第1のコンピュータおよび前記第2のコンピュータに秘密であるが前記ユーザに知られていない、クライアント側公開鍵を使用して、前記ユーザ特性が暗号化されてかつ前記デジタルバウチャに組み込まれ、前記クライアント側公開鍵が前記第1のコンピュータおよび前記第2のコンピュータの少なくとも1つの非対称鍵を使用して、暗号によって保証されるステップ;
【0033】
前記ユーザのコンピュータ経由で前記第2のコンピュータに前記暗号によって保証されたクライアント側公開鍵を送信するステップ;ならびに
【0034】
前記バウチャを含む、前記クッキーの少なくとも一部を前記第2のコンピュータであって:
【0035】
前記ユーザが前記第2のコンピュータに必ずしも彼自身を明示的に識別する必要なく前記バウチャを認証し;
【0036】
前記バウチャから前記ユーザ特性を抽出し;かつ
【0037】
前記ユーザ特性に基づいて動作を実行するように構成される前記第2のコンピュータに送信するステップを含む方法。
【0038】
上記したように、クッキーは最近特定のセキュリティ問題を有してかつ継続的な採用問題を有する。
【0039】
さらに、繰り返しのパスワードエントリの使用および1台のマシンから別のマシンへのパスワードの明確な通信なしでシステムを安全にするために求める別な方法を開示する以下が開示されている。これらのシステムは、確認/認証を実行するために第三者マシンの使用を含んでより複雑である可能性がある。
【0040】
AT&Tへ付与された(特許文献5)
【0041】
Netscapeへ付与された(特許文献6)
【0042】
Computer Assocへ付与された(特許文献7)
【0043】
Microsoftへ付与された(特許文献8)
【0044】
IBMへ付与された(特許文献9)
【0045】
QSANへ付与された(特許文献10)
【0046】
本発明の実施態様は、これらの問題に対処するように設計されている。
注記
【0047】
用語「備える」(およびそれの文法変形)は、本願明細書では、「有する」または「含む」の包括的な意味で使用され、かつ「だけから成る」の排他的な意味ではなく使用される。
【0048】
(背景技術)における従来技術の上記の考察は、その中で検討された任意の情報が引用に値する従来技術または任意の国内の当業者の共通の一般知識の一部であることの容認ではない。
【先行技術文献】
【特許文献】
【0049】
【文献】米国特許第5875296号明細書
【文献】米国特許第8447977号明細書
【文献】米国特許第6668322号明細書
【文献】米国特許第6421768号明細書
【文献】米国特許第4578531号明細書
【文献】米国特許第6134592号明細書
【文献】米国特許第6205480号明細書
【文献】米国特許第7523490号明細書
【文献】米国特許第20110320820号明細書
【文献】米国特許第20130219472 A1号明細書
【発明の概要】
【発明が解決しようとする課題】
【0050】
概括的に、本発明の実施態様内に要約される概念は、持続性認証プロセスならびに対応するシステムおよび器具に対して2つの部分の情報に依存することである:
【0051】
好ましい、詳細な形態において、各セッションに対して新規の鍵対がクライアントによって生成されてかつサーバに渡される。このサーバ記憶された公開鍵とそのユーザ(ユーザID)に一致するクライアント上の公開鍵との間に一致がある場合だけ、以降のセッションに対する通信が可能にされる。
【0052】
概括的に、別の方法で述べられる好ましい実施態様に従って、サーバと通信するクライアント側アプリケーションを使用する時、ユーザを特徴付けるワンタイムパスコードの途切れないチェーンが生じる。特定の形態において、ワンタイムパスコードは実際にクライアント生成された鍵対の公開鍵である。更なる特定の好ましい形態において、更新の一態様が可能にされ、それによってワンタイムパスコードが規則的な間隔で置換され続ける(好ましい形態では好ましくは少なくとも接続セッションあたり一回)。
【0053】
したがって、本発明の1つの広い形態においてクライアント側プラットホーム上に存在するクライアント側アプリケーションとサーバとの間で開始される各セッションに対してユーザ名および対応するパスワードを入力してかつ再入力する必要無しでアプリケーションのユーザの継続的な認証を維持する方法であって;そしてパスワードがサーバ上に記憶されず;この方法がワンタイムパスコードの途切れないチェーンを利用するステップを含み;チェーン内の各パスコードがユーザ名およびクライアント側アプリケーションに対して一意であり;各パスコードが各前記セッション中に定期的におよび好ましくは少なくとも一回更新される方法が提供される。
【0054】
好ましくは、パスコードは、パスコードのチェーン内の次のクライアント側公開鍵によって置換されるまで、クライアント側プラットホームおよびサーバの両方に持続的に維持されるクライアント側公開鍵を備える。
【0055】
好ましくは、クライアント側公開鍵はPKI鍵対の公開鍵を備える。
【0056】
好ましくは、対応するクライアント側秘密鍵はサーバと共有されない。
【0057】
本発明の更なる広い形態においてアプリケーションを実行するのに適しているメモリと通信するプロセッサを含む装置が開示され;装置上のクライアント側プラットホーム上に存在するクライアント側アプリケーションと遠隔サーバとの間で開始される各セッションに対してユーザ名および対応するパスワードを入力してかつ再入力する必要なしで、前記装置が装置上で実行可能なアプリケーションのユーザの継続的な認証を維持し;そしてパスワードがサーバ上に記憶されず;この方法がワンタイムパスコードの途切れないチェーンを利用するステップを含み;チェーン内の各パスコードがユーザ名およびクライアント側アプリケーションに対して一意であり;各パスコードが各前記セッション中に少なくとも一回更新される。
【0058】
好ましくは、パスコードは、パスコードのチェーン内の次のクライアント側公開鍵によって置換されるまで、クライアント側プラットホームおよびサーバの両方に持続的に維持されるクライアント側公開鍵を備える。
【0059】
好ましくは、クライアント側公開鍵はPKI鍵対の公開鍵を備える。
【0060】
好ましくは、対応するクライアント側秘密鍵はサーバと共有されない。
【0061】
本発明の更に幅広い形態においてアプリケーションを実行するのに適しているメモリと通信するプロセッサを有する装置を含むシステムが提供され;装置上のクライアント側プラットホーム上に存在するクライアント側アプリケーションと遠隔サーバとの間で開始される各セッションに対してユーザ名および対応するパスワードを入力してかつ再入力する必要なしで、前記装置が装置上で実行可能なアプリケーションのユーザの継続的な認証を維持し、このシステムが第1および第2のデータの項目を導き出し;前記第1のデータの項目が:
好ましい形態においてクライアント側公開鍵である「あなたが有する何か」を備え、第2のデータの項目が「あなたが知る何か」を備える。
【0062】
好ましくは、前記第2のデータの項目が任意の所定のセッションに対して秘密鍵を作り出すために使用されるユーザPIN/パスワードを備える。
【0063】
好ましくは、前記第2のデータの項目が親指の指紋または任意の所定のセッションに対して秘密鍵を作り出すために使用される他の生体認証を含むがこれに限らず個人的に特定可能な情報の任意の形態を備える。
【0064】
好ましくは、各セッションに対して新規の鍵対がクライアントによって生成されてかつサーバに渡され、そしてこのサーバ記憶された公開鍵とそのユーザ(ユーザID)に一致するクライアント上の公開鍵との間の一致がある場合だけ、以降のセッションに対する通信が可能にされる。
【0065】
本発明のそのうえ更に幅広い形態においてユーザの認証の方法を実行するためにコードを実行するメモリと通信する少なくとも1台のプロセッサを含むプラットホームが提供され;前記方法がインターネットを介して遠隔サーバと通信する前記プラットホーム上で実行するクライアント側アプリケーションを使用する時、ユーザを特徴付けるワンタイムパスコードの途切れないチェーンを生じるステップを含む。
【0066】
好ましくは、ワンタイムパスコードはクライアント生成された鍵対の公開鍵である。
【0067】
本発明のそのうえ更に幅広い形態においてクライアント側プラットホーム上に存在するクライアント側アプリケーションとサーバとの間で開始される各セッションに対してユーザ名および対応するパスワードを入力してかつ再入力する必要なしで、アプリケーションのユーザの継続的な認証を維持するためのシステムが提供され、
前記システムが更新可能なワンタイムパスコードのストリングを利用し、そして更新が規則的な間隔で置換されるパスコードによって生じる。
【0068】
好ましい形態において間隔は、セッション接続間隔あたり一回を備える。
【図面の簡単な説明】
【0069】
【
図2】例示の実施態様の初期の使用のための制御プロセスである
【
図3】例示の実施態様の非初期の使用のための制御プロセスである
【
図4】更なる実施態様に従う秘密鍵の構成の方法のブロック図である。
【発明を実施するための形態】
【0070】
概括的に、考えは初期認証および次いで継続的な認証に対する2つの部分の情報に依存することである:
【0071】
好ましい詳細な形態において、新規の公開鍵が、各セッションに対してクライアントによって生成されてかつサーバに渡される。このサーバ記憶された公開鍵とそのユーザ(ユーザID)に一致するクライアント上の公開鍵との間に一致がある場合だけ、以降のセッションに対する通信が可能にされる。
【0072】
概括的に、別の方法で述べられる好ましい実施態様に従って、サーバと通信するクライアント側アプリケーションを使用する時、ユーザを特徴付けるワンタイムパスコードの途切れないチェーンが生じる。特定の形態においてワンタイムパスコードは、実際に公開鍵である。更に特定の好ましい形態において、更新の一態様が可能にされ、それによってワンタイムパスコードが規則的な間隔で置換され続ける(少なくともセッションあたり一回)。
【0073】
従来のユーザ名およびパスワード認証システムにおけるパスワードの代用物としてワンタイムパスコードの途切れないチェーンを使用する例示の実施態様が、開示される。
【0074】
図1は、例示の実施態様の主要構成要素を示す。ユーザが、一意のユーザID23を用いて、サーバと接続する時、公開鍵暗号交換のような暗号化および認証システムが、一般的に使用される。
【0075】
一般的に、ユーザはそれ自体の鍵対11を使用するサーバと通信するために使用される鍵対10を生成するクライアント側アプリケーション24を有する。公開鍵暗号法の既知の実践においてクライアント秘密鍵12が、メッセージを暗号化するためにサーバの公開鍵14とともに使用され、およびサーバは送られたメッセージを解読するためにクライアントの公開鍵13およびサーバの秘密鍵15を使用する。
【0076】
一旦センダ10およびレシーバ11の識別が確認されると、両者は、暗号化されたメッセージ16の高速暗号化および解読のために使用される秘密のパスワード17を共有する。
【0077】
一般的に、暗号化されたメッセージ16は通信セッションの期間の間だけ使用される秘密のパスワード17を使用し、そしてその後パスワード17は廃棄されてもはや使用されない。
【0078】
例示の実施態様において、上記の鍵交換および暗号化プロセスはクライアントによって生成される第2の鍵対組18を含むように拡張される。この鍵対生成18は、クライアントとサーバとの間の次の認証システムと現在の認証されたセッションを一意的にリンクするために使用される。
【0079】
この鍵対18は、クライアント装置上にローカルに記憶される秘密鍵20およびまたローカルに記憶される公開鍵19を含む。記憶されたクライアント公開鍵は、さらにサーバ25と共有されてそれに伝達され、それが次いでクライアントの公開鍵の記憶されたコピー22とともにクライアントを現在使用している人の一意のユーザID21に、記憶されたリファレンスをリンクする。
【0080】
クライアントとサーバとの間の以降の接続中に、記憶され共有されたクライアント公開鍵19、22、サーバの公開鍵14およびクライアント上に記憶された秘密鍵20が、現在のクライアント側公開鍵対として使用され、および追加鍵対が次いで生成されてかつ後に続くセッションのために記憶される。
【0081】
図2は、例示の実施態様の初期のセッションの制御プロセスを開示する。ユーザは、サーバ31と対話するために通信のクライアント側30上でアプリケーションを使用する。
【0082】
最初に、ユーザは一意のIDと共に持続性ワンタイム鍵を使用するサーバに接続する32。最初に、サーバおよびクライアントはクライアント30とサーバ31との間の通信を安全にするために従来の公開鍵暗号セッションを使用する33。
【0083】
次にユーザは持続性ワンタイムコードを使用したいと確認され34、およびユーザの一意のIDがユーザからもしくはクライアント上の記憶領域から収集されるかまたは読み出されてサーバに送られる35。その後、サーバはクライアントが次のセッションに用いられる公開鍵対を生成するようリクエストする36。クライアントは、次いで次のセッションに用いられるクライアントで安全に記憶される38公開鍵対を生成し37、および鍵対の公開鍵がサーバと共有される39。
【0084】
次のセッションのために使用されるべきクライアント公開鍵が、ユーザの一意のIDを使用してサーバ上に記憶される40。一旦このステップが確認されると、セッションが終了するかまたはタイムアウトするまで、既存のSSL、TLSまたは類似した接続がクライアントとサーバとの間の継続的な通信を安全にするために使用される41。
【0085】
図3は、例示の実施態様の非初期のセッションの制御プロセスを開示する。ユーザは、サーバ61と対話するために通信のクライアント側60上のアプリケーションを使用する。
【0086】
最初に、ユーザは一意のIDと共に持続性ワンタイムキーを使用するサーバに接続する62。最初に、サーバおよびクライアントはクライアント60とサーバ61との間の通信を安全にするために従来の公開鍵暗号セッションを使用する63。
【0087】
次に、一意のIDがユーザからもしくはクライアント上の記憶領域から収集されるかまたは読み出される64。次に、前のセッション中に記憶された記憶されたクライアント鍵対が、現在のユーザの一意のユーザIDを使用して読み出される65。次に、ユーザの一意のIDおよび以前に記憶されたクライアント公開鍵が、サーバと共有される66。
【0088】
サーバは、次いでユーザの一意のIDに対してその自体のユーザデータベースを検索し67、かつクライアントから共有されたクライアント公開鍵との比較68のために以前に保存されたクライアント公開鍵を読み出す。2つの鍵が一致しない場合、サーバはユーザに知らせてかつ問題に対処するために種々の対策を提案する70。一致が生じる69場合、サーバはその時第2の公開鍵対が、クライアントによって生成される72ようリクエストし71、および鍵対が続いて記憶される73。加えて、ちょうど今生成された72鍵対の公開鍵が次のセッションに用いられるサーバと共有される74。サーバは、次いでユーザの一意のIDと共に使用されるべき次のクライアント公開鍵を記憶し75、およびセッションが終了するかまたはタイムアウトするまで、クライアントおよびサーバの両方の現在の鍵対がクライアントとサーバとの間の継続的な通信のために使用される76。
【0089】
結果は、複数のおよび継続的なセッションにわたってクライアントシステムとサーバシステムとの間の安全な接続を確立してかつ永続させるために使用されることができるクライアント公開鍵の形のワンタイムコードの持続性チェーンである。
代替実施態様
【0090】
例示の実施態様は、認証のために持続性識別子としてクライアント側およびサーバ側の両方に記憶される一連のクライアント側公開鍵の生成およびリンクを使用する。代替実施態様が、持続性識別子として共有されたAESパスコードのようなTLSセッション鍵のチェーンを使用することができる。この場合、共有されたクライアント側公開鍵が使用されるたびに、後に続く鍵が生成されて次のセッションに用いられるために両側に記憶される。持続性識別子としてクライアント側公開鍵を使用する利点は、クライアント側秘密鍵が、TLSセッション鍵の場合とは異なり、サーバと共有されないことであり、したがってシステムにセキュリティのあるレベルを追加する。
【0091】
例示の実施態様においてクライアントが、使用するプロセスに対する鍵対を生成するために使用される。代替実施態様ではサーバが、鍵対を生成するために使用されることができてかつ後に続くセッションに用いられるクライアントとそれらを共有することができる。
【0092】
例示の実施態様は、現在のセッション中にクライアントから来るクライアント公開鍵の共有されたコピーと、次のクライアント公開鍵のサーバ記憶されたコピーを共有する。代替実施態様は、クライアント公開鍵のチェックサムまたはハッシュを含むがこれに限らず比較目的のためにクライアント公開鍵の任意の等価物を使用することができる。
更なる実施態様。
【0093】
図4を参照しておよび特定の好ましい形態において本発明の一実施態様が更なる実施態様に従う秘密鍵の構成の方法に従う2つの部分の情報に依存する。
【0094】
好ましい形態においてクライアント側公開鍵である「あなたが有する何か」
【0095】
好ましい形態において任意の所定のセッションに対して秘密鍵を作り出すために使用されるユーザPIN/パスワードである「あなたが知る何か」。
【0096】
例示の実施態様の更なる拡張においてクライアント鍵対の秘密鍵が、2要素認証を実施するクライアント装置の特定ユーザにリンクされることができる。これは、例示の実施態様を使用する2要素認証において「ユーザが有さなければならない物」この場合有効なクライアント鍵対の必要とされた秘密鍵と共にPINまたは他の「ユーザが知らなければならない物」をユーザが入力するよう要求することによって達成される。
【0097】
この拡張においてクライアント鍵対101の秘密鍵100が、2つの構成要素102 103に分けられる。第1の構成要素は、将来のセッションでそれらの識別を確認するためにユーザによって選択されるPIN102である。このPIN102が、差分鍵要素103を生成するために秘密鍵全体100から減じられる。使うことができる鍵対101の使うことができる秘密鍵100を生成するために正しい差分鍵要素103に正しいPIN102をユーザが追加しない限り、差分鍵要素103はクライアント鍵対101で成功した秘密鍵100として使用されることができない。
【0098】
要素104が必要なPIN102なしで首尾よく使用されることができないので、差分鍵要素は次のセッションに用いられるクライアント装置上に安全に記憶されることが
できる104。
【0099】
実際問題としてPIN102は各セッションの始まりでユーザにリクエストされ、次いで、成功した公開鍵データの暗号化および解読を確立するために差分鍵要素103に追加される。
【0100】
加えて、PIN102はクライアント上に一時的に記憶され、そして次に、次のセッションの秘密鍵20に対して適切な差分鍵要素103を生成するために使われる。
【0101】
例示の実施態様は、2要素認証を達成するために「ユーザが知らなければならない物」としてのPINの使用を示す。代替実施態様は、親指の指紋または他の生体認証を含むがこれに限らず個人的に特定可能な情報の任意の形態を使用することができる。
【0102】
例示の実施態様は、クライアント側鍵対の秘密鍵から、PINを減ずることによって差分鍵要素を生成するために減算を使用する。代替実施態様は、クライアント側鍵対で使うことができる秘密鍵を生成するために個人的に特定可能な要素を第2のファイル要素と組み合わせられることを可能にする任意の計算を使用することができる。
【0103】
上記は、本発明の一部の実施態様だけを記述し、および当業者にとって明らかな変更が本発明の範囲および趣旨から逸脱することなく、それに対してなされることができる。
【産業上の利用可能性】
【0104】
本発明の実施態様は、器具または器具プラスユーザ組合せの認証がその器具との更なる通信の前に確認されることが必要とされる状況において適用されることができる。
【符号の説明】
【0105】
10 クライアント鍵対 センダ
11 サーバ鍵対 レシーバ
12 クライアント秘密鍵
13 クライアントの公開鍵
14 サーバの公開鍵
15 サーバの秘密鍵
16 暗号化されたメッセージ
17 秘密のパスワード
18 第2の鍵対組
19 クライアントの公開鍵
20 クライアントの秘密鍵
21 一意のユーザID
22 クライアントの公開鍵の記憶されたコピー
23 一意のユーザID
24 クライアント側アプリケーション
25 サーバ
30 クライアント
31 サーバ
60 クライアント
61 サーバ
100 秘密鍵
101 クライアント鍵対
102 PIN
103 差分鍵要素
104 要素