IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ キャピタル・ワン・サービシーズ・リミテッド・ライアビリティ・カンパニーの特許一覧

特開2023-166562第1の要素非接触カード認証システムおよび方法
<>
  • 特開-第1の要素非接触カード認証システムおよび方法 図1
  • 特開-第1の要素非接触カード認証システムおよび方法 図2
  • 特開-第1の要素非接触カード認証システムおよび方法 図3
  • 特開-第1の要素非接触カード認証システムおよび方法 図4
  • 特開-第1の要素非接触カード認証システムおよび方法 図5
  • 特開-第1の要素非接触カード認証システムおよび方法 図6
  • 特開-第1の要素非接触カード認証システムおよび方法 図7
  • 特開-第1の要素非接触カード認証システムおよび方法 図8
  • 特開-第1の要素非接触カード認証システムおよび方法 図9
  • 特開-第1の要素非接触カード認証システムおよび方法 図10
  • 特開-第1の要素非接触カード認証システムおよび方法 図11A
  • 特開-第1の要素非接触カード認証システムおよび方法 図11B
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023166562
(43)【公開日】2023-11-21
(54)【発明の名称】第1の要素非接触カード認証システムおよび方法
(51)【国際特許分類】
   G06F 21/35 20130101AFI20231114BHJP
   G06F 21/60 20130101ALI20231114BHJP
【FI】
G06F21/35
G06F21/60 320
【審査請求】有
【請求項の数】20
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2023149188
(22)【出願日】2023-09-14
(62)【分割の表示】P 2022504082の分割
【原出願日】2020-07-10
(31)【優先権主張番号】16/519,079
(32)【優先日】2019-07-23
(33)【優先権主張国・地域又は機関】US
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.JAVA
(71)【出願人】
【識別番号】519111877
【氏名又は名称】キャピタル・ワン・サービシーズ・リミテッド・ライアビリティ・カンパニー
【氏名又は名称原語表記】Capital One Services, LLC
(74)【代理人】
【識別番号】100145403
【弁理士】
【氏名又は名称】山尾 憲人
(74)【代理人】
【識別番号】100135703
【弁理士】
【氏名又は名称】岡部 英隆
(72)【発明者】
【氏名】モスラー,ララ
(72)【発明者】
【氏名】ニューマン,ケイトリン
(72)【発明者】
【氏名】オズボーン,ケビン
(57)【要約】      (修正有)
【課題】クライアント/サーバ通信中に機密性の高いクライアント情報が悪用される可能性を低くするパスワードレス認証システムおよび方法を提供する。
【解決手段】パスワードレス認証システムおよび方法は、クライアントの非接触カードをアプリケーションサービスに登録することと、非接触カードを1つまたは複数のクライアントデバイスにバインドすることと、を含む。非接触カードは、ユーザ名および動的パスワードを有利に格納する。クライアントによるアプリケーションサービスへのアクセスは、任意のクライアントデバイスを使用して行う。アクセスの認証は、非接触カードインターフェースを含み、非接触カードからユーザ名および動的パスワードのペアを取得できる任意のクライアントデバイスによって実行される。
【選択図】図7
【特許請求の範囲】
【請求項1】
クライアントによるアプリケーションへのアクセスを承認するための方法であって、
第1のクライアントデバイスからアプリケーションにアクセスするための要求を受信することと、
前記第1のクライアントデバイスに関連付けられているクライアントを識別することと、
前記クライアントに関連付けられた第2のクライアントデバイスに前記要求の通知を転送することにより、前記要求の信頼性を検証することと、
前記第2のクライアントデバイスから応答を受信することであって、前記応答は、前記クライアントに関連付けられた非接触カードから前記第2のクライアントデバイスによって取得されたユーザ名および動的パスワードを備える認証情報を備える、ことと、
前記第2のクライアントデバイスによって取得された前記ユーザ名および動的パスワードを、前記クライアントの期待されるユーザ名および期待される動的パスワードと比較することと、
前記ユーザ名と前記期待されるユーザ名および前記動的パスワードと前記期待される動的パスワードの一致に応答して、前記要求を認証し、前記第1のクライアントデバイスで前記アプリケーションを起動することと、
前記クライアントに関連付けられた前記動的パスワードを更新および格納することと、
を含む方法。
【請求項2】
前記第1のクライアントデバイスおよび前記第2のクライアントデバイスは、異なるデバイスを備え、前記第2のクライアントデバイスは、前記第1のクライアントデバイスによって行われた前記要求を認証するために使用される、請求項1に記載の方法。
【請求項3】
前記アプリケーションを起動する前記ステップは、前記要求に関連付けられたウェブセッションと前記第2のクライアントデバイスとの間に通信リンクを構築して、前記第2のクライアントデバイスが認証を前記ウェブセッションに転送して前記アプリケーションを起動することを可能にするステップを含む、請求項2に記載の方法。
【請求項4】
前記アプリケーションを起動する前記ステップは、前記要求の承認を検出するために第2のクライアントデバイス通信を監視し、前記承認の検出に応答して前記アプリケーションを選択的に起動するステップを含む、請求項2に記載の方法。
【請求項5】
前記第1のクライアントデバイスおよび前記第2のクライアントデバイスは、同じデバイスを備える、請求項1に記載の方法。
【請求項6】
前記方法は、
前記第1のクライアントデバイスおよび前記第2のクライアントデバイスを前記クライアントに登録するステップをさらに含む、請求項1に記載の方法。
【請求項7】
前記方法は、
前記非接触カードを前記第2のクライアントデバイスにバインドするステップをさらに含む、請求項1に記載の方法。
【請求項8】
少なくとも前記ユーザ名は、SHA-2ハッシュアルゴリズム、トリプルデータ暗号化アルゴリズム、対称ハッシュベースメッセージ認証(HMAC)アルゴリズム、および対称暗号ベースメッセージ認証コード(CMAC)アルゴリズムのうちの1つまたは複数を使用して符号化される、請求項5に記載の方法。
【請求項9】
前記方法は、
前記クライアントに関連付けられた前記非接触カードから前記ユーザ名および動的パスワードを取得するように前記クライアントに促すステップをさらに含む、請求項1に記載の方法。
【請求項10】
前記動的パスワードは、前記クライアントによって維持されるカウンタに関連し、前記ユーザ名が前記非接触カードから取得される回数に関連する、請求項1に記載の方法。
【請求項11】
アプリケーションクライアントへのアクセスを制御するためのシステムであって、
プロセッサと、
クライアントに関連付けられた第2のクライアントデバイスから認証要求を受信して、アプリケーションにアクセスするために前記クライアントに関連付けられた第1のクライアントデバイスによって行われたアクセス要求を認証するように構成されたインターフェースであって、前記認証要求は、非接触カードによって前記第2のクライアントデバイスに提供される暗号文を含み、前記暗号文は、ユーザ名および動的パスワードを備える、インターフェースと、
少なくとも1つのクライアントのための少なくとも1つのエントリを備えるクライアントテーブルを備える非一時的な記憶媒体であって、前記少なくとも1つのエントリは、前記クライアントのために期待されるユーザ名および期待される動的パスワードを含む、非一時的な記憶媒体と、
前記非一時的な記憶媒体に格納され、前記プロセッサによって実行されたときに動作可能なプログラムコードであって、
前記ユーザ名と前記期待されるユーザ名との第1の一致、および前記動的パスワードと前記期待される動的パスワードとの第2の一致に応答して、前記認証要求を選択的に承認することと、
前記認証要求の承認に応答して、前記クライアントの前記期待される動的パスワードを更新することと、
を実行する、プログラムコードと、
を含むシステム。
【請求項12】
前記第1のクライアントデバイスおよび前記第2のクライアントデバイスは、異なるデバイスを備え、前記第2のクライアントデバイスは、前記第1のクライアントデバイスによって行われた要求を認証するために使用される、請求項11に記載のシステム。
【請求項13】
前記第1のクライアントデバイスおよび前記第2のクライアントデバイスは、同じデバイスを備える、請求項11に記載のシステム。
【請求項14】
前記プログラムコードは、前記第1のクライアントデバイスおよび前記第2のクライアントデバイスを前記クライアントに登録するようにさらに構成される、請求項11に記載のシステム。
【請求項15】
前記プログラムコードは、前記非接触カードを前記第2のクライアントデバイスにバインドするようにさらに構成される、請求項11に記載のシステム。
【請求項16】
前記ユーザ名の少なくとも一部は、符号化され、前記プログラムコードは、SHA-2ハッシュアルゴリズム、トリプルデータ暗号化アルゴリズム、対称ハッシュベースメッセージ認証(HMAC)アルゴリズム、および対称暗号ベースメッセージ認証コード(CMAC)アルゴリズムのうちの1つまたは複数を使用して前記ユーザ名を復号するようにさらに構成される、請求項11に記載のシステム。
【請求項17】
前記プログラムコードは、前記クライアントに関連付けられた前記非接触カードから前記ユーザ名および動的パスワードを取得するように前記クライアントに促すようにさらに構成される、請求項11に記載のシステム。
【請求項18】
前記クライアントテーブルの前記少なくとも1つのエントリは、前記クライアントに関連付けられたマスター鍵およびカウンタを含み、前記プログラムコードは、
前記クライアントの前記カウンタおよびマスター鍵に応答して、前記クライアントの多様化された鍵を生成し、
前記多様化された鍵を使用して前記暗号文を復号する、
ようにさらに構成される、請求項11に記載のシステム。
【請求項19】
前記動的パスワードは、前記カウンタに関連付けられている、請求項18に記載のシステム。
【請求項20】
クライアントによるアプリケーションへのアクセスを承認するための方法であって、
クライアントに関連付けられた第1のデバイスからアプリケーションにアクセスするための要求を受信することと、
前記第1のデバイスに関連付けられている前記クライアントを識別することと、
前記クライアントからの認証入力を要求する第2のデバイス上に表示するためのプロンプトを生成することを含む、前記クライアントに関連付けられた第2のデバイスに前記要求の通知を転送することによって、前記要求の信頼性を検証することと、
前記第2のデバイスから前記認証入力を受信することであって、前記認証入力は、生体認証入力、クエリ入力、および前記クライアントに関連付けられた非接触カードから前記第2のデバイスによって取得されたユーザ名および動的パスワードを備える非接触カード暗号文トークン入力のうちの1つまたは複数を含む、ことと、
前記認証入力を前記クライアントの期待される認証入力と比較することと、
前記認証入力と前記期待される認証入力の一致に応答して、前記第1のデバイスによる前記アプリケーションへのアクセスを可能にすることと、
のステップを含む方法。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願
この出願は、2019年7月23日に出願された「第1の要素非接触カード認証システムおよび方法」という名称の米国特許出願第16/519,079号の優先権を主張する。前述の出願の内容は、参照によりその全体が本明細書に援用される。
【背景技術】
【0002】
多くのサービスプロバイダは、インターネットを使用して、潜在的または現在の顧客にオファリングを提供している。オファリングは通常、サービスプロバイダの専用リソースを使用して動作するソフトウェアアプリケーションの形で提供される。
【0003】
多くのアプリケーションサービスは、アカウント番号、個人情報、購入履歴、パスワード、社会保障番号などの機密性の高いクライアントコンテンツを格納する。機密性の高い顧客コンテンツへの非承認アクセスを制限するには、サービスプロバイダが認証制御を実施する必要がある。
【0004】
多くの認証制御は、知識要素(クライアントが知っているもの)、所有権要素(クライアントが有しているもの)、および固有要素(クライアントが何か)を含む要素のいくつかの組み合わせに基づいてクライアントを検証する。知識要素は、パスワード、部分的なパスワード、パスフレーズ、または個人識別番号(PIN)、チャレンジレスポンス(ユーザは質問またはパターンに答える必要がある)を含み得る。所有権要素は、クライアントが所有しているものを含み得る(例えば、リストバンド、IDカード、セキュリティトークン、埋め込みデバイス、ハードウェアトークンが組み込まれた携帯電話、ソフトウェアトークン、またはソフトウェアトークンを保持する携帯電話)。固有要素は、ユーザ自身、またはユーザがしていることに関連し得る(例えば、指紋、網膜パターン、DNAシーケンス、署名、顔、声、一意の生体電気信号、または他の生体認証識別子)。
【0005】
サービスプロバイダの情報とサービスへのアクセスは、通常、多要素認証技術を使用して機密情報や重要な情報を保護するように設計された階層型セキュリティプロトコルを介して制御される。そのような努力にもかかわらず、サービスプロバイダシステムは、特にユーザ名/パスワード交換中に、フィッシング、中間者攻撃、およびその他の悪意のある攻撃に対して脆弱なままである。これらは、複数のプラットフォームで共通のパスワードを使用するユーザの傾向を理解しているハッカの特定のターゲットである。パスワードの暗号化による符号化は、悪意のある者がクライアントアカウントに干渉する能力を損なうことはあっても、排除するものではない。
【発明の概要】
【0006】
本発明の一態様によれば、クライアントによるアプリケーションへのアクセスを承認するための方法は、第1のクライアントデバイスからアプリケーションにアクセスするための要求を受信することと、第1のクライアントデバイスに関連付けられているクライアントを識別することと、クライアントに関連付けられた第2のクライアントデバイスに要求の通知を転送することにより、要求の信頼性を検証することと、第2のクライアントデバイスから応答を受信することであって、応答は、クライアントに関連付けられた非接触カードから第2のクライアントデバイスによって取得されたユーザ名および動的パスワードを含む認証情報を含む、ことと、のステップを含む。この方法はまた、第2のクライアントデバイスによって取得されたユーザ名および動的パスワードを、クライアントの期待されるユーザ名および期待される動的パスワードと比較することと、を含む。この方法はまた、ユーザ名と期待されるユーザ名および動的パスワードと期待される動的パスワードの一致に応答して、要求を認証し、第1のクライアントデバイスでアプリケーションを起動することと、を含む。この方法はまた、クライアントに関連付けられた動的パスワードを更新および格納することと、を含む。この態様の他の実施形態は、それぞれが方法の動作を実行するように構成された、対応するコンピュータシステム、装置、および1つまたは複数のコンピュータストレージデバイスに記録されたコンピュータプログラムを含む。
【0007】
他の態様によれば、クライアントによるアプリケーションへのアクセスを制御するためのシステムは、プロセッサと、クライアントに関連付けられた第2のクライアントデバイスから認証要求を受信して、アプリケーションにアクセスするためにクライアントに関連付けられた第1のクライアントデバイスによって行われたアクセス要求を認証するように構成されたインターフェースであって、認証要求は、非接触カードによって第2のクライアントデバイスに提供される暗号文を含み、暗号文は、ユーザ名および動的パスワードを含む、インターフェースと、少なくとも1つのクライアントのための少なくとも1つのエントリを含むクライアントテーブルを含む非一時的な記憶媒体であって、少なくとも1つのエントリは、クライアントのために期待されるユーザ名および期待される動的パスワードを含む、非一時的な記憶媒体と、非一時的な記憶媒体に格納され、プロセッサによって実行されたときに動作可能なプログラムコードと、を含む。このシステムはまた、ユーザ名と期待されるユーザ名との第1の一致、および動的パスワードと期待される動的パスワードとの第2の一致に応答して、認証要求を選択的に承認すること、を含む。このシステムはまた、認証要求の承認に応答して、クライアントの期待される動的パスワードを更新すること、を含む。この態様の他の実施形態は、それぞれが方法の動作を実行するように構成された、対応するコンピュータシステム、装置、および1つまたは複数のコンピュータストレージデバイスに記録されたコンピュータプログラムを含む。
【0008】
さらなる態様によれば、クライアントによるアプリケーションへのアクセスを承認するための方法は、クライアントに関連付けられた第1のデバイスからアプリケーションにアクセスするための要求を受信することと、第1のデバイスに関連付けられているクライアントを識別することと、クライアントからの認証入力を要求する第2のデバイス上に表示するためのプロンプトを生成することを含む、クライアントに関連付けられた第2のデバイスに要求の通知を転送することによって、要求の信頼性を検証することと、第2のデバイスから認証入力を受信することであって、認証入力は、生体認証入力、クエリ入力、およびクライアントに関連付けられた非接触カードから第2のデバイスによって取得されたユーザ名および動的パスワードを含む非接触カード暗号文トークン入力のうちの1つまたは複数を含む、ことと、を含む。この方法はまた、認証入力をクライアントの期待される認証入力と比較すること、を含む。この方法はまた、認証入力と期待される認証入力の一致に応答して、第1のデバイスによるアプリケーションへのアクセスを可能にすること、を含む。この態様の他の実施形態は、それぞれが方法の動作を実行するように構成された、対応するコンピュータシステム、装置、および1つまたは複数のコンピュータストレージデバイスに記録されたコンピュータプログラムを含む。
【0009】
他の態様によれば、サービスプロバイダによってホストされるアプリケーションを起動するための方法は、クライアントをアプリケーションに登録し、非接触カードをクライアントにバインドするステップを含む。一実施形態では、非接触カードをクライアントにバインドすることは、非接触カードからユーザ名および動的パスワードを備える暗号文を取得し、ユーザ名および動的パスワードのペアを認証し、ユーザ名および動的パスワードのペアをクライアントに関連付け、クライアントのユーザ名および動的パスワードのペアをメモリに格納することを含み得る。この方法は、変更されたアプリケーションインターフェースの一部として非接触カードログインオプションを提供するために、クライアントのアプリケーションインターフェースを更新することをさらに含む。
【0010】
さらなる態様によれば、アプリケーションを起動するためのシステムは、1つまたは複数の結合されたクライアントデバイス、ストレージデバイス、およびストレージデバイスに格納され、少なくとも1つのクライアントのエントリを備えるテーブルと情報を交換するように適合されたクライアントインターフェースを含む。エントリは、クライアントのカード識別子および動的カードパスワードを含む。システムは、クライアントインターフェースおよびテーブルに結合された認証ユニットを含み、テーブルに格納されたカード識別子および動的カードパスワードと、クライアントの非接触カードから取得された認証カード識別子および認証パスワードとの間の比較に応答してクライアントを選択的に認証する。システムはまた、認証ユニットに結合され、クライアントの選択的認証に応答してクライアントのためにアプリケーションを選択的に起動するように構成されたアプリケーション起動制御を含み得る。
【0011】
他の態様によれば、アプリケーションを起動するための方法は、クライアントデバイスを操作するユーザに複数のログインオプションを表示するステップを含み、複数のログインオプションは、非接触カードログインオプションを含む。この方法は、非接触カードログインオプションの選択に応答して、非接触カードをクライアントデバイスと係合させて、非接触カードのストレージデバイスから符号化された暗号文を取得するようにユーザに促すことと、符号化された暗号文は、ユーザ名および動的パスワードを備え、符号化された暗号文を承認サーバに転送して、ユーザ名および動的パスワードを、選択的認証のために期待されるユーザ名および期待されるパスワードと比較できるようにすることと、を含む。この方法は、承認サーバから認証結果を受信し、認証結果に応答してアプリケーションを選択的に起動するステップを含む。
【0012】
このような取り決めにより、単独で二重要素検証(ユーザ名の知識、動的パスワード、非接触カードの所有権、モバイルデバイスなど)を提供する非接触カード暗号文交換は、階層型セキュリティプロトコルの第1の要素認証メカニズムとして使用し得るため、クライアント/サーバ通信中に機密性の高いクライアント情報が悪用される可能性が低くなる。
【図面の簡単な説明】
【0013】
図1】例示的な実施形態に係る顧客の要求を事前認証するように構成されたデータ伝送システムのブロック図である。
図2】例示的な実施形態に係る認証されたアクセスを提供するためのシーケンスを示す図である。
図3図1のシステムで使用され得る認証情報を格納するための非接触カードの例である。
図4図3の非接触カードの例示的なコンポーネントを示す詳細なブロック図である。
図5図1の非接触カードとクライアントデバイスとの間で交換されるメッセージの例示的なフィールドの図である。
図6】本発明の態様をサポートするために利用され得る図1Aのシステムのコンポーネントの詳細なブロック図である。
図7】本明細書で説明するように、非接触カードの第1の要素認証を可能にするために、クライアント、1つまたは複数のクライアントデバイス、および/または非接触カードを登録するために実行され得る例示的なステップを説明するために提供されるデータフロー図である。
図8】非接触カードとクライアントデバイスとの間の暗号文交換の一部として提供されるユーザ名/動的パスワードペアを使用する安全なパスワードレスログインのためのシステムおよび方法の例示的な実施形態を説明するために提供されるデータフロー図である。
図9】本明細書に開示される態様をサポートするために様々なクライアントデバイス上に提供され得る例示的なユーザインターフェース要素を示している。
図10】本明細書に開示されるパスワードレスログインのプロセス中に様々なクライアントデバイス上に提供され得る例示的なユーザインターフェース要素を示している。
図11A】デバイスを使用するアプリケーション起動のための二重要素認証を可能にし得る例示的なユーザインターフェース要素を示している。
図11B】デバイスを使用するアプリケーション起動のための二重要素認証を可能にし得る例示的なユーザインターフェース要素を示している。
【発明を実施するための形態】
【0014】
パスワードレスログインプロトコルにより、サービスプロバイダは、クライアントにパスワードの入力を要求することなく、クライアントを認証できる。例えば、パスワードレスの電子メールベースまたはテキストベースのシステムは、電子メール/テキストアドレスと複雑な暗号化された鍵コードを使用してユーザの身元を検証する。公開鍵認証は、パスワードレスログインを実施するためのもう1つの方法である。公開鍵認証を使用したパスワードレスログイン方法は、Fast ID Online(FIDO)アライアンスによってサポートされている。FIDOは、ユニバーサル第2ファクタ(U2F)プロトコルを含む様々な認証規格を定義している。U2Fプロトコルは、近距離無線通信(NFC)タップまたはUSBセキュリティトークンなどの強力な第2の要素認証を使用する。ユーザは、ログイン中に個人のU2Fデバイスを挿入してタッチするように求められる。ユーザのFIDO対応デバイスは、新しい鍵ペアを作成し、公開鍵は、オンラインサービスと共有され、ユーザのアカウントに関連付けられる。次に、サービスは、登録されたデバイスが秘密鍵を使用してチャレンジに署名することを要求することにより、ユーザを認証できる。U2Fプロトコルは、パスワードベースの方法よりもセキュリティを向上させるが、認証に静的な秘密鍵を使用することは、暗号化されている場合でも、U2Fセキュリティプロトコル全体の弱点である。
【0015】
一態様によれば、改良されたパスワードレス認証プロトコルは、アプリケーションサービスのセキュリティを犠牲にすることなくアプリケーションサービスアクセスを容易にするための第1の要素認証メカニズムとして、非接触カード暗号文交換プロトコルを実際に適用する。
【0016】
一実施形態では、非接触カードは、埋め込まれた集積回路、ストレージデバイス、および近距離無線通信(NFC)プロトコルを使用してカードが送信デバイスと通信することを可能にするインターフェースを含むクレジットカード寸法のカードを備える。本明細書で使用され得る例示的な非接触カードは、Osbornらによって2018年11月29日に出願された「非接触カードの暗号認証のためのシステムおよび方法」という名称の米国特許出願第16/205,119号に記載され、参照により本明細書に援用されるもの(以下、’119出願)を含む。非接触カードは、NFC交換の一部として暗号文を交換するように構成され得る。
【0017】
改善されたパスワードレスプロトコルは、クライアントの非接触カードをアプリケーションサービスに登録し、非接触カードをクライアントにバインドし、’119出願で説明されている暗号交換プロトコルを使用して、アプリケーションサービスによるクライアントアクセス要求の第1の要素、第2の要素、および/またはその他の認証を実行することを含む。一実施形態では、非接触カードは、1つまたは複数のアプレット、カウンタ値、複数の鍵、およびサービスプロバイダと交換される各暗号文のカウンタ値をインクリメントするように構成された1つまたは複数のプロセッサを含むメモリを含み得る。非接触カードは、複数の鍵とカウンタ値を使用して暗号文を作成し、近距離無線通信(NFC)インターフェースなどの通信インターフェースを介して受信デバイスに暗号文を送信するように構成され得る。一態様によれば、暗号文は、クライアントのユーザ名または他の識別子を備え得る。様々な実施形態では、ユーザ名は、クライアントのために自動的に生成され得るか、またはクライアントによって定義され得る。様々な実施形態では、ユーザ名は、非接触カードをクライアントに届ける前に非接触カードに埋め込まれ得るか、あるいは、サービスプロバイダによる登録プロセスの一部として非接触カードにロードまたは埋め込まれ得る。いくつかの実施形態では、ユーザ名は、1つまたは複数のハッシュ関数、対称暗号化アルゴリズム、および/または非接触カードによって提供される鍵を使用してハッシュまたは暗号化され得る。
【0018】
他の態様によれば、暗号文は、アプリケーションサービスにアクセスするときにクライアントの第1の要素認証を実行するために、ユーザ名と組み合わせて使用され得る動的パスワードを備え得る。一実施形態では、動的パスワードは、暗号文カウンタを備え、したがって、動的パスワードは、クライアントとアプリケーションサービスとの間で交換される暗号文の数、すなわち、非接触カードからユーザ名が取得された回数に関係する。このような構成では、動的パスワードの予測不可能性がクライアントの信頼性の確実性を高めるため、クライアント/サーバ通信のセキュリティが強化される。
【0019】
一態様によれば、非接触カードをクライアントにバインドすることは、カードをデジタル資格情報および/またはクライアントデバイスに関連付けることを含む。カードとクライアントのデジタル資格情報との関連付けは、サービスプロバイダへのクライアントの初期登録(すなわち、クライアントによるアプリケーションサービスへの第1のアクセス)の一部として、または代わりに非接触カードをクライアントに届ける前に発生し得る。一実施形態では、少なくとも1つのクライアントデバイスは、非接触カードと通信するためのインターフェースを含む。非接触カードが非接触カードインターフェースを有するクライアントデバイスにバインドされると、既知のクライアントデバイスで実行される非接触カード暗号文交換を使用して、任意のウェブ結合デバイスで登録されたアプリケーションサービスへのクライアントアクセスを認証し得る。例えば、非接触カード/モバイルデバイスの暗号文交換を使用して、モバイルデバイスまたは他のウェブベースのデバイス上のクライアントによるサービスプロバイダのアクセス要求を認証し得る。
【0020】
一実施形態では、アプリケーションサービスクライアントインターフェースは、アプリケーションサービスアクセスのための暗号文交換認証方法の使用を提案または義務付けるように構成され得る。暗号文交換プロトコルは、二重要素検証(すなわち、ユーザ名と動的パスワードの知識、および非接触カードおよび/またはクライアントデバイスの所持)を提供し、動的パスワードの予測不可能性のために、開示されたプロトコルを第1の要素認証方法として使用する機能は、高セキュリティのパスワードレスの認証を求めるクライアントを満足させ得る。
【0021】
本発明のこれらおよび他の特徴は、図を参照して説明され、同様の参照番号は、全体を通して同様の要素を指すために使用される。本明細書で使用される表記法および命名法を一般的に参照して、以下の詳細な説明は、コンピュータまたはコンピュータのネットワーク上で実行されるプログラムプロセスに関して提示され得る。これらのプロセスの説明および表現は、当業者によって、それらの作業の実体を当業者に最も効果的に伝えるために使用される。
【0022】
プロセスは、本明細書にあり、一般に、望ましい結果につながる自己矛盾のない一連の演算であると考えられている。これらの演算は、物理量の物理的な操作を必要とする演算である。通常、必ずしもそうとは限らないが、これらの量は、格納、転送、結合、比較、およびその他の方法で操作できる電気、磁気、または光信号の形をとる。主に一般的な使用法の理由から、これらの信号をビット、値、要素、記号、文字、用語、数値などと呼ぶと便利な場合がある。しかしながら、これらおよび類似の用語はすべて、適切な物理量に関連付けられており、これらの量に適用される便利なラベルにすぎないことに留意すべきである。
【0023】
さらに、実行される操作は、加算または比較などの用語で参照されることが多く、これらは一般に、人間のオペレータによって実行される知的な演算に関連付けられている。1つまたは複数の実施形態の一部を形成する、本明細書に記載の演算のいずれにおいても、人間のオペレータのそのような能力は必要ではないか、またはほとんどの場合望ましいものではない。むしろ、演算は、機械演算である。様々な実施形態の演算を実行するための有用な機械は、汎用デジタルコンピュータまたは同様のデバイスを含む。
【0024】
様々な実施形態はまた、これらの操作を実行するための装置またはシステムに関する。この装置は、必要な目的のために特別に構築され得るか、またはコンピュータに格納されたコンピュータプログラムによって選択的に起動または再構成される汎用コンピュータを備え得る。本明細書に提示されるプロセスは、本質的に特定のコンピュータまたは他の装置に関連するものではない。様々な汎用機械が、本明細書の教示に従って書かれたプログラムと共に使用され得るか、または必要な方法ステップを実行するためのより特殊な装置を構築することが便利であることが証明され得る。これらの様々な機械に必要な構造は、与えられた説明から明らかになる。
【0025】
ここで、図面を参照する。同様の参照番号は、全体を通して同様の要素を参照するために使用される。以下の説明では、説明の目的で、その完全な理解を提供するために、多くの特定の詳細が示されている。しかしながら、新規の実施形態は、これらの特定の詳細なしで実施できることは明らかであり得る。他の例では、よく知られている構造およびデバイスは、その説明を容易にするためにブロック図の形で示されている。意図は、主張された主題と一致するすべての修正、均等物、および代替案をカバーすることである。
【0026】
図1は、ネットワーク115を介してサービスプロバイダ120に結合された1つまたは複数のクライアントデバイス110を含むシステム100を示している。一態様によれば、クライアントデバイス110は、ネットワーク対応コンピュータを備え、ネットワーク115および125を介してサービスプロバイダ120と通信して、サービスプロバイダのコンテンツおよびサービスにアクセスする。
【0027】
本明細書で言及されるように、ネットワーク対応コンピュータは、例えば、コンピュータデバイス、または、例えば、サーバ、ネットワークアプライアンス、パーソナルコンピュータ(PC)、ワークステーション、モバイルデバイス、電話、ハンドヘルドPC、携帯情報端末(PDA)、シンクライアントデバイス、ファットクライアントデバイス、インターネットブラウザ、またはその他のデバイス含む通信デバイスを含み得るが、これらに限定されない。
【0028】
したがって、クライアントデバイス110は、プロセッサおよびメモリを含むことができ、処理回路は、本明細書で説明される機能を実行するために、プロセッサ、メモリ、エラーおよびパリティ/CRCチェッカ、データエンコーダ、衝突防止アルゴリズム、コントローラ、コマンドデコーダ、セキュリティプリミティブ、および改ざん防止ハードウェアを含む追加のコンポーネントを含み得ることが理解される。クライアントデバイス110は、ディスプレイおよび入力デバイスをさらに含み得る。ディスプレイは、コンピュータモニタ、フラットパネルディスプレイ、および液晶ディスプレイ、発光ダイオードディスプレイ、プラズマパネル、およびブラウン管ディスプレイを含むモバイルデバイス画面などの視覚情報を提示するための任意のタイプのデバイスであり得る。入力デバイスは、タッチスクリーン、キーボード、マウス、カーソル制御デバイス、マイク、デジタルカメラ、ビデオレコーダまたはカムコーダなど、ユーザのデバイスで使用可能でサポートされている情報をユーザのデバイスに入力するための任意のデバイスを含み得る。これらのデバイスは、情報を入力し、本明細書に記載されているソフトウェアおよび他のデバイスと相互作用するために使用され得る。
【0029】
1つまたは複数のクライアントデバイス110は、例えば、Apple(登録商標)のiPhone(登録商標)、iPod(登録商標)、iPad(登録商標)、またはAppleのiOS(登録商標)オペレーティングシステムを実行するその他のモバイルデバイス、MicrosoftのWindows(登録商標)モバイルオペレーティングシステムを実行するデバイス、および/またはその他のスマートフォンまたは同様のウェアラブルモバイルデバイスなどのモバイルデバイスであり得る。
【0030】
図1の様々なクライアントデバイス110は、携帯電話142、ラップトップ144、タブレット148、および端末146を含む。クライアントデバイス110は、サービスプロバイダ120との通信に特に適合されたシンクライアントアプリケーションを含み得る。シンクライアントアプリケーションは、クライアントデバイスのメモリに格納され、クライアントデバイスによって実行されたときに動作可能であり、クライアントデバイスとサービスプロバイダアプリケーションとの間のインターフェースを制御し、クライアントデバイスのユーザがサービスプロバイダのコンテンツおよびサービスにアクセスできるようにし得る。
【0031】
いくつかの例では、ネットワーク115は、無線ネットワーク、有線ネットワーク、または無線ネットワークと有線ネットワークの任意の組み合わせのうちの1つまたは複数であり得、クライアントデバイス110をサービスプロバイダ120に接続するように構成され得る。例えば、ネットワーク115は、光ファイバネットワーク、パッシブ光ネットワーク、ケーブルネットワーク、インターネットネットワーク、衛星ネットワーク、無線ローカルエリアネットワーク(WLAN)、モバイル通信のためのグローバルシステム、パーソナル通信サービス、パーソナルエリアネットワーク、無線アプリケーションプロトコル、マルチメディアメッセージングサービス、拡張メッセージングサービス、ショートメッセージサービス、時間分割マルチプレックスベースのシステム、コード分割マルチアクセスベースのシステム、D-AMPS、Wi-Fi、固定ワイヤレスデータ、IEEE802.11b、802.15.1、802.11nおよび802.11g、ブルートゥース(登録商標)、NFC、無線周波数識別(RFID)、Wi-Fiなどのうちの1つまたは複数を含み得る。
【0032】
さらに、ネットワーク115は、電話回線、光ファイバ、IEEEイーサネット902.3、ワイドエリアネットワーク(「WAN」)、無線パーソナルエリアネットワーク(「WPAN」)、ローカルエリアネットワーク(「LAN」)、またはインターネットなどのグローバルネットワークを含み得るがこれらに限定されない。さらに、ネットワーク115は、インターネットネットワーク、無線通信ネットワーク、セルラネットワークなど、またはそれらの任意の組み合わせをサポートし得る。ネットワーク115は、スタンドアロンネットワークとして、または互いに協力して動作する、1つのネットワーク、または上記の任意の数の例示的なタイプのネットワークをさらに含み得る。ネットワーク115は、それらが通信可能に結合されている1つまたは複数のネットワーク要素の1つまたは複数のプロトコルを利用し得る。ネットワーク115は、他のプロトコルからネットワークデバイスの1つまたは複数のプロトコルに、または他のプロトコルから変換し得る。
【0033】
1つまたは複数の例によれば、ネットワーク115は、例えば、インターネット、サービスプロバイダのプライベートネットワーク125、ケーブルテレビネットワーク、クレジットカードアソシエーションネットワークやホームネットワークなどの企業ネットワークなどの複数の相互接続されたネットワークの一部であり得ることを理解されたい。さらに、プライベートネットワーク125は、ネットワーク115上に階層化された仮想プライベートネットワークとして実施され得る。
【0034】
サービスプロバイダ120は、一実施形態では、ネットワーク115を介してクライアントにコンピュータベースのサービスを提供する事業である。サービスプロバイダの特定のサービスをクライアントに提供するソフトウェアとハードウェアの組み合わせは、ここでは「サーバ」と呼ばれる。サーバは、サービスプロバイダのプライベートネットワーク125を介して通信し得る。これは、多くの場合、企業ネットワークまたはエンタープライズネットワークと呼ばれる。プライベートネットワーク125は、ネットワーク115に関して上記したように、無線ネットワーク、有線ネットワーク、または無線ネットワークと有線ネットワークの任意の組み合わせを備え得る。
【0035】
ソフトウェアサービスは、コンピューティングデバイスのオペレーティングシステム上で実行されるデスクトップアプリケーション、モバイルデバイスのモバイルオペレーティングシステム上で実行されるモバイルアプリケーション、またはモバイルオペレーティングシステムまたはデスクトップオペレーティングシステムのいずれかのブラウザコンポーネント上で実行されるウェブアプリケーションなど、電子デバイス上で実行されるアプリケーションで具現化され得る。当業者は、任意のタイプの電子デバイス上でソフトウェアアプリケーションを設計、構築、および展開する方法を理解するであろう。いくつかの実施形態では、アプリケーションは、デバイスのオペレーティングシステム上で実行されているブラウザアプリケーションであり得る。
【0036】
図1のシステムでは、サービスプロバイダ120は、アプリケーションサーバ150および認証サーバ160を含むように示されている。各サーバは、個別のデバイスとして示されているが、アプリケーションとサーバは、企業全体に分散され得、または「クラウド」リソースなどの分散リソースの場合は、ネットワーク115全体に分散され得ることが理解される。アプリケーションサーバ150は、サービスプロバイダ120によって提供される1つまたは複数のアプリケーションサービス、例えば、アカウント管理サービスをサポートし得る。一態様によれば、認証サーバ160は、以下でより詳細に開示されるように、非接触カードを使用して、第1の要素認証および第2の要素認証の一方または両方を提供するように構成され得る。
【0037】
データベース130は、例えば、アプリケーションサーバ150および認証サーバ160によって使用されるために、顧客アカウント、資格情報、および動的パスワードデータを含む他の認証情報を格納するために使用され得るデータストレージリソースを備える。データベース130は、ローカルストレージ、分散データセンタストレージ、またはクラウドベースのストレージの任意の組み合わせを備える結合されたデータリソースで構成され得、データリソースは、搬送波または伝搬データ信号を含まない非一時的で有形のストレージメディアを備える。
【0038】
一態様によれば、非接触カード105は、1つまたは複数のクライアントデバイス110との無線通信、例えば、近距離無線通信(NFC)をし得る。例えば、非接触カード105は、NFCまたは他の短距離プロトコルを介して通信するように構成された、無線周波数識別チップなどの1つまたは複数のチップを備え得る。他の実施形態では、非接触カード105は、ブルートゥース(登録商標)、衛星、および/またはWIFIを含むがこれらに限定されない他の手段を介してクライアントデバイス110と通信し得る。‘119出願で説明されているように、非接触カード105は、非接触カード105がそれぞれのクライアントデバイスの範囲内にあるとき、NFCを介してカードリーダ端末146、携帯電話142、ラップトップ144および/またはタブレット148の1つと通信するように構成され得る。以下でより詳細に説明するように、非接触カード105は、クライアントデバイスを認証するためにサービスプロバイダによって使用され得る動的パスワードを含む暗号文を生成するために暗号化アルゴリズムを使用して変換され得るユーザ名、鍵およびカウンタ情報を含み得る。
【0039】
上記のように、一態様によれば、第1の要素認証は、’119出願に記載されているような暗号文通信の一部として、ユーザ名および動的パスワードを交換することによって実施され得る。次に、例示的な暗号文交換システムおよび方法の説明を、図2図5を参照して説明する。
【0040】
図2は、本明細書に開示される様々な態様に従って、サービスプロバイダアプリケーションへのクライアントアクセスを認証するための例示的なワークフローを示すデータフロー図である。図2では、クライアントデバイス110は、アプリケーション122およびプロセッサ124を含むように示されている。一実施形態では、アプリケーションは、例えば、クライアントデバイス110とサービスプロバイダネットワークのサーバによってホストされるサービスプロバイダアプリケーションとの間のインターフェースを制御するためにプロセッサ124によって実行されるときに動作可能なプログラムコードを備えるクライアント側アプレットを備え得る。
【0041】
ステップ102で、アプリケーション122は、非接触カード105と通信する(例えば、非接触カード105に近づけられた後)。アプリケーション122と非接触カード105との間の通信は、アプリケーション122と非接触カード105との間のNFCデータ転送を可能にするために、クライアントデバイス110のカードリーダ(図示せず)に十分に近い非接触カード105を含み得る。
【0042】
ステップ104で、クライアントデバイス110と非接触カード105との間の通信が確立された後、非接触カード105は、NFCデータ交換フォーマットに従ってメッセージ認証コード(MAC)暗号文を生成する。いくつかの例では、これは、例えば、アプリケーション122が非接触カードに格納された近距離無線データ交換(NDEF)タグの読み取りを発行することに応答して、非接触カード105がアプリケーション122によって読み取られるときに発生し得る。この時点で、非接触カード105によって維持されるカウンタ値は、更新またはインクリメントされ得、非接触カードは、ヘッダ、ペイロード、および共有秘密を含むメッセージを生成し得る。一態様によれば、ペイロードは、クライアントのユーザ名を含み得、共有秘密は、クライアントを認証するために使用される動的パスワードを含み得る。MAC暗号文は、メッセージから作成され得、これは、ヘッダ、ペイロード、および共有秘密を含み得る。次に、MAC暗号文は、ランダムデータの1つまたは複数のブロックと連結され得、MAC暗号文と乱数(RND)は、セッション鍵で暗号化され得る。その後、暗号文とヘッダが連結され得、ASCII16進数として符号化され、NDEFメッセージフォーマットで返され得る(「NDEFファイルの読み取り」メッセージに応答して)。
【0043】
いくつかの例では、MAC暗号文は、NDEFタグとして送信され得、他の例では、MAC暗号文は、ユニフォームリソースインジケータとともに(例えば、フォーマットされた文字列として)含まれ得る。
【0044】
いくつかの例では、アプリケーション122は、非接触カード105に要求を送信するように構成され得、要求は、MAC暗号文を生成するための命令を備える。
【0045】
ステップ106で、非接触カード105は、MAC暗号文をアプリケーション122に送信する。いくつかの例では、MAC暗号文の送信はNFCを介して行われる。しかしながら、本開示はそれに限定されない。他の例では、この通信は、ブルートゥース(登録商標)、Wi-Fi、または他の無線データ通信手段を介して行われ得る。
【0046】
ステップ108で、アプリケーション122は、MAC暗号文をプロセッサ124に通信する。
【0047】
ステップ112で、プロセッサ124は、アプリケーション122からの命令に従って、MAC暗号文を検証する。例えば、以下で説明するように、MAC暗号文は、検証され得る。
【0048】
いくつかの例では、MAC暗号文の検証は、クライアントデバイス110とのデータ通信におけるサービスプロバイダ120などのクライアントデバイス110以外のデバイスによって実行され得る(図1に示されるように)。例えば、プロセッサ124は、サービスプロバイダ120の認証サーバ160に送信するためにMAC暗号文を出力し得、これは、MAC暗号文を検証し得る。
【0049】
一態様によれば、第1の要素セキュリティ認証は、ユーザに、1つまたは複数の非接触カードに関連付けられた1つまたは複数の行動を行わせ得る。事実上、セキュリティ要素認証は、非接触カードに関連付けられた1つまたは複数のタップジェスチャを含むがこれらに限定されない1つまたは複数のタイプの行動に従事することをユーザに促す。いくつかの例では、1つまたは複数のタップジェスチャは、ユーザによるデバイスへの非接触カードのタップを備え得る。1つまたは複数のタップジェスチャを使用して、サービスプロバイダでクライアントアクセス要求を認証する目的で、ユーザ名と動的パスワードを備える暗号文を交換し得る。
【0050】
一実施形態では、以下でより詳細に説明するように、非接触カードは、ユーザ名、鍵、カウンタ、およびユーザ名とともにクライアントデバイスのユーザを検証するために使用され得る動的パスワードを含む暗号文を生成するために使用され得る暗号処理機能を含む。一実施形態では、動的パスワードは、カウンタに関連する。したがって、そのような実施形態では、動的パスワードは、カードの所有者の以前の行動を有利に反映する。例えば、カウンタベースの動的パスワードは、ユーザが以前にサービスプロバイダの特定のサービスにアクセスした回数を反映し得、悪意のある第三者が把握することが事実上不可能な知識要素である。
【0051】
図3は、1つまたは複数の非接触カード300を示し、これは、カード300の前面または背面に識別情報が表示されるサービスプロバイダ305によって発行された、クレジットカード、デビットカード、またはギフトカードなどの支払いカードを備え得る。いくつかの例では、非接触カード300は、支払いカードとは関係がなく、識別カードまたはパスポートを備え得るが、これらに限定されない。いくつかの例では、支払いカードは、デュアルインターフェースの非接触支払いカードを備え得る。非接触カード300は、プラスチック、金属、および他の材料から構成される単層または1つまたは複数の積層層を含み得る基板310を備え得る。例示的な基板材料は、ポリ塩化ビニル、ポリ塩化ビニルアセテート、アクリロニトリルブタジエンスチレン、ポリカーボネート、ポリエステル、陽極酸化チタン、パラジウム、金、カーボン、紙、および生分解性材料を含む。いくつかの例では、非接触カード300は、ISO/IEC7810規格のID-1フォーマットに準拠する物理的特性を有し得、そうでなければ、非接触カードは、ISO/IEC14443規格に準拠し得る。しかしながら、本開示による非接触カード300は、異なる特性を有し得、本開示は、支払いカードに非接触カードを実施する必要がないことを理解されたい。
【0052】
非接触カード300はまた、カードの前面および/または背面に表示される識別情報315、および接触パッド320を含み得る。接触パッド320は、ユーザデバイス、スマートフォン、ラップトップ、デスクトップ、またはタブレットコンピュータなどの他の通信デバイスとの接触を確立するように構成され得る。非接触カード300はまた、処理回路、アンテナおよび図3には示されていない他のコンポーネントを含み得る。これらのコンポーネントは、接触パッド320の背後または基板310上の他の場所に配置され得る。非接触カード300はまた、カードの背面に配置され得る磁気ストリップまたはテープを含み得る(図3には示されていない)。
【0053】
図4に示されるように、接触パッド420は、マイクロプロセッサ430およびメモリ435を含む、情報を格納および処理するための処理回路を含み得る。処理回路には、本明細書に記載の機能を実行するために必要な、プロセッサ、メモリ、エラーおよびパリティ/CRCチェッカ、データエンコーダ、衝突防止アルゴリズム、コントローラ、コマンドデコーダ、セキュリティプリミティブ、および改ざん防止ハードウェアなどの追加コンポーネントを含み得ることが理解される。
【0054】
メモリ435は、リードオンリーメモリ、ライトワンスリードマルチプルメモリ、またはリード/ライトメモリ、例えば、RAM、ROM、およびEEPROMであり得、非接触カード400は、これらのメモリのうちの1つまたは複数を含み得る。リードオンリーメモリは、工場で読み取り専用または1回限りのプログラム可能としてプログラム可能であり得る。1回限りのプログラムにより、一度書き込んで何度も読み取ることができる。ライトワンス/リードマルチプルメモリは、メモリチップが工場から出荷された後のある時点でプログラムされ得る。メモリは、一度プログラムされると、書き換えられないかもしれないが、何度も読み取られ得る。リード/ライトメモリは、工場出荷後に何度もプログラムおよび再プログラムされ得る。また、何度も読み取られ得る。
【0055】
メモリ435は、1つまたは複数のアプレット440、1つまたは複数のカウンタ445、および顧客情報450を格納するように構成され得る。1つまたは複数のアプレット440は、それぞれの1つまたは複数のサービスプロバイダアプリケーションに関連付けられ、Javaカードアプレットなどの1つまたは複数の非接触カード上で実行するように構成された1つまたは複数のソフトウェアアプリケーションを備え得る。一態様によれば、各アプレットは、クライアントがアプレットに関連付けられたサービスプロバイダアプリケーションにアクセスするためのユーザ名402を格納し得る。
【0056】
1つまたは複数のカウンタ445は、整数を格納するのに十分な数値カウンタを備え得る。顧客情報450は、非接触カード400のユーザに割り当てられた一意の英数字の識別子、および/または非接触カードのユーザを他の非接触カードのユーザと区別するために一緒に使用され得る1つまたは複数の鍵を備え得る。いくつかの例では、顧客情報450は、顧客とその顧客に割り当てられたアカウントの両方を識別する情報を含み得、さらに、顧客のアカウントに関連付けられた非接触カードを識別し得る。いくつかの態様によれば、ユーザ名442は、1つまたは複数の顧客情報450および/または1つまたは複数の鍵の組み合わせから導出され得る。
【0057】
前述の例示的な実施形態のプロセッサおよびメモリ要素は、接触パッドを参照して説明されるが、本開示は、それに限定されない。これらの要素は、パッド420の外側に、またはパッド420から完全に分離して、または接触パッド420内に配置されたマイクロプロセッサ430およびメモリ335要素に加えてさらなる要素として実施され得ることが理解される。
【0058】
いくつかの例では、非接触カード400は、非接触カード400内で、接触パッド420の処理回路455の周りに配置された1つまたは複数のアンテナ425を備え得る。例えば、1つまたは複数のアンテナは、処理回路と一体であり得、1つまたは複数のアンテナは、外部ブースタコイルと共に使用され得る。他の例として、1つまたは複数のアンテナは、接触パッド420および処理回路の外部にあり得る。
【0059】
上で説明したように、非接触カード400は、Javaカードのような、プログラムコード、処理能力、およびメモリを備えるスマートカードまたは他のデバイス上で動作可能なソフトウェアプラットフォーム上に構築され得る。アプレットを非接触カードに追加して、様々なモバイルアプリケーションベースのユースケースで多要素認証(MFA)用のワンタイムパスワード(OTP)を生成し得る。アプレットは、モバイル近距離無線通信(NFC)リーダなどのリーダからの近距離無線データ交換(NDEF)要求などの1つまたは複数の要求に応答し、NDEFテキストタグとして符号化された暗号的に安全なOTPを備えるNDEFメッセージを生成するように構成され得る。したがって、非接触カードの機能は、以下に説明するように、近距離無線データ交換通信の一部として一意のワンタイムパスワードを提供するように適合されている。
【0060】
図5は、例示的な実施形態に係る例示的なNDEFショートレコードレイアウト(SR=1)500を示している。NDEFメッセージは、クライアントデバイス110が非接触カード105と通信するための標準化された方法を提供する。いくつかの例では、NDEFメッセージは、1つまたは複数のレコードを備え得る。NDEFレコード500は、メッセージ開始(MB)フラグ503a、メッセージ終了(ME)フラグ503b、チャンクフラグ(CF)503c、ショートレコード(SR)フラグ503d、ID長(IL)フラグ503e、およびタイプ名フォーマット(TNF)フィールド503fを含む、レコードの残りを解釈する方法を定義する複数のフラグを含むヘッダ502を含む。MB503aおよびMEフラグ503bは、メッセージのそれぞれの最初と最後のレコードを示すように設定され得る。CF503cおよびILフラグ503eは、データが「チャンク」(メッセージ内の複数のレコードに分散されたデータ)であるかどうか、またはIDタイプ長フィールド508が関連するかどうかをそれぞれ含む、レコードに関する情報を提供する。メッセージにレコードが1つしかない場合は、SRフラグ503dを設定し得る。
【0061】
TNFフィールド503fは、NFCプロトコルによって定義されるように、フィールドが含むコンテンツのタイプを識別する。これらのタイプは、空のよく知られた(NFCフォーラムのレコードタイプ定義(RTD)で定義されたデータ)、多目的インターネットメール拡張(MIME)[RFC2046で定義]、絶対ユニフォームリソース識別子[RFC3986で定義]、外部(ユーザ定義)、不明、変更なし[チャンクの場合]、予約済みを含む。
【0062】
NFCレコードの他のフィールドは、タイプ長504、ペイロード長506、ID長508、タイプ510、ID512、およびペイロード514を含む。タイプ長フィールド504は、ペイロードで見出されるデータの正確な種類を指定する。ペイロード長506は、ペイロードの長さをバイト単位で含む。レコードは、最大4,294,967,295バイト(または2^32-1バイト)のデータを含み得る。ID長508は、IDフィールドの長さをバイト単位で含む。タイプ510は、ペイロードに含まれるデータのタイプを識別する。例えば、認証の目的で、タイプ510は、ペイロードがユーザ名/パスワードのペアを含むことを示し得る。IDフィールド512は、外部アプリケーションがNDEFレコード内で伝送されるペイロード全体を識別するための手段を提供する。ペイロード514は、メッセージを備える。
【0063】
いくつかの例では、安全なチャネルプロトコルの下でSTORE DATA(E2)を実施することにより、データを最初に非接触カードに格納され得る。このデータは、カードに一意の個人ユーザID(pUID)またはその他のユーザ名、および1つまたは複数の初期鍵、セッション鍵を含む暗号化処理データ、データ暗号化鍵、乱数、および以下でより詳細に説明するその他の値を含み得る。他の実施形態では、非接触カードをクライアントに届ける前に、pUIDまたは他のユーザ名を非接触カードに事前にロードし得る。いくつかの実施形態では、ユーザ名は、サービスプロバイダによって自動的に生成され得る。
【0064】
いくつかの実施形態では、一意のユーザ名は、各サービスプロバイダアプレット/サービスに提供され得る。いくつかの実施形態では、ユーザ名は、サービスプロバイダによって自動的に生成され、クライアントには知られ得ない。他の実施形態では、ユーザ名は、サービスプロバイダアプリケーションを用いた登録プロセスの一部としてクライアントによって選択され、登録プロセスの一部として非接触カードにダウンロードされ得る。したがって、ユーザ名は、アプレットまたは非接触カードのメモリの他の部分に格納された、自動生成または事前定義されたデータの任意の組み合わせを備え、pUIDを含むか、個別の値であり、および/または非接触カードのハッシュ値または鍵を使用して暗号化または符号化され得る。
【0065】
例えば、クライアントと認証サーバのそれぞれは、ユーザ名を符号化するためのSHA-2アルゴリズムを含むがこれに限定されない、1つまたは複数のハッシュアルゴリズムを使用し得る。あるいは、ユーザ名および/または暗号文ペイロードを暗号化/復号するために使用され得る暗号化アルゴリズムは、対称暗号化アルゴリズム、HMACアルゴリズム、およびCMACアルゴリズムのうちの少なくとも1つを含むグループから選択され得る。ユーザ名および/または暗号化を暗号化するために使用され得る対称アルゴリズムの非限定的な例は、3DES(トリプルデータ暗号化アルゴリズム)または先進的暗号化標準(AES)128などの対称暗号化アルゴリズム、HMAC-SHA-256などの対称ハッシュベースメッセージ認証(HMAC)アルゴリズム、AES-CMACなどの対称暗号ベースメッセージ認証コード(CMAC)アルゴリズムを含み得る。暗号化の多くの形態が当業者に知られており、本開示は、本明細書で具体的に特定されたものに限定されないことが理解される。
【0066】
初期化に続いて、非接触カード、クライアントデバイスアプレット、および/または認証サーバの両方が、本明細書で説明するユーザ名/動的パスワード認証プロセスを介してカード所有者を一意に識別するための情報を格納する。
【0067】
図6は、非接触カード610が第1の要素認証中に使用され得る情報を格納し得る通信システム600を示している。図4に関して説明されたように、各非接触カードは、識別子、鍵、乱数などのような1つまたは複数の一意に識別する属性を含む顧客情報618のためのマイクロプロセッサ612およびメモリ616を含み得る。一態様では、メモリは、本明細書で説明される認証プロセスを制御するためにマイクロプロセッサ612によって実行されるときに動作可能な認証アプレット617をさらに含む。上記のように、ユーザ名618は、アプレットの一部として、および/または顧客情報618の一部として格納され得る。さらに、各カード610は、1つまたは複数のカウンタ614、およびインターフェース615を含み得る。一実施形態では、インターフェースは、NFCまたは他の通信プロトコルを動作する。
【0068】
クライアントデバイス620は、非接触カードと通信するための非接触カードインターフェース625と、デバイス620が上記のような様々な通信プロトコルを使用してサービスプロバイダと通信することを可能にする1つまたは複数の他のネットワークインターフェース(図示せず)とを含む。クライアントデバイスは、サービスプロバイダアプリケーションとクライアントデバイス620のユーザとの間の通信を可能にする、キーボードまたはタッチスクリーンディスプレイのうちの1つまたは複数を含み得るユーザインターフェース626をさらに含み得る。クライアントデバイス620はさらに、プロセッサ624と、プロセッサによって実行されたときにクライアントデバイス620の動作を制御する情報およびプログラムコードを格納するメモリ622とを含み、例えば、サービスプロバイダアプリケーションへのアクセスおよび使用を容易にするためにサービスプロバイダによってクライアントに提供され得るクライアント側アプリケーション623を含む。一実施形態では、クライアント側アプリケーション623は、非接触カード610からのユーザ名および動的パスワードを含む認証情報をサービスプロバイダによって提供される1つまたは複数のサービスに通信するように構成されたプログラムコードを含む。クライアント側アプリケーション623は、ユーザインターフェース626に表示されるサービスプロバイダ(SP)アプリケーションインターフェース627で受信された入力を介して制御され得る。例えば、ユーザは、SPアプリケーションインターフェース627の一部として提供されるアイコン、リンク、または他のメカニズムを選択して、クライアント側アプリケーションを起動し、SPアプリケーションサービスにアクセスし得、起動の一部は、暗号文交換を使用してクライアントを検証することを含む。
【0069】
例示的な実施形態では、暗号文交換は、プロセッサおよびメモリを有する送信デバイス、マスター鍵を含む送信デバイスのメモリ、送信データ、およびカウンタ値を含む。送信デバイスは、プロセッサおよびメモリを有する受信デバイスと通信し、受信デバイスのメモリは、マスター鍵を含む。送信デバイスは、マスター鍵と1つまたは複数の暗号化アルゴリズムを使用して多様化された鍵を生成し、送信デバイスのメモリに多様化された鍵を格納し、1つまたは複数の暗号化アルゴリズムおよび多様化された鍵を使用してカウンタ値を暗号化して暗号化されたカウンタ値を生成し、1つまたは複数の暗号化アルゴリズムおよび多様化された鍵を使用して送信データを暗号化して暗号化された送信データを生成し、暗号化されたカウンタ値および暗号化された送信データを暗号文として受信デバイスに送信するように構成され得る。受信デバイスは、格納されたマスター鍵および格納されたカウンタ値に基づいて多様化された鍵を生成し、受信デバイスのメモリに多様化された鍵を格納し、1つまたは複数の復号アルゴリズムおよび多様化された鍵を使用して、暗号化された暗号文(暗号化されたカウンタおよび暗号化された送信データを備える)を復号するように構成され得る。受信デバイスは、復号されたカウンタと格納されたカウンタとの間の一致に応答して、送信デバイスを認証し得る。次に、後続の認証のために送信デバイスと受信デバイスのそれぞれでカウンタをインクリメントし得、それによって、送信デバイス/受信デバイスのトランザクションに暗号文ベースの動的認証メカニズムを提供し得る。
【0070】
図1に関して述べたように、クライアントデバイス620は、サービスプロバイダ605の様々なサービスに接続され、アプリケーションサーバ606によって管理され得る。図示の実施形態では、認証サーバ605およびアプリケーションサーバ606は、別個のコンポーネントとして示されているが、アプリケーションサーバは、認証サーバに含まれると説明されているすべての機能を含み得ることを理解されたい。
【0071】
アプリケーションサーバ606は、インターフェース607およびアプリケーションプログラムコード608を含むように示されている。インターフェースは、ネットワークのプロトコルを使用してネットワーク630を介して他のネットワークメンバと通信するようにプログラムされたネットワークインターフェース、およびアプリケーションサーバ606の非一時的ストレージに格納され、本明細書に記載の機能を実行するために中央処理装置(CPU609)によって実行されたときに動作可能であるアプリケーションプログラムコード608を含み得る。
【0072】
認証サーバ650は、ネットワーク630および中央処理装置(CPU)659を介してネットワークメンバと通信するためのネットワークインターフェース653を含むように示されている。認証サーバは、サービスプロバイダのクライアントに関連する情報を含むクライアント情報テーブル652を格納するための非一時的な記憶媒体を含み得る。このような情報は、クライアントのユーザ名、クライアントの個人識別子、およびクライアントの暗号文の鍵およびカウンタを含み得るが、これらに限定されない。一実施形態では、認証サーバは、非接触カード610と併せて認証を実行するために以下に説明するように使用され得るクライアントカウンタ値テーブル656をさらに含む。認証ユニット654は、表652および656からの情報を使用するクライアントについて、図7および図8を参照して説明される様々な認証プロセスを実行するためのハードウェアおよびソフトウェアを含む。
【0073】
図7は、暗号文交換を使用してアプリケーションサービスへのパスワードレスログインを可能にするために実行され得るセットアッププロセス700の様々なステップを示している。ステップ710で、クライアントの非接触カードは、アプリケーションサービスに登録される。登録は、オンライン、オフライン、またはそれらの組み合わせで実行され得る。登録の一部として、クライアントのユーザ名は、アプリケーションサーバと認証サーバの一方または両方のクライアント情報データベースに格納され得る。いくつかの実施形態では、クライアントのユーザ名は、サービスプロバイダによって自動的に生成され、クライアントには知らされず、サービスプロバイダのクライアント情報テーブルと、非接触カードにダウンロードされるアプレットの両方に、非接触カードがクライアントに届けられる前または後にロードされ得る。代替の実施形態では、クライアントは、ユーザ名を知らされ、および/または非接触カードに格納するためにユーザ名を自己選択し得る。自己選択したユーザ名は、上記のNFCインターフェースを使用して非接触カードに書き込まれ得る。このような自己選択は、カードをアプリケーションサービスに登録するとき、または非接触カードをクライアントに発行するプロセスの一部として代わりに発生し得、クライアントへ届ける時に非接触カードに自己選択されたパスワードが埋め込まれる。
【0074】
クライアントがユーザ名を自己選択または認識できるようにすることには利点があり得るが、ユーザ名と動的パスワード情報は、カード、NFC対応デバイス、およびアプリケーションサーバの間で、クライアントの介在なしに電子的に通信されるため、ユーザ名の知識は、本明細書で説明するパスワードレス認証プロトコルの要件ではない。このような取り決めにより、ユーザ名/パスワード認証方式の悪意のある盗聴者に関連するリスクが軽減される。
【0075】
ステップ720で、非接触カードは、クライアントにバインドされる。特に、非接触カードのユーザ名、pUIDなどは、サービスプロバイダのクライアントのデジタル身元の一部として格納される。デジタル身元は、例えば、シングルサインオン(SSO)情報、プロファイル参照識別子、またはその他のクライアント識別子を含み得る。
【0076】
ステップ730で、カードがクライアントに登録されると、クライアントとカードの組み合わせは、1つまたは複数のクライアントデバイスにバインドされ得る。例えば、デジタル身元は、ユーザデバイスに関連付けられた一意の識別子(例えば、電話番号、インターネットプロトコル(IP)アドレス、ネットワーク識別子、モバイル機器識別子(MEID)、国際的な加入者識別番号(IMSI)、シリアル番号、メディアアクセス制御(MAC)アドレスなど)などのクライアントデバイス情報、画像をキャプチャするために使用されたアプリケーションに関連するアプリケーション情報(例えば、アプリケーションのインスタンスの識別子、アプリケーションのアプリケーションバージョン、セッション識別子など)なども含み得る。
【0077】
クライアント、カード、およびクライアントデバイス間の三角法が確立されると、ステップ740で、非接触カードを使用して、任意のクライアントデバイス上で実行されるクライアントアプリケーションの多要素の安全なパスワードレスログインをサポートし得る。より一般的には、暗号化されたユーザ名と動的パスワードを含む暗号文交換を使用して、クライアントアプリケーションアクセスに多要素の安全なパスワードレスログインを提供し得る。
【0078】
例として、図8は、非接触カードとクライアントデバイスとの間の暗号文交換の一部として提供されるユーザ名/動的パスワードのペアを使用する安全なパスワードレスログインのためのシステムおよび方法の例示的な実施形態を説明するために提供されるデータフロー図800である。この例では、アプリケーションサーバによってサポートされているアプリケーションに関連付けられたウェブサイトでアクセスオプションを選択し、ウェブブラウザアプリケーションを介してクライアントにアクセスできるようにすることで、クライアントからアプリケーション起動要求を受信する。
【0079】
図8の実施形態では、クライアント、非接触カード、およびクライアントデバイスは、図7に関して説明したのと同様の方法を使用してアプリケーションに事前に登録されており、アプリケーションへのアクセスを求めるウェブデバイス810のユーザは、ウェブデバイス810に表示されるアプリケーションログインページで、非接触カード認証オプションを選択することによって、この関連付けを利用する。結果として、非接触カード認証要求は、ステップ801で、アプリケーションサーバ820に転送される。
【0080】
アプリケーションサーバは、リクエスト内に含まれる情報を使用して、例えば、ウェブデバイスのIPまたはMACアドレス、またはアプリケーションアクセス要求の他のデバイス識別属性に基づき、例えば、アプリケーションへのクライアントの登録時など、アプリケーションへの以前のアクセス中にウェブデバイス810上のブラウザによって格納されたクッキーデータを含むがこれに限らないアクセス要求をソーシングするクライアントを識別し得る。
【0081】
起動要求を受信すると、アプリケーションサーバ820は、例えば、非接触カード暗号文交換をサポートする認証ハードウェアを含むクライアントの1つまたは複数のデバイス(クライアントNFC対応デバイス830など)の識別を含む、クライアントに関連付けられたクライアントデバイス情報を取得し得る(例えば、クライアントデバイス620内に示されるコンポーネントを含むがこれに限定されない)。
【0082】
いくつかの実施形態では、ウェブデバイス810およびクライアントNFC対応デバイス830は、同じデバイスであり得る。他の実施形態では、ウェブデバイス810およびクライアントNFC対応デバイス830は、異なるデバイスを備え得る。例えば、一実施形態では、ウェブデバイス810は、ラップトップデバイスを備え得、クライアントNFC対応デバイス830は、ラップトップデバイスおよび携帯電話の両方が以前にクライアントにバインドされている携帯電話を備え得る。いずれの実施形態でも、NFC対応デバイス830は、非接触カード840と協調して動作して、ウェブデバイス810によるウェブベースのアクセスを認証し得る。
【0083】
ステップ802で、アクセス要求に応答して、アプリケーションサーバ820は、クライアントNFC対応デバイス830との通信リンクを確立し、通信リンクを介してクライアントNFC対応デバイスに通知を転送する。通知は、クライアントに登録されたアプリケーションのアクセス要求が受信されていることを視覚的または聴覚的に示し得る。通知は、クライアントによるアクションのプロンプトを追加で含み得る。プロンプトには様々な形式があり、クライアントがアクセスを承認できるようにする1つまたは複数のメカニズムが含まれ得る。
【0084】
例として、図9は、本明細書に開示される態様に従って構成されたウェブデバイス910およびモバイルデバイス920の例示的なウェブページデータおよび制御メカニズムを示している。ウェブデバイス910は、アプリケーションサービスウェブサイトの公開されているメインウェブページ915を表示するように示されている。一態様によれば、ユーザは、サインインリンク925の選択時にメニュープルダウンオプション940として表示され得るいくつかのメカニズムを使用して、アプリケーションサービスにサインインし得る。クライアントは、一般に、個人の好みに応じてウェブブラウザのセキュリティ設定を使用してサインインオプションタイプの可用性および選択をカスタマイズし得、本発明は、サインインオプションの特定の組み合わせに限定されないことが理解され得る。むしろ、非接触カードまたは他のメカニズムを使用してユーザ名と動的パスワードのペアを提供するパスワードレス認証システムが本明細書に含まれる。
【0085】
したがって、図9の実施形態では、クライアントは、非接触カードのサインインオプション905を選択して、アプリケーションの起動を開始する。ステップ802に関して説明したように、非接触カードのサインインオプション905の選択に応答して、サービスプロバイダアプリケーションは、ウェブクッキー(すなわち、クライアントによるアプリケーションへの以前のアクセス中にサービスプロバイダアプリケーションによってクライアントデバイスのウェブブラウザに格納された情報)、IPアドレス、MACアドレス、またはウェブデバイスの他の識別態様のうちの1つまたは複数を使用して要求を送信したクライアントを識別する。アプリケーションサービスは、クライアントの承認デバイス、すなわち、クライアントからの認証情報を受け入れるように構成されたクライアントのデバイスを識別する。この承認デバイスは、例えば、暗号化されたユーザ名および動的パスワードを備える暗号文交換を使用して認証を可能にするNFC機能を有する携帯電話、タブレットまたは他のデバイスを備え得る。
【0086】
アプリケーションアクセス要求を承認するように構成されたクライアントデバイスのグループは、要求された承認のタイプおよび特定のクライアントデバイスの機能に応じて変化し得ることを理解できる。例えば、顔のスキャンを使用した認証では、画像処理機能を備えた承認デバイスを利用する。指紋のスキャンを使用した認証では、指紋スキャン機能を有する承認デバイスを利用する。非接触カード認証を使用した認証では、NFC通信機能を備えた承認デバイスを利用する。
【0087】
図9の例では、携帯電話920は、承認クライアントデバイスとして識別され、サービスプロバイダアプリケーションは、クライアントに登録されたサービスプロバイダアプリケーションへのアクセスが試みられたという通知930を承認デバイスに転送する。通知930は、クライアントの電話に表示されるポップアップアラートとして表示される。通知はまた、クライアントによるさらなるアクションを要求するプロンプト950を含み得る。例えば、プロンプト950は、クライアントに「非接触カードをタップして承認する」ように指示する。リンク955の選択のみを要求する代替プロンプトは、サービスプロバイダアプリケーションにアクセスするための決定された認証レベルの閾値に応じて使用され得る。
【0088】
図8を参照すると、サービスプロバイダがステップ802で非接触カード認証を要求する場合、クライアントは、例えば、非接触カード840をデバイス830とNFC近接させることによって、非接触カード840をNFC対応デバイス830と係合させる。次に、図2に関して説明したように、非接触カード840およびデバイス830は、暗号文を交換し得、格納され、暗号化されたユーザ名および動的パスワードが、NFC対応デバイスに転送される。
【0089】
一態様によれば、前述のように、認証サーバ850は、各クライアントの少なくともユーザ名、マスター鍵情報、およびカウンタ情報を格納するように構成され得る。認証サーバ850は、暗号化されたユーザ名を復号し、復号されたユーザ名を、クライアントの身元を検証するためにクライアントに対応することが知られている格納されたユーザ名と比較し得る。認証サーバ850は、格納されたカウンタ値およびクライアントのマスター鍵を使用して生成された多様化された鍵を使用して暗号文をさらに復号し、暗号文からパスワードを抽出し得る。一態様によれば、パスワードは、カウンタを備えるか、またはカウンタに関連し得るため、クライアントとアプリケーションサーバとの間の暗号文交換ごとに動的に更新され得る。認証サーバ850は、暗号文から抽出されたパスワードを、クライアントがアプリケーション要求を承認または拒否するために格納された期待されるパスワードと比較する。ステップ805で、承認/拒否は、ウェブデバイス810との通信のためにクライアントデバイス830に転送される。
【0090】
一実施形態では、アクセス要求の承認/拒否の通信は、ウェブデバイス810によって確立されたアプリケーションセッションとクライアントNFC対応デバイス830との間でサービスプロバイダアプリケーションによって確立された専用の安全なチャネルを介してウェブデバイス810に提供され得る。したがって、NFC対応デバイス830によって受信された承認は、チャネルを介してブロードキャストされて、ウェブデバイスのアプリケーションセッションを自動的に更新して、アプリケーションを起動し得る。代替の実施形態では、ウェブデバイスによって確立されたアプリケーションセッションは、承認の通知のために、アプリケーションとNFC対応デバイスとの間に確立された通信リンクを監視し得る。ウェブデバイスは、サービスプロバイダアプリケーションを定期的にポーリングして、NFC対応デバイスから認証の通知を受信したかどうかを決定し得る。ステップ806で承認を受信すると、サービスプロバイダアプリケーションは、ステップ807でアプリケーションを起動することによって、ウェブデバイスへのアクセスを許可する。
【0091】
図10は、本明細書に開示されるパスワードレスログイン技術の間の経時的なウェブデバイス1010および携帯電話1020のディスプレイインターフェースで/によって提供される様々なディスプレイおよび制御の進化を示す時間図である。ウェブページ1010Aは、ウェブデバイス1010上で実行されているアプリケーションサービスの公開ログインページを示している。ディスプレイ1020Aは、初期状態で静止している携帯電話1020を示している。図8に関して説明したように、クライアントがサービスプロバイダアプリケーションにアクセスしようとすると、アクセス要求は、ステップ1004で識別された携帯電話デバイス1020に転送される認証要求に変換され、通知1025が携帯電話ディスプレイ1020Bとして表示される。上記のように、通知は、リンク選択1026などの入力メカニズムを使用して要求を承認するようにクライアントに求めるなどのプロンプトを含み得る。いくつかの実施形態では、アプリケーションサービスがクライアントデバイス1020/非接触カード/認証サーバと通信している間、ステップ1002で、ウェブデバイス1010のディスプレイ1010Bは、アプリケーションがクライアントの認証を待っているという通知を含む。
【0092】
いくつかの実施形態では、所有を確立する最初の認証に続いて(すなわち、クライアントは既知のモバイルデバイスを所有する)、アプリケーションサービスは、身元および/または知識を確立するものを含む、認証の代替形式をさらに促し得る。このような構成により、パスワードレスログインで少なくとも二重要素認証が可能になる。このような形式の認証は、顔のスキャン、指紋のスキャン、クエリ/応答のチャレンジ、暗号文のユーザ名/動的なパスワードの交換などを含むが、これらに限定されない。そのような実施形態では、ステップ1006で、携帯電話のディスプレイ1020Cは、顔のスキャン、生体認証または非接触カード暗号文交換などの第2の要素認証を要求する追加のプロンプト1027を含み得る。認証の第2の要素の受信および検証に続いて、ステップ1008で、承認が条件付きでアプリケーションサービスに転送され、ステップ1009で、アプリケーションサービスウェブサイトのディスプレイ1010Cが更新されて、クライアントによるアクセスを可能にする。
【0093】
図11Aおよび図11Bは、本明細書に開示されるパスワードレスログイン技術を実施するように構成される、時間の経過に伴う携帯電話1120のディスプレイインターフェースで/によって提供される様々なディスプレイおよび制御の進化を示す時間図である。ウェブページ1110は、ウェブデバイス1120上で実行されているアプリケーションサービスの公開ログインページを示している。クライアントが携帯電話デバイスからサービスプロバイダアプリケーションにアクセスしようとすると、「非接触カードログイン」オプション1105の選択オプションを含む、第1の要素認証メニュー1125がユーザに表示され得る。ユーザは、非接触カード1115をモバイルデバイスのNFCリーダにタップして、第1の要素認証を満たし得る。上記のプロセスを使用した認証は、携帯電話1120が認証サーバと暗号文認証情報を交換することで進行する。
【0094】
非接触カード認証が成功した後、図11Bに示されるように、アプリケーションサービスへのアクセスを許可する前に、第2の要素認証を要求し得る。図11Bでは、顔のスキャン、音声認識、眼のスキャンなどの他の技術が代用され得るが、第2の要素認証は、生体認証拇印認証を含むように示されている。いくつかの実施形態では、ユーザは、使用する第2の要素認証の形式を選択し得る。他の実施形態では、アプリケーションは、第2の要素認証の形式を選択し得る。いずれにせよ、生体認証が成功すると、アプリケーションサービスへのクライアントアクセスが有効になる。
【0095】
したがって、多要素認証の目的でユーザ名と動的パスワードを含む暗号文交換を使用する、安全でパスワードレス認証のためのシステムと方法が示され、説明された。このような構成は、予測不可能で動的な符号化されたユーザ名パスワードのペアと、アプリケーションアクセスの前に多要素認証を提供するプロトコルを使用して、アプリケーションのセキュリティを有利に強化する。
【0096】
この出願で使用される「システム」、「コンポーネント」、および「ユニット」という用語は、ハードウェア、ハードウェアとソフトウェアの組み合わせ、ソフトウェア、または実行中のソフトウェアのいずれかであるコンピュータ関連エンティティを指すことを意図しており、その例は、本明細書に記載されている。例えば、コンポーネントは、プロセッサ上で実行されるプロセス、プロセッサ、ハードディスクドライブ、複数のストレージドライブ、非一時的なコンピュータ可読媒体(光学的および/または磁気的記憶媒体のいずれかの)、オブジェクト、実行可能なもの、実行スレッド、プログラム、および/またはコンピュータであり得るが、これらに限定されない。実例として、サーバ上で実行されているアプリケーションとサーバの両方は、コンポーネントであり得る。1つまたは複数のコンポーネントは、プロセスおよび/または実行スレッド内に配置され得、コンポーネントは、1つのコンピュータにローカライズされ、および/または2つ以上のコンピュータに分散され得る。
【0097】
さらに、コンポーネントは、動作を調整するために、様々なタイプの通信媒体によって互いに通信可能に結合され得る。調整には、一方向または双方向の情報交換が含まれ得る。例えば、コンポーネントは、通信媒体を介して通信される信号の形で情報を通信し得る。この情報は、様々な信号線に割り当てられた信号として実施され得る。このような割り当てでは、各メッセージは、信号である。しかしながら、さらなる実施形態は、代替的に、データメッセージを使用し得る。このようなデータメッセージは、様々な接続を介して送信され得る。例示的な接続には、パラレルインターフェース、シリアルインターフェース、およびバスインターフェースが含まれる。
【0098】
いくつかの実施形態は、それらの派生物と共に「一実施形態」または「実施形態」という表現を使用して説明され得る。これらの用語は、実施形態に関連して説明される特定の特徴、構造、または特性が少なくとも1つの実施形態に含まれることを意味する。本明細書の様々な場所における「一実施形態では」という句の出現は、必ずしもすべてが同じ実施形態を指すとは限らない。さらに、特に断りのない限り、上記の特徴は、任意の組み合わせで一緒に使用できると認識されている。したがって、別々に議論された任意の特徴は、特徴が互いに互換性がないことに留意されない限り、互いに組み合わせて使用され得る。
【0099】
本明細書で使用される表記法および命名法を一般的に参照して、本明細書の詳細な説明は、コンピュータまたはコンピュータのネットワーク上で実行されるプログラム手順として実施され得る機能ブロックまたはユニットに関して提示され得る。これらの手順の説明および表現は、当業者によって、それらの作業の実体を当業者に最も効果的に伝えるために使用される。
【0100】
手順は、本明細書にあり、一般に、望ましい結果につながる自己矛盾のない一連の操作であると考えられている。これらの操作は、物理量の物理的な操作を必要とする操作である。通常、必ずしもそうとは限らないが、これらの量は、格納、転送、結合、比較、およびその他の方法で操作できる電気信号、磁気信号、または光信号の形をとる。主に一般的な使用法の理由から、これらの信号をビット、値、要素、記号、文字、用語、数値などと呼ぶと便利な場合がある。しかしながら、これらおよび類似の用語は全て、適切な物理量に関連付けられており、これらの量に適用される便利なラベルにすぎないことに留意されたい。
【0101】
さらに、実行される操作は、加算または比較などの用語で参照されることが多く、これらは一般に、人間のオペレータによって実行される知的な演算に関連付けられている。1つまたは複数の実施形態の一部を形成する、本明細書に記載の演算のいずれにおいても、人間のオペレータのそのような能力は必要ではないか、またはほとんどの場合望ましくない。むしろ、演算は、機械演算である。様々な実施形態の演算を実行するための有用な機械には、汎用デジタルコンピュータまたは同様のデバイスが含まれる。
【0102】
いくつかの実施形態は、それらの派生物と共に「結合された」および「接続された」という表現を使用して説明され得る。これらの用語は、必ずしも相互の同義語として意図されているわけではない。例えば、いくつかの実施形態は、2つ以上の要素が互いに直接物理的または電気的に接触していることを示すために、「接続された」および/または「結合された」という用語を使用して説明され得る。しかしながら、「結合された」という用語はまた、2つ以上の要素が互いに直接接触していないが、それでも互いに協力または相互作用していることを意味し得る。
【0103】
読者が技術的開示の性質を迅速に確認できるように、開示の要約が提供されていることが強調されている。請求項の範囲または意味を解釈または制限するために使用されないことを理解した上で提出される。さらに、前述の詳細な説明では、開示を合理化するために、様々な特徴が単一の実施形態にまとめられている。この開示方法は、請求された実施形態が各請求項に明示的に記載されているよりも多くの特徴を必要とするという意図を反映していると解釈されるべきではない。むしろ、以下の請求の範囲が反映するように、本発明の主題は、単一の開示された実施形態の全ての特徴よりも少ない特徴にある。したがって、以下の請求の範囲は、詳細な説明に組み込まれ、各請求項は、別個の実施形態として独立している。添付の請求の範囲において、「含む」および「その中」という用語は、それぞれ「備える」および「ここで」というそれぞれの用語の平易な英語の均等物として使用される。さらに、「第1」、「第2」、「第3」などの用語は、単にラベルとして使用され、それらの対象に数値要件を課すことを意図するものではない。
【0104】
上で説明されたことは、開示されたアーキテクチャの例を含む。もちろん、コンポーネントおよび/または方法論の考えられる全ての組み合わせを説明することは不可能であるが、当業者は、さらに多くの組み合わせおよび順列が可能であることを認識し得る。したがって、新規のアーキテクチャは、添付の請求の範囲の精神および範囲内にあるそのような全ての変更、修正、および変形を包含することを意図している。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11A
図11B
【手続補正書】
【提出日】2023-09-20
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
クライアントによりアプリケーションにアクセスする方法であって、
前記方法は、
前記アプリケーションへのアクセスの要求をアプリケーションサーバに転送することであって、前記要求が前記クライアントの第1のデバイスから第1の通信チャネルを介して転送される、ことと、
前記アプリケーションへのアクセス要求に応答して、前記クライアントに関連する第2のデバイスが第2の通信チャネルを介して、前記クライアントに関連する非接触カードからの認証暗号文に対する認証サーバからの認証要求を受信することと、
前記第2のデバイスが、前記クライアントに関連付けられた非接触カードから前記認証暗号文を取得することとを含み、
前記認証暗号文はユーザ名と動的パスワードとを含み、少なくとも前記ユーザ名はハッシュアルゴリズムを使用して符号化され、前記動的パスワードは、前記クライアントのために保持され、前記非接触カードから前記ユーザ名が取得された回数に関連するカウンタ値に関連し、
前記方法は、
前記第2のデバイスが、前記認証暗号文を前記認証サーバに転送することと、
前記第1のデバイスが、前記第1の通信チャネルを介して、前記認証サーバによる認証暗号文の検証に応答して、前記アプリケーションサーバから前記アプリケーションにアクセスするためのリンクを受信することと、
を含む、方法。
【請求項2】
前記第1のデバイスと前記第2のデバイスは異なるデバイスを備える、
請求項1に記載の方法。
【請求項3】
前記第1のデバイスおよび前記第2のデバイスが、前記クライアントに登録されたデバイスのリストで識別され、
前記認証サーバが、前記クライアントに登録されたデバイスのリストに基づいて、前記第1のデバイスの認証要求を前記第2のデバイスに転送する、
請求項1に記載の方法。
【請求項4】
前記リンクは、前記認証暗号文の検証に応答して生成されるウェブセッションへのものである、
請求項2に記載の方法。
【請求項5】
前記第1のデバイスと前記第2のデバイスを前記クライアントに登録すること、
をさらに含む、
請求項1記載の方法。
【請求項6】
前記ユーザ名は、前記カウンタ値から得られる多様化された鍵を使用して符号化される、
請求項1に記載の方法。
【請求項7】
前記認証暗号文は、前記多様化された鍵と、前記非接触カードに関連付けられかつ前記非接触カードに保存された共有秘密とを用いて符号化される、
請求項6に記載の方法。
【請求項8】
前記ハッシュアルゴリズムは、SHA-2ハッシュアルゴリズム、トリプルデータ暗号化アルゴリズム、対称ハッシュベースメッセージ認証(HMAC)アルゴリズム、対称暗号ベースメッセージ認証コード(CMAC)アルゴリズム、またはそれらの組み合わせを含む、
請求項1に記載の方法。
【請求項9】
クライアントによるアプリケーションへのアクセスを制御するシステムであって、
前記システムは、
前記クライアントに関連付けられた第1のデバイスであって、第1のプロセッサを備える前記第1のデバイスと、
前記アプリケーションへのアクセス要求を転送することを含み、アプリケーションサーバと通信するように構成された第1のユーザーインターフェースと、
前記第1のプロセッサによって実行されたときに、前記アプリケーションへのアクセス要求を前記アプリケーションサーバに転送し、かつ、前記アクセス要求の検証後に前記アプリケーションサーバによって提供されるリンクを使用してアプリケーションを起動することを含み、前記アプリケーションサーバとの通信を制御するように動作可能な第1のプログラムコードを記憶した第1の非一時的記憶媒体と、
前記クライアントに関連付けられた第2のデバイスであって、第2のプロセッサを備える前記第2のデバイスと、
前記アプリケーションサーバおよび認証サーバと通信するように構成された第2のユーザーインターフェースと、
前記第2のプロセッサによって実行されるときに、前記アプリケーションサーバとの通信および前記認証サーバとの通信を制御するために動作可能な第2のプログラムコードを記憶した第2の非一時的記憶媒体とを備え、
前記第2のプログラムコードは、
前記第1のデバイスによる前記アプリケーションへのアクセス要求に応答して、前記アプリケーションサーバから前記クライアントの認証要求を受信し、
前記クライアントに関連付けられた非接触カードから認証暗号文を取得するように動作可能であり、
前記認証暗号文はユーザ名と動的パスワードを含み、少なくともユーザ名はハッシュアルゴリズムを使用して認証暗号文として符号化され、前記動的パスワードは、前記クライアントのために保持され、前記ユーザ名が前記非接触カードから取得された回数に応じてインクリメントされるカウンタ値に関連し、
前記第2のプログラムコードは、
前記認証暗号文を前記認証サーバに転送し、前記認証サーバが前記第1のデバイスによるアプリケーションへのアクセス要求を検証できるように動作可能である、システム。
【請求項10】
前記第1のデバイスと前記第2のデバイスは異なるデバイスを備える、
請求項9に記載のシステム。
【請求項11】
前記第1のデバイスおよび前記第2のデバイスは、前記クライアントに登録されたデバイスのリスト上で識別され、
前記認証サーバは、前記クライアントに登録されたデバイスのリストから前記第1のデバイスを認証するために前記第2のデバイスを選択する、
請求項9に記載のシステム。
【請求項12】
前記ユーザ名は、前記カウンタ値から得られる多様化された鍵を使用して符号化される、
請求項9に記載のシステム。
【請求項13】
前記多様化された鍵は、前記非接触カードによって保存され、前記クライアントに関連付けられたマスター鍵とカウンタ値にハッシュアルゴリズムを適用することによって生成される、
請求項12に記載のシステム。
【請求項14】
前記認証暗号文は前記非接触カードに関連付けられ、前記非接触カードに格納された共有秘密を使用して符号化される、
請求項9に記載のシステム。
【請求項15】
前記ハッシュアルゴリズムは、SHA-2ハッシュアルゴリズム、トリプルデータ暗号化アルゴリズム、対称ハッシュベースメッセージ認証(HMAC)アルゴリズム、対称暗号ベースメッセージ認証コード(CMAC)アルゴリズム、またはそれらの組み合わせを含む、
請求項9に記載のシステム。
【請求項16】
前記第2のプログラムコードは、前記クライアントに前記非接触カードを前記第2のデバイスに係合させるよう促すようにさらに構成される、
請求項9に記載のシステム。
【請求項17】
前記第2のプログラムコードはさらに、前記非接触カードに格納された暗号文生成アプレットに暗号文要求を発行することにより、前記非接触カードから認証暗号文を取得するように動作可能である、
請求項9に記載のシステム。
【請求項18】
前記アプリケーションサーバは、異なる通信チャネルを介して前記第1のデバイスおよび前記第2のデバイスと通信する、
請求項9に記載のシステム。
【請求項19】
クライアントによりアプリケーションにアクセスする方法であって、
前記方法は、
前記アプリケーションにアクセスするための要求をアプリケーションサーバに転送することであって、前記要求が前記クライアントの第1のデバイスから第1の通信チャネルを介して転送される、ことと、
前記アプリケーションへのアクセス要求に応答して、前記クライアントに関連する第2のデバイスが第2の通信チャネルを介して、前記クライアントに関連する非接触カードからの認証暗号文に対する認証サーバからの認証要求を受信することと、
前記第2のデバイスが、前記クライアントに関連付けられた非接触カードから認証暗号文を取得することであって、前記認証暗号文はユーザ名と動的パスワードを含み、少なくとも前記ユーザ名が多様化された鍵を使用して符号化され、前記動的パスワードがカウンタ値に基づき、前記非接触カードから前記ユーザ名が取得された回数に関連する、ことと、
前記第2のデバイスが、前記第2の通信チャネルを介して認証暗号文を認証サーバに転送することと、
前記第1のデバイスが、前記認証サーバによる認証暗号文の検証に応答して、前記アプリケーションサーバによってアプリケーションのために起動されたウェブセッションへのリンクを受信することと、
を含む方法。
【請求項20】
前記認証暗号文は共有秘密をさらに含み、前記多様化された鍵は、前記カウンタ値と、前記非接触カードに格納されたマスター鍵を、ハッシュアルゴリズムを使用して符号化することによって生成される、
請求項19に記載の方法。
【外国語明細書】