(57)【要約】【課題】認証を実行する。【解決手段】第１アプリケーションによって第２ユーザインタフェースをレンダリングさせ、第２ユーザインタフェースはワンタイムパスワードで事前入力された第１フォームフィールド及びユーザ特定セキュリティクレデンシャルを受信するように構成された第２フォームフィールドを含み、第１認証サービスにユーザ特定セキュリティクレデンシャルを提出し、直接的に第１認証サービスにではなく、第２認証サービスにワンタイムパスワードを提出し、第２認証サービスは第１認証サービスのプロキシとして動作し、第１認証サービスは第２認証サービスから受信したワンタイムパスワード及び少なくとも１つのコンピューティングデバイスから受信したユーザ特定セキュリティクレデンシャルを使用して認証を実行するように構成されている。【選択図】図２Ａ
2020024764.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも１つのコンピューティングデバイスで実行可能な第１アプリケーション及び第２アプリケーションを記憶する非一時的コンピュータ可読媒体であって、
前記第１アプリケーション及び第２アプリケーションが実行されると、前記少なくとも１つのコンピューティングデバイスは、少なくとも、
前記第１アプリケーションが認証を要求したと判定し、
前記第２アプリケーションによって第１ユーザインタフェースをレンダリングさせ、
前記第１ユーザインタフェースは前記認証のユーザ承認を引き出し、
前記第２アプリケーションによってワンタイムパスワードを生成し、
前記ユーザ承認の受信に応じて、前記第１アプリケーションに前記ワンタイムパスワードを自動的に送信し、
前記第１アプリケーションによって第２ユーザインタフェースをレンダリングさせ、
前記第２ユーザインタフェースは前記ワンタイムパスワードで事前入力された第１フォームフィールド及びユーザ特定セキュリティクレデンシャルを受信するように構成された第２フォームフィールドを含み、
第１認証サービスに前記ユーザ特定セキュリティクレデンシャルを提出し、
直接的に前記第１認証サービスにではなく、第２認証サービスに前記ワンタイムパスワードを提出し、
前記第２認証サービスは前記第１認証サービスのプロキシとして動作し、
前記第１認証サービスは前記第２認証サービスから受信した前記ワンタイムパスワード及び前記少なくとも１つのコンピューティングデバイスから受信した前記ユーザ特定セキュリティクレデンシャルを使用して前記認証を実行するように構成されている、
非一時的コンピュータ可読記録媒体。
【請求項２】
前記少なくとも１つのコンピュータデバイスは、前記ユーザ特定セキュリティクレデンシャルを前記第２認証サービスに提出しない、
請求項１に記載の非一時的コンピュータ可読記録媒体。
【請求項３】
少なくとも１つのコンピューティングデバイスと、
前記少なくとも１つのコンピュータデバイスで実行可能な第１アプリケーションであって、前記第１アプリケーションが実行されると、前記少なくとも１つのコンピューティングデバイスは、少なくとも、
第１認証サービスに認証要求を送信し、
前記認証要求は第１認証要素を特定する、
第２アプリケーションと、
前記少なくとも１つのコンピュータデバイスで実行可能な第２アプリケーションであって、前記第２アプリケーションが実行されると、前記少なくとも１つのコンピューティングデバイスは、少なくとも、
前記少なくとも１つのコンピューティングデバイスのディスプレイにユーザインタフェースを生成し、
前記ユーザインタフェースはユーザ承認の入力を促し、
前記ユーザ承認の受信に応じて、直接的に前記第１認証サービスにではなく、第２認証サービスに第２認証要素を送信し、
前記第２認証サービスは、前記第１認証サービスのプロキシとして動作し、
前記第１認証サービスは、前記第２認証サービスから受信した前記第２認証要素及び前記第１アプリケーションから受信した前記第１認証要素を使用して、前記認証要求に応じて、認証を実行するように構成されている、
第２アプリケーションと、
を含む、
システム。
【請求項４】
前記第１認証サービス及び前記第２認証サービスは異なるエンティティによって動作される、
請求項３に記載のシステム。
【請求項５】
前記第２認証サービスは前記第２認証要素を有効化することができない、
請求項３に記載のシステム。
【請求項６】
前記ユーザインタフェースは、前記第２認証サービスからの要求に応じて生成される、
請求項３に記載のシステム。
【請求項７】
前記ユーザインタフェースは、前記第１アプリケーションからの要求に応じて生成される、
請求項３に記載のシステム。
【請求項８】
前記少なくとも１つのコンピューティングデバイスは、第１コンピューティングデバイス及び第２コンピューティングデバイスを含み、
前記第１アプリケーションは前記第１コンピューティングデバイスで実行され、
前記第２アプリケーションは前記第２コンピューティングデバイスで実行される、
請求項３に記載のシステム。
【請求項９】
前記第１認証サービスは、前記第１アプリケーションと第２アプリケーションとが異なるコンピューティングデバイスで実行されることを検証するように構成されている、
請求項３に記載のシステム。
【請求項１０】
前記少なくとも１つのコンピューティングデバイスは、単一のコンピューティングデバイスを含み、
前記第１アプリケーション及び前記第２アプリケーションは両方とも前記単一のコンピューティングデバイスで実行される、
請求項３に記載のシステム。
【請求項１１】
前記ユーザインタフェースは通知領域の通知を含む、
請求項３に記載のシステム。
【請求項１２】
少なくとも１つのコンピューティングデバイスの少なくとも１つが、第１アプリケーションが認証を要求したと判定し、
前記少なくとも１つのコンピューティングデバイスの少なくとも１つが、第２アプリケーションによってユーザインタフェースをレンダリングさせ、
前記ユーザインタフェースはユーザ承認を引き出し、
前記少なくとも１つのコンピューティングデバイスの少なくとも１つが、前記第２アプリケーションによって前記ユーザ承認を受信し、
前記少なくとも１つのコンピューティングデバイスの少なくとも１つが、前記ユーザ承認に応じて、第１認証サービスに第１認証要素を自動的に送信し、
前記少なくとも１つのコンピューティングデバイスの少なくとも１つが、前記ユーザ承認に応じて、直接的に前記第１認証サービスにではなく、第２認証サービスに第２認証要素を送信し、
前記第１認証要素及び第２認証要素は前記認証を実行するために使用される複数の認証要素に対応し、
前記第２認証サービスは前記第１認証サービスのプロキシとして動作し、
前記第１認証サービスは前記第２認証サービスから受信した前記第２認証要素及び前記少なくとも１つのコンピューティングデバイスから受信した前記第１認証要素を使用して前記認証を実行するように構成されている、
方法。
【請求項１３】
前記第１認証要素は、前記第１認証サービスに登録されているスキーム名を含むＵＲＬ（Uniform Resource Locator）を介して、前記第１認証サービスに送信される、
請求項１２に記載の方法。
【請求項１４】
前記第２認証要素はワンタイムパスワードに対応する、
請求項１２に記載の方法。
【請求項１５】
前記第１認証要素はユーザ提供パスワードに対応する、
請求項１４に記載の方法。
【請求項１６】
前記第２アプリケーションによって前記ワンタイムパスワードを生成することをさらに含む、
請求項１４に記載の方法。
【請求項１７】
前記第２アプリケーションによって、他のコンピューティングデバイスから前記ワンタイムパスワードを、ネットワークを介して、受信することをさらに含む、
請求項１４に記載の方法。
【請求項１８】
前記第２認証サービスは、前記第２認証要素を検証することができない、請求項１４に記載の方法。
【請求項１９】
前記第１認証サービス及び第２認証サービスは異なるエンティティによって動作される、
請求項１４に記載の方法。
【請求項２０】
前記第１認証要素は第２認証サービスに送信されない、
請求項１４に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本出願は、２０１６年７月２７日に出願された米国出願第１４／８０９，７５７号に対する優先権及び利益を主張するものでありかつ２０１６年７月２７日に出願された米国出願第１４／８０９，７６２号の優先権及び利益を主張するものであり、参照によりそれらの全体が本明細書に組み込まれる。
【背景技術】
【０００２】
多要素認証は、従来用いられている単一要素認証に比べてより高いセキュリティレベルを提供するアクセスコントロールの手法である。多要素認証は、ユーザが知っていること（例えば、パスワード、ナレッジベースの質問など）、ユーザが所有しているもの（例えば、トークンによって生成されるワンタイムパスワード、異なる通信チャネルを介して送信されるワンタイムパスワードなど）及びユーザが誰であるか（例えば、指紋スキャン又は他の生体認証データ）から選択される２つ以上の認証要素を用い得る。例えば、ネットワークサービスへのログインに成功するために、ユーザは、ユーザネーム、パスワード及びハードウェアトークンによって生成されるワンタイムパスワードを提供しなければならないことがある。したがって、ユーザネーム及びパスワードを盗んだ悪意のあるユーザは、さらにハードウェアトークンにもアクセスすることなしではログインすることはできない。ワンタイムパスワードは、時間ベースのワンタイムパスワードアルゴリズム、ハッシュチェーン及び他の手法を介して生成され得る。
【０００３】
本開示の多くの態様は、以下の図面を参照して、より良好に理解することができる。図面中の構成要素は、必ずしも原寸に比例するとは限らず、代わりに、本開示の原理を明確に例示することを重視する。さらに、図面における同様の参照数字は、いくつかの図において対応する部分を指定する。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
認証を実行する。
【課題を解決するための手段】
【０００５】
一態様は、少なくとも１つのコンピューティングデバイスで実行可能な第１アプリケーション及び第２アプリケーションを記憶する非一時的コンピュータ可読媒体であって、前記第１アプリケーション及び第２アプリケーションが実行されると、前記少なくとも１つのコンピューティングデバイスは、少なくとも、前記第１のアプリケーションが認証を要求したと判定し、前記第２のアプリケーションによって第１ユーザインタフェースをレンダリングさせ、前記第１ユーザインタフェースは前記認証のユーザ承認を引き出し、前記第２アプリケーションによってワンタイムパスワードを生成し、前記ユーザ承認の受信に応じて、前記第１アプリケーションに前記ワンタイムパスワードを自動的に送信し、前記第１アプリケーションによって前記第２ユーザインタフェースをレンダリングさせ、前記第２ユーザインタフェースは前記ワンタイムパスワードで事前入力された第１フォームフィールド及びユーザ特定セキュリティクレデンシャルを受信するように構成された第２フォームフィールドを含み、第１認証サービスに前記ユーザ特定セキュリティクレデンシャルを提出し、直接的に前記第１認証サービスにではなく、第２認証サービスに前記ワンタイムパスワードを提出し、前記第２認証サービスは前記第１認証サービスのプロキシとして動作し、前記第１認証サービスは前記第２認証サービスから受信した前記ワンタイムパスワード及び前記少なくとも１つのコンピューティングデバイスから受信した前記ユーザ特定セキュリティクレデンシャルを使用して前記認証を実行するように構成されている。
【発明の効果】
【０００６】
認証を実行する。
【図面の簡単な説明】
【０００７】
【図１Ａ】本開示の様々な実施形態による、モバイルデバイスによってレンダリングされたユーザインタフェースの例の絵図である。
【図１Ｂ】本開示の様々な実施形態による、モバイルデバイスによってレンダリングされたユーザインタフェースの例の絵図である。
【図２Ａ】本開示の様々な実施形態によるネットワーク環境の概略ブロック図である。
【図２Ｂ】本開示の様々な実施形態によるネットワーク環境の概略ブロック図である。
【図３】本開示の様々な実施形態による、図２Ａのネットワーク環境においてクライアントで実行される認証アプリケーションの一部として実装された機能性の例を示すフローチャートである。
【図４】本開示の様々な実施形態による、図２Ａのネットワーク環境においてクライアントで実行される認証アプリケーションの一部として実装された機能性の例を示すフローチャートである。
【図５】本開示の様々な実施形態による、図２Ａのネットワーク環境においてクライアントで実行される認証アプリケーションの一部として実装された機能性の例を示すフローチャートである。
【図６】本開示の様々な実施形態による、図２Ａのネットワーク環境においてクライアントで実行されるクライアントアプリケーションの一部として実装された機能性の一例を示すフローチャートである。
【図７】本開示の様々な実施形態による、図２Ｂのネットワーク環境におけるクライアントアプリケーション、認証アプリケーション、認証エンドポイント及び認証プロキシ間の相互作用の一例を示すシーケンス図である。
【図８】本開示の様々な実施形態による、図２Ａのネットワーク環境で用いられるコンピューティング環境の一例の例示を提供する概略ブロック図である。
【発明を実施するための形態】
【０００８】
本開示は、多要素認証クレデンシャルを提供する手法に関する。多要素認証は、ネットワークサイト又はアプリケーションへのログインに用いるために使用されることが増えてきている。以前は、認証に必要とされるものはユーザネーム及びパスワードだけであったが、現在では、ネットワークサイト及びアプリケーションは、さらなる認証要素の提供を必要とすることがある。現在では、ユーザは、ユーザが知っていること（すなわちパスワード）を証明する必要があるのに加え、ユーザが所有しているものを証明する必要があることがある。これは、ユーザのデバイスによって生成される及び／又は信頼できる通信チャネル（例えば、既知のアドレスへのＥメール、既知の電話番号へのテキストメッセージ、既知の電話番号への音声電話など）を介してユーザに送信されるワンタイムパスワードを含み得る。
【０００９】
ユーザは、ネットワークページ又はアプリケーションフォームに、ワンタイムパスワードをユーザネーム及びパスワードなどの他のセキュリティクレデンシャルとともに入力するように求められ得る。このことは、ワンタイムパスワードがあるデバイス上に表示されその入力を別のデバイス上のフォームに行う場合、簡単な手順であり得る。そのようなシナリオでは、ユーザは単に、ワンタイムパスワードを見てタイプし得る。しかし、ワンタイムパスワードが第１のアプリケーションにより提示され、ユーザはそれを第２のアプリケーションを介して入力する場合、ユーザは、第１のアプリケーションによって示されたワンタイムパスワードを記憶し、第２のアプリケーションに切り替え、次いで、記憶をもとにワンタイムパスワードを入力しようとしなければならないことがある。そのようなプロセスは、ワンタイムパスワードがユーザの作業記憶の限界を広げ得るように、ワンタイムパスワードの一部を入力するのに不便にも第２のアプリケーションと第１のアプリケーションを交互に切り替えることを含み得る。
【００１０】
本開示の様々な実施形態は、ワンタイムパスワード及び／又は様々なアプリケーションを通して取得される他の多要素認証クレデンシャルのユーザの入力を容易にするために、デバイス通知を活用する。モバイルデバイスで実行されないオペレーティングシステムによって用いられ得るモバイルアプリケーションのパラダイム下で、アプリケーションのユーザインタフェースは、デバイスのディスプレイの大部分を占める。このようにして、マルチタスクは、小さいサイズのディスプレイにおいては非効率的であり得るウィンドウ表示パラダイムを用いるのではなく、単一のアプリケーションがディスプレイ上にレンダリングされる切り替えを含む。それでもなお、オペレーティングシステムによってレンダリングされる通知領域は、焦点の当たっているアプリケーションのユーザインタフェースとともに示され得る。通知領域は、現在の時間、無線ネットワーク信号強度、バッテリー状態及び他のステータス情報を示し得る。本明細書中に記載するように、ワンタイムパスワード又は他のクレデンシャルは通知領域に示され得、次いで、ユーザは、多要素認証を行うために、それを見てアプリケーションのフォームフィールド内にタイプし得る。
【００１１】
別の実施形態では、承認要求が通知領域に示され得、承認すると、ワンタイムパスワード又は他のクレデンシャルが、それを要求するアプリケーションに又はアプリケーションの代わりにサーバに自動的に転送され得る。この自動的な転送により、それ以外の場合には必要とされ得た、ユーザが認証アプリケーションに手動で切り替え、次いでクライアントアプリケーションに切り替えて戻るという、複数のコンテキストの切替えが回避され得る。
【００１２】
他の手法では、プロキシサーバを用いて１つ又は複数の認証要素を認証エンドポイントへ／から通信させてもよいが、１つ又は複数の認証要素をクライアントデバイスにより認証エンドポイントに／から直接通信させてもよい。認証機能を実際に行わないプロキシサーバを用いることによって、セキュリティが向上し得る。例えば、プロキシサーバが悪意のある行為者によって不正アクセスされた場合、ワンタイムパスワードは傍受されていることがあり得る。しかし、ワンタイムパスワードは期限付きであるため、それ自体だけでは利用に限界がある。システムがワンタイムパスワードを生成又は有効とすることなしに、プロキシサーバの不正アクセスだけでは、悪意のある行為者の認証は可能にならないであろう。
【００１３】
図１Ａを参照すると、本開示の様々な実施形態による、サインイン情報の入力を容易にするモバイルデバイスの例１００ａが示されている。モバイルデバイス１００ａは、タッチスクリーンディスプレイ１０３を含む。アプリケーションユーザインタフェース１０６及び通知領域１０９がタッチスクリーンディスプレイ１０３上にレンダリングされている。アプリケーションユーザインタフェース１０６は、モバイルデバイス１００で焦点が当たっている現在実行中のアプリケーションに対応する。本例で、アプリケーションユーザインタフェース１０６は、モバイルバンキングアプリケーション（「モバイルバンキング」）に対応し、ユーザネーム、パスワード及びワンタイムパスワードに対応する照合コードを備える複数の認証要素を要求するサインインフォーム１１２を含む。
【００１４】
ユーザは、通知領域１０９を展開することを選択している。展開された通知領域１０９内には、選択されるとモバイルバンキングアプリケーションに対応するワンタイムパスワードが照合コード用のサインインフォーム１１２に入力されることを可能にする構成要素１１５が存在する。複数のアカウントが特定のアプリケーション又はサインインフォームに関連付けられている場合、ユーザは、通知領域１０９内のそれぞれの構成要素１１５を用いて複数のアカウントの中から選択を行い得る。本例では、構成要素１１５は展開された通知領域１０９内に存在するが、他の例では、構成要素１１５は、非展開通知領域１０９内に存在し得る。
【００１５】
次に図１Ｂを検討すると、本開示の様々な実施形態による、サインイン情報の入力を容易にするモバイルデバイスの例１００ｂが示されている。図１Ａと比較すると、承認構成要素１１５を含むのではなく、ワンタイムパスワードは、それ自体が、構成要素１１８として通知領域１０９内に表示される。本例では、通知領域１０９は、非展開のものであり、サインインフォーム１１２に焦点が当たっている。結果的に、ユーザは、構成要素１１８でワンタイムパスワードを見ると同時に、ワンタイムパスワードをサインインフォーム１１２のフォームフィールドに入力することができる。以下の説明では、システム及びその構成要素の一般的な説明を行い、次に、それらの動作について説明する。
【００１６】
図２Ａを参照すると、様々な実施形態によるネットワーク環境２００が示される。ネットワーク環境２００は、ネットワーク２０９を経由してデータ通信する、コンピューティング環境２０３及び１つ又は複数のクライアント２０６を含む。ネットワーク２０９には、例えば、インターネット、イントラネット、エクストラネット、広域ネットワーク（ＷＡＮ）、ローカルエリアネットワーク（ＬＡＮ）、有線ネットワーク、無線ネットワーク、ケーブルネットワーク、衛星ネットワーク又は他の適切なネットワーク、もしくは２つ以上のこのようなネットワークの任意の組み合わせが含まれる。
【００１７】
コンピューティング環境２０３は、例えば、サーバコンピュータ又はコンピューティング機能を提供する任意の他のシステムを備え得る。代替として、例えば１つ又は複数のサーババンク又はコンピュータバンク又は他の構成で配置される複数のコンピューティングデバイスを用いてもよい。このようなコンピューティングデバイスは、単独の設置で位置付けられてもよく、又は、多数の異なる地理的な位置間で分散されてもよい。例えば、コンピューティング環境２０３は、まとめて、ホスト型又は「クラウド」コンピューティング資源、グリッドコンピューティング資源及び／又は任意の他の分散型コンピューティング配置を含み得る複数のコンピューティングバイスを含み得る。場合によっては、コンピューティング環境２０３は、処理、ネットワーク、格納又は他のコンピューティング関連資源の割り当てられたキャパシティが時間とともに変化し得るエラスティックなコンピューティング資源に対応し得る。
【００１８】
様々なアプリケーション及び／又は他の機能が、様々な実施形態によるコンピューティング環境２０３で実行され得る。また、様々なデータが、コンピューティング環境２０３にアクセス可能であるデータストア２１２に格納される。データストア２１２は、理解することができるように、複数のデータストア２１２を表し得る。データストア２１２に格納されるデータは、例えば、以下に記載する様々なアプリケーション及び／又は機能性エンティティの動作に関連付けられる。
【００１９】
コンピューティング環境２０３上で実行される構成要素には、例えば、認証エンドポイント２１５及び本明細書中で詳細を記載しない他のアプリケーション、サービス、プロセス、システム、エンジン又は機能性が含まれる。認証エンドポイント２１５は、ネットワーク資源に対する認証を容易にするために実行される。この認証は、多要素認証の形態をとり得る。例えば、認証エンドポイント２１５は、クライアント２０６から、ユーザネーム及びパスワードなどの従来のナレッジベースのクレデンシャルを受信し得るが、認証エンドポイント２１５は、ワンタイムパスワードなどのさらなる所有要素も必要とし得る。
【００２０】
一部の実施形態で、クライアント２０６は、登録クレデンシャル２２１を指定しているクレデンシャル要求２１８を認証エンドポイント２１５に送信するように構成される。登録クレデンシャル２２１が有効であると仮定して、認証エンドポイント２１５は、ワンタイムパスワードに対応し得るセキュリティクレデンシャル２２４を戻し得る。登録クレデンシャル２２１は、セキュリティクレデンシャル２２４を受信するのにおいてクライアント２０６の認証を示す長期クレデンシャルに対応し得る。別の実施形態で、クライアント２０６が他の方法で認証されると仮定して、認証エンドポイント２１５は、クライアント２０６から共有シード要求２２５を受信し得、次いで、セキュリティクレデンシャル２２４を生成するのに用いるための共有シード２２６を戻し得る。
【００２１】
認証エンドポイント２１５は、ハイパーテキストトランスファープロトコル（ＨＴＴＰ）、シンプルオブジェクトアクセスプロトコル（ＳＯＡＰ）、リプレゼンテーショナルステートトランスファー（ＲＥＳＴ）及び／又は他のプロトコルなどのプロトコルを用い得る。一部の実施形態で、認証エンドポイント２１５は、例えば、Ａｐａｃｈｅ（登録商標）ＨＴＴＰサーバ、Ａｐａｃｈｅ（登録商標）Ｔｏｍｃａｔ（登録商標）、Ｍｉｃｒｏｓｏｆｔ（登録商標）Ｉｎｔｅｒｎｅｔ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｓｅｒｖｉｃｅｓ（ＩＩＳ）などの市販のＨＴＴＰサーバを含み得る。
【００２２】
データストア２１２に格納されるデータには、例えば、共有シード２２６、登録クレデンシャル２２１及び潜在的に他のデータが含まれる。さらなる格納されるデータには、例えば、サインイン情報、ユーザネーム、パスワード、実名、ネットワークサイト名及びドメイン名、ユニフォームリソースロケータ（ＵＲＬ）、支払い命令情報（例えば、クレジットカード番号及び関連情報、当座預金口座情報など）、識別番号、セキュリティキー、誕生日、ナレッジベースのセキュリティの質問に対する回答、ペットの名前、出生地及び／又は他の情報が含まれ得る。
【００２３】
クライアント２０６は、ネットワーク２０９に連結され得る複数のクライアントデバイスを表す。クライアント２０６は、例えば、コンピュータシステムなどのプロセッサベースのシステムを含み得る。このようなコンピュータシステムは、デスクトップコンピュータ、ラップトップコンピュータ、キオスク、パーソナルデジタル端末、携帯電話、スマートフォン、セットトップボックス、音楽プレーヤ、ウェブパッド、タブレットコンピュータシステム、ゲーム機、電子書籍リーダ、販売時点情報管理（ＰＯＳ）端末、クレジットカード端末又は同様の性能を有する他のデバイスの形式で具体化され得る。クライアント２０６は、ディスプレイ２３３を含み得る。ディスプレイ２３３には、例えば、タッチスクリーン、液晶表示（ＬＣＤ）ディスプレイ、ガスプラズマベースのフラットパネルディスプレイ、有機発光ダイオード（ＯＬＥＤ）ディスプレイ、電気泳動インク（Ｅ  ｉｎｋ）ディスプレイ、ＬＣＤプロジェクタ又は他の種類のディスプレイデバイスなどの１つ又は複数のデバイスが含まれ得る。
【００２４】
クライアント２０６は、認証アプリケーション２３６、クライアントアプリケーション２３９、オペレーティングシステム２４０、通知領域ウィジェット２４１及び／又は他のアプリケーションなどの様々なアプリケーションならびにシステムを実行するように構成され得る。一例では、認証アプリケーション２３６は、アカウントに対してワンタイムパスワードなどのセキュリティクレデンシャル２２４を提供するように認証アプリケーション２３６をユーザが構成することを可能にするユーザインタフェース２４２をディスプレイ２３３上にレンダリングするように実行される。認証アプリケーション２３６は、共有シード２４３を用いてそのようなセキュリティクレデンシャル２２４を生成するように構成され得、又は、認証エンドポイント２１５などのサーバから登録クレデンシャル２２１経由でそのようなクレデンシャルを取得するように構成され得る。
【００２５】
クライアントアプリケーション２３９はクライアント２０６で、例えば、コンピューティング環境２０３及び／又は他のサーバによって与えられるネットワークコンテンツにアクセスするために実行され得、したがって、ユーザインタフェース２４２をディスプレイ２３３上にレンダリングする。各クライアントアプリケーション２３９は、例えば、ブラウザ、モバイルアプリケーション、ショッピングアプリケーション、バンキングアプリケーション、音楽再生アプリケーション、ビデオアプリケーション、ゲームアプリケーション、ソーシャルアプリケーション及び／又はその時々に運用する情報をユーザから要求し得る他のアプリケーションに対応し得る。クライアントアプリケーション２３９は、ネイティブアプリケーション、ウェブアプリケーション、ハイブリッドアプリケーション又は他のアプリケーションに対応し得る。
【００２６】
認証アプリケーション２３６は、ユーザが様々なクライアントアプリケーション２３９を実行するときにセキュリティクレデンシャル２２４が利用可能となるように、オペレーティングシステム２４０と統合され得る。例えば、オペレーティングシステム２４０は、Ａｎｄｒｏｉｄ（登録商標）のプラットフォーム上に見られるステータスバーなどの通知領域ウィジェット２４１を含み得る。通知領域ウィジェット２４１は、ディスプレイ２３３を介してアクセス可能であり得、クライアントアプリケーション２３９のユーザインタフェース２４２は、ディスプレイ２３３上にレンダリングされている。認証アプリケーション２３６は、１つ又は複数の通知構成要素を通知領域ウィジェット２４１に追加し得、通知構成要素を選択することによって、現在実行されているクライアントアプリケーション２３９にセキュリティクレデンシャル２２４が提供されることを承認し得るようにする。代替として、通知領域ウィジェット２４１は、セキュリティクレデンシャル２２４をレンダリングし、ユーザがそれをクライアントアプリケーション２３９のユーザインタフェース２４２のフォームフィールド内に手動で入力し得るように構成され得る。
【００２７】
格納されたアカウント情報をステータスバーを介してアプリケーションに提供する技術は、２０１３年１２月１６日に出願された「ＰＲＯＶＩＤＩＮＧ  ＡＣＣＯＵＮＴ  ＩＮＦＯＲＭＡＴＩＯＮ  ＴＯ  ＡＰＰＬＩＣＡＴＩＯＮＳ」という名称の米国特許出願番号第１４／１０７，１５０号に記載されており、その全体を参照によって本明細書に組み込む。認証コードをディスプレイ上にレンダリングする技術は、２０１４年１２月１６日に出願された「ＣＯＭＰＵＴＩＮＧ  ＤＥＶＩＣＥ  ＷＩＴＨ  ＩＮＴＥＧＲＡＴＥＤ  ＡＵＴＨＥＮＴＩＣＡＴＩＯＮ  ＴＯＫＥＮ」という名称の米国特許出願番号第１４／５７２，７３９号に記載されており、その全体を参照によって本明細書に組み込む。
【００２８】
図２Ｂを参照すると、様々な実施形態による別のネットワーク環境２５０が示される。ネットワーク環境２５０は、ネットワーク２０９を経由してデータ通信する、コンピューティング環境２０３、コンピューティング環境２５２及び１つ又は複数のクライアント２０６を含む。コンピューティング環境２５２は、コンピューティング環境２０３と同様なものであり得るが、異なるエンティティによって動作され得、及び／又は、コンピューティング環境２０３からある程度のネットワーク分離で維持され得る。
【００２９】
コンピューティング環境２５２上で実行されるものに、認証プロキシ２５４がある。認証プロキシ２５４は、セキュリティクレデンシャル２２４（図２Ａ）の生成及び／又は解釈から一定程度の分離を提供するのに用いられ得る。本実施形態で、クライアント２０６上の認証アプリケーション２３６は、認証要求２５６を介して認証プロキシ２５４と通信する。認証プロキシ２５４は、単にその認証要求２５６を、プロキシされた認証要求２５８を介してコンピューティング環境２０３の認証エンドポイント２１５に渡す。認証エンドポイント２１５は、認証応答２６０を生成し、それは認証プロキシ２５４に戻される。認証プロキシ２５４は、認証応答２６０を、プロキシされた認証応答２６２としてクライアント２０６に戻す。代替として、上記の通信は、クライアント２０６によって初期化されるのではなく、認証エンドポイント２１５によって初期化され得る。
【００３０】
図２Ｂのプロキシアーキテクチャは、複数要素認証における複数の要素の１つの通信及び受信のためにさらなる分離を提供するために用いられ得る。あるシナリオでは、認証アプリケーション２３６は認証プロキシ２５４と通信して、異なる認証要素を認証エンドポイント２１５に既に提供しているクライアントアプリケーション２３９によるアクセスを許可し得る。例えば、プッシュ通知は、認証エンドポイント２１５から認証アプリケーション２３６に認証プロキシ２５４を経由して送信され得る。
【００３１】
ユーザは、認証アプリケーション２３６を用いる認証を承認し得、この承認は認証プロキシ２５４を介して認証エンドポイント２１５に送信されている。承認は、ワンタイムパスワード、又は公開−秘密鍵のペアの使用を含み得る。一部の例で、公開−秘密鍵のペアは、ＡＣＴＩＶＥ  ＤＩＲＥＣＴＯＲＹなどで、クライアント２０６に組み込まれ得る。認証プロキシ２５４は、クライアント２０６によって戻された結果（すなわち、認証要求２５６）の照合を行わない。それどころか、認証プロキシ２５４は、クライアント２０６によって供給される認証要素を検証する又は照合する能力がなくてもよい。この点に関して、この照合を行うための鍵及び／又は共有シード２２６は、コンピューティング環境２０３で維持され得る。認証エンドポイント２１５は、この照合を行い得、又は、照合は、コンピューティング環境２０３の分離サービス（例えば、Ｒｅｍｏｔｅ  Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  Ｄｉａｌ  Ｉｎ  Ｕｓｅｒ  Ｓｅｒｖｉｃｅ（ＲＡＤＩＵＳ）サーバ）によって対処され得る。
【００３２】
一方、追加の認証要素（例えばパスワード）は、認証プロキシ２５４によってプロキシされることなしに、クライアント２０６によって認証エンドポイント２１５に直接提供される。一部の実装で、認証エンドポイント２１５は、認証が行われる認証アプリケーション２３６及びクライアントアプリケーション２３９が別々のクライアント２０６によって実行されるという要件を実施し得る。これは、インターネットプロトコル（ＩＰ）アドレス、メディアアクセスコントロール（ＭＡＣ）アドレス、オペレーティングシステム識別子、デバイス識別子及び／又はクライアント２０６を固有に識別し得る他の種類の識別子を参照して実施され得る。
【００３３】
次に、図３を参照すると、ある実施形態による、認証アプリケーション２３６の一部の動作の一例を提供するフローチャートが示される。図３のフローチャートは、単に、本明細書中で記載されるような認証アプリケーション２３６の一部の動作を実装するのに用いられ得る多くの様々な種類の機能的構成の例を提供する。代替として、図３のフローチャートは、１つ又は複数の実施形態による、クライアント２０６に実装される方法の要素の例を表現していると見なされ得る。
【００３４】
ボックス３０３から始めて、認証アプリケーション２３６は、セキュリティクレデンシャル２２４（図２Ａ）を生成するために共有シード２４３（図２Ａ）を取得する。例えば、認証アプリケーション２３６は、クイックレスポンス（ＱＲ）コード、バーコード、機械可読テキストなどを含む画像から共有シード２４３を取得し得る。共有シード２４３はまた、近距離無線通信（ＮＦＣ）、ＢＬＵＥＴＯＯＴＨ（登録商標）、Ｗｉ−Ｆｉ、赤外線、音響結合及び／又は他の無線技術を介して送信され得る。場合によっては、共有シード２４３を取得することは、シードを生成し、それを認証エンドポイント２１５とネットワーク２０９（図２Ａ）を介して共有することを含み得る。ボックス３０６で、認証アプリケーション２３６は、共有シード２４３を１つ又は複数のクライアントアプリケーション２３９（図２Ａ）又はアカウントに関連付ける。異なる共有シード２４３は、異なるアカウント又はクライアントアプリケーション２３９に用いられ得ることがあり得る。
【００３５】
ボックス３０９で、認証アプリケーション２３６は、セキュリティクレデンシャル２２４を生成する要求を取得する。要求は、クライアントアプリケーション２３９から受信され得る。例えば、認証アプリケーション２３６は、特定のスキーム名（例えば「ａｕｔｈｅｎｔｉｃａｔｏｒ」）に関連付けられ得、クライアントアプリケーション２３９は、「ａｕｔｈｅｎｔｉｃａｔｏｒ：／／ｇｅｎｅｒａｔｅＰａｓｓｗｏｒｄ／ａｐｐＩＤ＝ＵＩＤ」などのユニフォームリソースロケータ（ＵＲＬ）を介して認証アプリケーション２３６を呼び出し得る。ここで、ＵＩＤは、特定のクライアントアプリケーション２３９に対する固有識別子に対応している。アカウント識別子も指定され得る。別のシナリオでは、要求は、認証エンドポイント２１５（図２Ａ）を経由して、登録された認証アプリケーション２３６にプッシュされ得る。
【００３６】
ボックス３１２で、認証アプリケーション２３６は、クライアントアプリケーション２３９に関連付けられた共有シード２４３を判定する。ボックス３１５で、認証アプリケーション２３６は、現在の時間及び判定された共有シード２４３に少なくとも部分的に基づいて、セキュリティクレデンシャル２２４を生成する。他の実施形態では、セキュリティクレデンシャル２２４を生成する他のアルゴリズムが用いられ得る。
【００３７】
ボックス３１８で、認証アプリケーション２３６は、図１Ａの例と同様に、承認構成要素を通知として通知領域ウィジェット２４１（図２Ａ）にレンダリングさせる。承認構成要素は、ユーザに、特定のクライアントアプリケーション２３９が特定のセキュリティクレデンシャル２２４へのアクセスを要求したことを示し得る。ユーザは、セキュリティクレデンシャル２２４をクライアントアプリケーション２３９に転送する要求を承認又は拒否することを選択し得る。
【００３８】
ボックス３２１で、認証アプリケーション２３６は、ユーザ承認の指示を受信する。１つの例で、ユーザは、承認を指示するボタン又は他のユーザインタフェースの構成要素を単に選択し得る。別の例で、ユーザは、承認プロセスをさらに保護するために、指紋又は他の生体識別子を提供しなくてはいけないことがある。認証アプリケーション２３６は、ユーザ承認が発生したと見なす前に、生体識別子を照合するように構成され得る。クライアント２０６は、タッチスクリーンディスプレイ２３３に指紋認識技術を組み込み得、又は、分離デバイスが、指紋を受信するのにクライアント２０６に存在し得る。指紋認識が必要とされるいくつかの場合、認証アプリケーション２３６は、特定のユーザに対応する特定の指の認識を必要とし得る。さらなる別の例では、ユーザは、ユーザ承認を容易にするために、個人識別番号（ＰＩＮ）又は他の識別子を入力することを要され得る。様々なシナリオで、ユーザ承認は、ペアレンタルコントロールに対応し得、子どものユーザがセキュリティクレデンシャル２２４の転送を介してアプリケーション又は資源にアクセス可能となる前に、親の指紋又は他の識別子が必要とされ得るようにする。
【００３９】
ボックス３２４で、認証アプリケーション２３６は、ユーザ承認に応答して、クライアントアプリケーション２３９にセキュリティクレデンシャル２２４を転送する。例えば、セキュリティクレデンシャル２２４は、特定のクライアントアプリケーション２３９に関連付けられたスキーム名を有するＵＲＬ、例えば、「ｃｌｉｅｎｔＡｐｐｌｉｃａｔｉｏｎ：／／ｃｏｄｅ＝３１４１５９」を呼び出す認証アプリケーション２３６によって自動的に転送され得る。ここで、「３１４１５９」はセキュリティクレデンシャル２２４である。場合によっては、認証アプリケーション２３６は、セキュリティクレデンシャル２２４をサーバに自動的に転送するように構成され得る。その後、認証アプリケーション２３６の一部は終了する。
【００４０】
図４に移動すると、別の実施形態による、認証アプリケーション２３６の一部の動作の一例を提供するフローチャートが示される。図４のフローチャートは、単に、本明細書中で記載されるような認証アプリケーション２３６の一部の動作を実装するのに用いられ得る多くの様々な種類の機能的構成の例を提供することが理解される。代替として、図４のフローチャートは、１つ又は複数の実施形態による、クライアント２０６で実装される方法の要素の例を表現していると見なされ得る。
【００４１】
ボックス４０３から始めて、認証アプリケーション２３６は、セキュリティクレデンシャル２２４（図２Ａ）を生成するために共有シード２４３（図２Ａ）を取得する。例えば、認証アプリケーション２３６は、クイックレスポンス（ＱＲ）コード、バーコード、機械可読テキストなどを含む画像から共有シード２４３を取得し得る。共有シード２４３はまた、近距離無線通信（ＮＦＣ）、ＢＬＵＥＴＯＯＴＨ、ＷＩ−ＦＩ、赤外線、音響結合及び／又は他の無線技術を介して送信され得る。場合によっては、共有シード２４３を取得することは、シードを生成し、それを認証エンドポイント２１５とネットワーク２０９（図２Ａ）を介して共有することを含み得る。ボックス４０６で、認証アプリケーション２３６は、共有シード２４３を１つ又は複数のクライアントアプリケーション２３９（図２Ａ）又はアカウントに関連付ける。異なる共有シード２４３は、異なるアカウント又はクライアントアプリケーション２３９に用いられ得ることがあり得る。
【００４２】
ボックス４０９で、認証アプリケーション２３６は、セキュリティクレデンシャル２２４を生成する要求を取得する。要求は、クライアントアプリケーション２３９から受信され得る。例えば、認証アプリケーション２３６は、特定のスキーム名（例えば「ａｕｔｈｅｎｔｉｃａｔｏｒ」）に関連付けられ得、クライアントアプリケーション２３９は、「ａｕｔｈｅｎｔｉｃａｔｏｒ：／／ｇｅｎｅｒａｔｅＰａｓｓｗｏｒｄ／ａｐｐＩＤ＝ＵＩＤ」などのユニフォームリソースロケータ（ＵＲＬ）を介して認証アプリケーション２３６を呼び出し得る。ここで、ＵＩＤは、特定のクライアントアプリケーション２３９に対する固有識別子に対応している。アカウント識別子も指定され得る。別のシナリオで、要求は、認証エンドポイント２１５（図２Ａ）を経由して、登録された認証アプリケーション２３６にプッシュされ得る。
【００４３】
ボックス４１２で、認証アプリケーション２３６は、クライアントアプリケーション２３９に関連付けられた共有シード２４３を判定する。ボックス４１５で、認証アプリケーション２３６は、現在の時間及び判定された共有シード２４３に少なくとも部分的に基づいて、セキュリティクレデンシャル２２４を生成する。他の実施形態では、セキュリティクレデンシャル２２４を生成する他のアルゴリズムが用いられ得る。
【００４４】
ボックス４１８で、認証アプリケーション２３６は、図１Ｂの例と同様に、生成されたセキュリティクレデンシャル２２４を通知として通知領域ウィジェット２４１にレンダリングさせる。次いで、ユーザは、セキュリティクレデンシャル２２４を見て、それをクライアントアプリケーション２３９によってレンダリングされたユーザインタフェース２４２（図２Ａ）のフォームフィールドに手動で入力し得る。こうして、通知は、ディスプレイ２３３（図２Ａ）上に、クライアントアプリケーション２３９のユーザインタフェース２４２とともに同時にレンダリングされ得る。
【００４５】
このことは、モバイルデバイスなどで、一度に最大で１つのアプリケーションのユーザインタフェース２４２をディスプレイ２３３上にレンダリングするように構成されたオペレーティングシステム２４０の観点から特に重要であり得る。例えば、ユーザインタフェース２４２及び通知領域ウィジェット２４１は、セキュリティクレデンシャル２２４が通知領域ウィジェット２４１にレンダリングされるとき、ディスプレイ２３３の全体を占めるように構成され得る。
【００４６】
ボックス４２１で、認証アプリケーション２３６は、セキュリティクレデンシャル２２４を含む通知を通知領域ウィジェット２４１から削除させ得る。このことは、所定の時間の経過後に、又はセキュリティクレデンシャル２２４が用いられたことを示す通信に応答してなされ得る。例えば、クライアントアプリケーション２３９又は認証エンドポイント２１５（図２Ａ）は、セキュリティクレデンシャル２２４が用いられたことを示す認証アプリケーション２３６へのコールバックを有し得る。認証エンドポイント２１５からの通信の信頼性は、Ｘ．５０９証明書、セキュアソケットレイヤー（ＳＳＬ）及び／又は他の技術の使用を介して確認され得る。認証アプリケーション２３６と認証エンドポイント２１５又はクライアントアプリケーション２３９の間のプッシュ通信構成又はプル通信構成が、この通信を受信するために認証アプリケーション２３６によって用いられ得る。その後、認証アプリケーション２３６の一部は終了する。
【００４７】
図５に続き、さらなる別の実施形態による、認証アプリケーション２３６の一部の動作の一例を提供するフローチャートが示される。図５のフローチャートは、単に、本明細書中で記載されるような認証アプリケーション２３６の一部の動作を実装するのに用いられ得る多くの様々な種類の機能的構成の例を提供することが理解される。代替として、図５のフローチャートは、１つ又は複数の実施形態による、クライアント２０６で実装される方法の要素の例を表現していると見なされ得る。
【００４８】
ボックス５０３から始めて、認証アプリケーション２３６は、認証エンドポイント２１５（図２Ａ）からセキュリティクレデンシャル２２４（図２Ａ）を取得するために登録クレデンシャル２２１（図２Ａ）を受信する。登録クレデンシャル２２１は、長期クレデンシャルであり得る。登録クレデンシャル２２１を受信するために、クライアント２０６は認証され得る。ボックス５０６で、認証アプリケーション２３６は、登録クレデンシャル２２１を１つ又は複数のクライアントアプリケーション２３９（図２Ａ）又はアカウントに関連付ける。
【００４９】
ボックス５０９で、認証アプリケーション２３６は、セキュリティクレデンシャル２２４に対する要求を受信する。例えば、認証アプリケーション２３６は、特定のスキーム名（例えば「ａｕｔｈｅｎｔｉｃａｔｏｒ」）に関連付けられ得、クライアントアプリケーション２３９は、「ａｕｔｈｅｎｔｉｃａｔｏｒ：／／ｇｅｎｅｒａｔｅＰａｓｓｗｏｒｄ／ａｐｐＩＤ＝ＵＩＤ」などのユニフォームリソースロケータ（ＵＲＬ）を介して認証アプリケーション２３６を呼び出し得る。ここで、ＵＩＤは、特定のクライアントアプリケーション２３９に対する固有識別子に対応している。アカウント識別子も指定され得る。別のシナリオでは、要求は、認証エンドポイント２１５（図２Ａ）を経由して、登録された認証アプリケーション２３６にプッシュされ得る。ボックス５１２で、認証アプリケーション２３６は、クライアントアプリケーション２３９に関連付けられた登録クレデンシャル２２１を判定する。
【００５０】
ボックス５１５で、認証アプリケーション２３６は、登録クレデンシャル２２１に少なくとも部分的に基づいて、認証エンドポイント２１５（図２Ａ）からネットワーク２０９（図２Ａ）を介して、セキュリティクレデンシャル２２４を要求する。すなわち、認証アプリケーション２３６は、セキュリティクレデンシャル２２４を受信する目的で登録クレデンシャル２２１を用いて認証エンドポイント２１５とともに認証を行うことが可能である。ボックス５１８で、認証アプリケーション２３６は、図４のボックス４１８のようにセキュリティクレデンシャル２２４をユーザに提示するか、図３のボックス３１８〜３２４のようにセキュリティクレデンシャル２２４をクライアントアプリケーション２３９に転送する。場合によっては、認証アプリケーション２３６は、セキュリティクレデンシャル２２４をサーバに自動的に転送するように構成され得る。その後、認証アプリケーション２３６の一部は終了する。
【００５１】
次に、図６を参照すると、様々な実施形態による、クライアントアプリケーション２３９の一部の動作の一例を提供するフローチャートが示される。図６のフローチャートは、単に、本明細書中で記載されるようなクライアントアプリケーション２３９の一部の動作を実装するのに用いられ得る多くの様々な種類の機能的構成の例を提供することが理解される。代替として、図６のフローチャートは、１つ又は複数の実施形態による、クライアント２０６（図２Ａ）で実装される方法の要素の例を表現していると見なされ得る。
【００５２】
ボックス６０３から始まり、クライアントアプリケーション２３９は、セキュリティクレデンシャル２２４（図２Ａ）が必要とされていることを判定する。ボックス６０３で、クライアントアプリケーション２３９は、認証アプリケーション２３６（図２Ａ）からのセキュリティクレデンシャル２２４を要求し得る。代替として、クライアントアプリケーション２３９は、サーバからのセキュリティクレデンシャル２２４を要求し得る。一部のシナリオでは、セキュリティクレデンシャル２２４は、特定のクライアントアプリケーション２３９に又はクライアントアプリケーション２３９によって用いられるアカウントに固有なものであり得る。例えば、クライアントアプリケーション２３９は、「ａｕｔｈｅｎｔｉｃａｔｏｒ：／／ｇｅｎｅｒａｔｅＰａｓｓｗｏｒｄ／ａｐｐＩＤ＝ＵＩＤ」などのユニフォームリソースロケータ（ＵＲＬ）を介して認証アプリケーション２３６を呼び出し得る。ここで、ＵＩＤは、特定のクライアントアプリケーション２３９に対する固有識別子に対応している。代替として、クライアントアプリケーション２３９は、セキュリティクレデンシャル２２４を入力するようにユーザにプロンプトするユーザインタフェース２４２を単にレンダリングし得、ユーザは、認証アプリケーション２３６を手動で呼び出してセキュリティクレデンシャル２２４を提供し得る。クライアントアプリケーション２３９及び認証アプリケーション２３６が異なるクライアント２０６で実行される場合、異なるクライアント２０６間に直接的なネットワーク接続が確立されて、セキュリティクレデンシャル２２４を要求及び／又は交換し得る。
【００５３】
ボックス６０６で、クライアントアプリケーション２３９は、セキュリティクレデンシャル２２４が自動的に転送されるかどうかを判定する。セキュリティクレデンシャル２２４が自動的に転送される場合、クライアントアプリケーション２３９は、ボックス６１２で、セキュリティクレデンシャル２２４を認証アプリケーション２３６から受信する。例えば、認証アプリケーション２３６は、特定のクライアントアプリケーション２３９に関連付けられたスキーム名を有するＵＲＬ、例えば、「ｃｌｉｅｎｔＡｐｐｌｉｃａｔｉｏｎ：／／ｃｏｄｅ＝３１４１５９」を呼び出し得る。ここで、「３１４１５９」はセキュリティクレデンシャル２２４である。自動的な転送の場合、クライアントアプリケーション２３９と認証アプリケーション２３９の間での不必要なコンテキストの切替えは回避される。場合によっては、セキュリティクレデンシャル２２４は、ネットワーク２０９を経由して認証アプリケーション２３９と通信するサーバから受信され得る。自動的に転送されると、ユーザインタフェース２４２のフォームフィールドに、セキュリティクレデンシャル２２４が自動入力され得る。クライアントアプリケーション２３９は、ボックス６１５に進む。
【００５４】
クライアントアプリケーション２３９がセキュリティクレデンシャル２２４を受信するのに自動的な転送を用いない場合、クライアントアプリケーション２３９は、ボックス６０９からボックス６１８に移動し、ユーザからユーザインタフェース２４２のフォームフィールドを介して手動でセキュリティクレデンシャル２２４を受信する。通知領域ウィジェット２４１（図２Ａ）は、セキュリティクレデンシャル２２４を示す通知構成要素をレンダリングし得、ユーザは、セキュリティクレデンシャル２２４を見ることと入力することを同時に行い得る。クライアントアプリケーション２３９は、次いで、ボックス６１５に移動する。
【００５５】
ボックス６１５で、クライアントアプリケーション２３９は、セキュリティクレデンシャル２２４に少なくとも部分的に基づいて認証エンドポイント２１５（図２Ａ）とともに認証を行う。１つの例で、セキュリティクレデンシャル２２４は、認証成功のために認証エンドポイント２１５に提供されるいくつかの認証要素の１つにすぎない。クライアントアプリケーション２３９のユーザインタフェース２４２は、ユーザネーム、パスワード、生体要素などの他の要素を導き得る。認証が行われると、クライアントアプリケーション２３９は、セキュア化されたネットワーク資源にアクセス可能になり得る。その後、認証アプリケーション２３９の一部は終了する。
【００５６】
図７に移動すると、様々な実施形態によるクライアントアプリケーション２３９、認証アプリケーション２３６、認証エンドポイント２１５及び認証プロキシ２５４間の相互作用の一例を提供するシーケンス図７００が示されている。図７のシーケンス図７００は、単に、本明細書中で記載されるような多くの様々な種類の機能的構成の例を提供することが理解される。
【００５７】
ボックス７０３から始まり、クライアントアプリケーション２３９は、第１の認証要素を指定している認証要求を生成する。次いで、認証要求は、認証エンドポイント２１５に送信される。例えば、クライアントアプリケーション２３９は、ユーザネームとパスワードの組み合わせによる認証を要求し得る。代替として、クライアントアプリケーション２３９は、単に、認証が要求されていることを認証エンドポイント２１５又は認証アプリケーション２３６に通知し得る。
【００５８】
ボックス７０６で、認証エンドポイント２１５は、認証アプリケーション２３６からの第２の認証要素を要求する。代替として、第２の認証要素に対する要求は、クライアントアプリケーション２３９から発生し得る。代替として、ユーザは、認証アプリケーション２３６を明示的に呼び出し得る。認証アプリケーション２３６及びクライアントアプリケーション２３９が異なるクライアント２０６（図２Ａ）で実行される場合、通信を有効にするのにローカルネットワーク上での発見手順が用いられ得る。
【００５９】
ボックス７０９で、認証アプリケーション２３６は、クライアントアプリケーション２３９に対する認証を進めることにおけるユーザ承認を受信するように構成されたユーザインタフェース２４２を生成する。例えば、認証アプリケーション２３６は、承認ボタンをレンダリングし得、この承認ボタンは、選択されると、ユーザがクライアントアプリケーション２３９の認証を承認することを示すものである。ボックス７１２で、認証アプリケーション２３６は、ユーザインタフェース２４２を介してユーザ承認を受信する。ボックス７１５で、認証アプリケーション２３６は、第２の認証要素、例えばワンタイムパスワードを生成する。代替として、認証アプリケーション２３６は、第２の認証要素をサーバから受信し得る。
【００６０】
認証アプリケーション２３６は、次いで、第２の認証要素を認証プロキシ２５４に送信する。認証プロキシ２５４は、認証エンドポイント２１５のプロキシとして機能する認証サービスである。認証プロキシ２５４は、第２の認証要素を照合する能力がなくてもよい。ボックス７２１で、認証プロキシ２５４は、第２の認証要素を認証エンドポイント２１５に転送する。これまで、認証エンドポイント２１５は、複数のソース、つまりクライアントアプリケーション２３９及び認証アプリケーション２３６（認証プロキシ２５４を経由して）から認証要求に対する複数の認証要素を受信している。
【００６１】
ボックス７２４で、認証エンドポイント２１５は、第１の認証要素及び第２の認証要素を検証する。また、認証エンドポイント２１５は、第１の認証要素及び第２の認証要素が異なるクライアント２０６を経由して提供されたことを確認し得る。ボックス７２７で、クライアントアプリケーション２３９を認証すると、認証エンドポイント２１５は、認証トークンをクライアントアプリケーション２３９に戻し得る。その後、シーケンス図７００は終了する。
【００６２】
図８を参照すると、本開示のある実施形態による、クライアント２０６の概略ブロック図が示される。クライアント２０６は、例えばプロセッサ８０３及びメモリ８０６を有しその両方がローカルインタフェース８０９に連結されている少なくとも１つのプロセッサ回路を含む。ローカルインタフェース８０９は、例えば、付随するアドレス／コントロールバス又は理解することができるように他のバス構造を有するデータバスを備え得る。コンピューティング環境２０３（図２Ａ）は、同様の構造を有する１つ又は複数のコンピューティングデバイスで構成され得る。
【００６３】
メモリ８０６に格納されているのは、プロセッサ８０３により実行可能なデータ及びいくつかの構成要素の両方である。特に、メモリ８０６に格納され、プロセッサ８０３により実行可能であるのは、認証アプリケーション２３６、クライアントアプリケーション２３９及び潜在的な他のアプリケーションである。メモリ８０６には、データストアも格納され得る。加えて、通知領域ウィジェット２４１を有するオペレーティングシステム２４０は、メモリ８０６に格納され得、プロセッサ８０３により実行可能であり得る。
【００６４】
メモリ８０６に格納され、プロセッサ８０３により実行可能である他のアプリケーションが存在し得ることが理解される。本明細書で説明する任意の構成要素がソフトウェアの形式で実装される場合、例えば、Ｃ、Ｃ＋＋、Ｃ＃、Ｏｂｊｅｃｔｉｖｅ  Ｃ、Ｊａｖａ（登録商標）、ＪａｖａＳｃｒｉｐｔ（登録商標）、Ｐｅｒｌ、ＰＨＰ、Ｖｉｓｕａｌ  Ｂａｓｉｃ（登録商標）、Ｐｙｔｈｏｎ（登録商標）、Ｒｕｂｙ、Ｆｌａｓｈ（登録商標）又は他のプログラミング言語などの多数のプログラミング言語のうちの任意の１つが用いられ得る。
【００６５】
多数のソフトウェア構成要素は、メモリ８０６に格納され、プロセッサ８０３によって実行可能である。この点において、「実行可能」という用語は、プロセッサ８０３により最終的に実行可能である形式のプログラムファイルを意味する。実行可能なプログラムの例は、例えば、メモリ８０６のランダムアクセス部分にロードできプロセッサ８０３によって実行できる形式の機械語に翻訳することができるコンパイルされたプログラム、メモリ８０６のランダムアクセス部分にロードできプロセッサ８０３により実行できるオブジェクトコードなどの適切な形式で表現され得るソースコード、又は、プロセッサ８０３によって実行されるためにメモリ８０６のランダムアクセス部分内で命令を生成するため、別の実行可能プログラムによって解釈され得るソースコードなどであり得る。実行可能なプログラムは、例えばランダムアクセスメモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）、ハードドライブ、ソリッドステートドライブ、ＵＳＢフラッシュドライブ、メモリカード、コンパクトディスク（ＣＤ）もしくはデジタル多用途ディスク（ＤＶＤ）などの光ディスク、フロッピー（登録商標）ディスク、磁気テープ、又は他のメモリ構成要素を含むメモリ８０６の任意の部分又は構成要素に格納され得る。
【００６６】
メモリ８０６は、揮発性メモリ及び不揮発性メモリの両方ならびにデータストレージ構成要素を含むものとして本明細書に定義される。揮発性構成要素は、電源喪失時にデータ値を保持しないものである。不揮発性構成要素は、電源喪失時にデータを保持するものである。したがって、メモリ８０６は、例えばランダムアクセスメモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）、ハードディスクドライブ、ソリッドステートドライブ、ＵＳＢフラッシュドライブ、メモリカードリーダを介してアクセスされるメモリカード、関連するフロッピーディスクドライブを介してアクセスされるフロッピーディスク、光ディスクドライブを介してアクセスされる光ディスク、適切なテープドライブを介してアクセスされる磁気テープ、及び／又は他のメモリ構成要素、あるいはこれらのメモリ構成要素のうちの任意の２つ以上の組み合わせを含み得る。加えて、ＲＡＭは、例えば、スタティックランダムアクセスメモリ（ＳＲＡＭ）、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）、又は磁気ランダムアクセスメモリ（ＭＲＡＭ）、及び他のこのようなデバイスを含み得る。ＲＯＭは、例えば、プログラマブル読み取り専用メモリ（ＰＲＯＭ）、消去可能プログラマブル読み取り専用メモリ（ＥＰＲＯＭ）、電気的消去可能プログラマブル読み取り専用メモリ（ＥＥＰＲＯＭ）、又は他の同様のメモリデバイスを含み得る。
【００６７】
また、プロセッサ８０３は、複数のプロセッサ８０３を表し得、及び／又は、複数のプロセッサコア及びメモリ８０６は、複数のメモリ８０６を表し得、それぞれが並行して処理回路を操作する。このような場合、ローカルインタフェース８０９は、複数のプロセッサ８０３のうちの任意の２つの間、任意のプロセッサ８０３とメモリ８０６のうちのいずれかとの間、又はメモリ８０６のうちの任意の２つの間などの通信を容易にする適切なネットワークであり得る。ローカルインタフェース８０９は、例えば、ロードバランシングの実施を含むこの通信を調整するように設計される追加のシステムを備え得る。プロセッサ８０３は、電気的構造又はいくつかの他の利用可能な構造を有し得る。
【００６８】
認証アプリケーション２３６、クライアントアプリケーション２３９、オペレーティングシステム２４０及び本明細書中で記載する他の様々なシステムは、上述のように、汎用ハードウェアにより実行されるソフトウェア又はコードで具体化され得るが、代替として、同様のものが専用ハードウェア又はソフトウェア／汎用ハードウェアと専用ハードウェアとの組み合わせで具体化されてもよい。専用ハードウェアで具体化される場合、各々は、多数の技術のうちの任意の１つ又はその組み合わせを用いる回路又は状態機械として実装されることができる。これらの技術は、１つ以上のデータ信号の印可時に種々の論理機能を実装するために論理ゲートを有する離散論理回路、適切な論理ゲートを有する特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、又は他の構成要素などを含んでもよいが、これらに限定されない。このような技術は、一般に、当業者によって周知であることから、本明細書に詳細に記載しない。
【００６９】
図３〜６のフローチャート及び図７のシーケンス図は、認証アプリケーション２３６、クライアントアプリケーション２３９、認証エンドポイント２１５及び／又は認証プロキシ２５４の一部の実装の機能及び動作を示す。ソフトウェアで具体化される場合、各ブロックは、特定の論理機能（複数可）を実装するために、プログラム命令を含むコードのモジュール、セグメント、又は一部分を表し得る。プログラム命令は、プログラミング言語で書かれる人間が読める記述を含むソースコード、又はコンピュータシステム又は他のシステム内のプロセッサ８０３などの適切な実行システムにより認識可能な数値命令を含む機械コードの形式で具体化されてもよい。機械コードは、ソースコードなどから変換されてもよい。ハードウェアで具体化する場合、各ブロックは、特定の論理機能（複数可）を実装するために、回路又は多数の相互接続された回路を表し得る。
【００７０】
図３〜図６のフローチャート及び図７のシーケンス図は、特定の実行の順序を示しているが、実行順序は、図示する順序と異なってもよいことが理解される。例えば、２つ以上のブロックの実行順序は、図時する順序を入れ替えてもよい。また、図３〜図７に連続して示される２つ以上のブロックは、同時に又は部分的に同時に実行されてもよい。さらに、一部の実施形態では、図３〜図７に示すブロックのうちの１つ又は複数をスキップ又は省略してもよい。加えて、有用性の向上、説明、性能測定、又は問題解決の手掛かりの提供などの目的で、任意の数のカウンタ、状態変数、警告セマフォ、又はメッセージを、本明細書に記載する論理フローに加えてもよい。全てのこのような変形が、本開示の範囲内にあることが理解される。
【００７１】
また、ソフトウェア又はコードを備える、認証アプリケーション２３６、クライアントアプリケーション２３９及びオペレーティングシステム２４０を含む、本明細書中に記載の任意の論理又はアプリケーションは、例えば、コンピュータシステム又は他のシステム内のプロセッサ８０３などの命令実行システムが使用する、又はそれに関連して使用する、任意の非一時的なコンピュータ可読媒体で具体化されることができる。この意味では、論理は、例えば、コンピュータ可読媒体から取得可能であり、かつ命令実行システムにより実行可能な命令及び宣言を含む記述を含み得る。本開示の文脈において、「コンピュータ可読媒体」は、命令実行システムが使用する、又はそれに関連して使用する、本明細書に記載の論理又はアプリケーションを包含、格納、又は保持することができる任意の媒体であることができる。
【００７２】
コンピュータ可読媒体は、例えば、磁気、光学、又は半導体媒体などの多数の物理媒体のうちの任意の１つを含むことができる。適切なコンピュータ可読媒体のより具体的な例として、磁気テープ、磁気フロッピーディスク、磁気ハードドライブ、メモリカード、ソリッドステートドライブ、ＵＳＢフラッシュドライブ、又は光ディスクが挙げられるだろうが、これらに限定されない。また、コンピュータ可読媒体は、例えば、スタティックランダムアクセスメモリ（ＳＲＡＭ）及びダイナミックランダムアクセスメモリ（ＤＲＡＭ）、又は磁気ランダムアクセスメモリ（ＭＲＡＭ）を含むランダムアクセスメモリ（ＲＡＭ）であってもよい。加えて、コンピュータ可読媒体は、読み取り専用メモリ（ＲＯＭ）、プログラマブル読み取り専用メモリ（ＰＲＯＭ）、消去可能プログラマブル読み取り専用メモリ（ＥＰＲＯＭ）、電気的消去可能プログラマブル読み取り専用メモリ（ＥＥＰＲＯＭ）、又は他の種類のメモリデバイスであってもよい。
【００７３】
さらに、認証アプリケーション２３６、クライアントアプリケーション２３９及びオペレーティングシステム２４０を含む、本明細書中に記載の任意の論理又はアプリケーションは、様々なやり方で実装かつ構成され得る。例えば、記載された１つ又は複数のアプリケーションは、単一のアプリケーションのモジュール又は構成要素として実装され得る。さらに、本明細書に記載の１つ又は複数の態様が、共有のもしくは別々のコンピューティングデバイス又はその組み合わせで実行され得る。例えば、本明細書中で記載する複数のアプリケーションは、同一のコンピューティングデバイスで、又は、同一のコンピューティング環境２０３において複数のコンピューティングデバイスで実行され得る。さらに、「アプリケーション」、「サービス」、「システム」、「エンジン」、「モジュール」などの用語は相互に交換可能であり得、限定される意図はないと理解されよう。
【００７４】
特に断りのない限り、句「Ｘ、Ｙ又はＺの少なくとも１つ」などの選言的な言葉は、項目、用語などがＸ、Ｙ、もしくはＺのいずれか又はその任意の組合せ（例えば、Ｘ、Ｙ及び／又はＺ）であってよいことを示すために一般的に用いられるとして文脈の中で理解される。したがって、係る選言的言語は、特定の実施形態がＸの少なくとも１つ、Ｙの少なくとも１つ、及びＺの少なくとも１つがそれぞれ存在することを必要とすることを暗示することを概して意図しておらず、意味するべきではない。
【００７５】
本開示の実施形態は、以下の条項に照らして説明することができる。
【００７６】
条項１．コンピューティングデバイスで実行可能な第１のアプリケーションを具体化する非一時的なコンピュータ可読媒体であって、画像から共有シードを取得するコードと、前記共有シードを第２のアプリケーションに関連付けるコードと、現在の時間及び前記共有シードに少なくとも部分的に基づいてワンタイムパスワードを生成するコードと、前記第２のアプリケーションから第１のユニフォームリソースロケータ（ＵＲＬ）を介して要求を受信したことに応答して、前記コンピューティングデバイスのディスプレイのオペレーティングシステムの通知領域に通知を生成するコードと、前記通知を介してユーザ承認の入力を容易にするコードと、前記ユーザ承認を受信したことに応答して、前記ワンタイムパスワードを前記第２のアプリケーションに第２のＵＲＬを介して転送するコードとを備える、前記媒体。
【００７７】
条項２．前記第１のＵＲＬが前記第１のアプリケーションに関連付けられた第１のスキーム名を含み、前記第２のＵＲＬが前記第２のアプリケーションに関連付けられた第２のスキーム名を含む、条項１に記載の非一時的なコンピュータ可読媒体。
【００７８】
条項３．前記通知が前記ワンタイムパスワードを含む、条項１〜２に記載の非一時的なコンピュータ可読媒体。
【００７９】
条項４．少なくとも１つのコンピューティングデバイスと前記少なくとも１つのコンピューティングデバイスで実行される第１のアプリケーションとを備え、前記第１のアプリケーションが、前記少なくとも１つのコンピューティングデバイスのディスプレイの通知領域に通知を生成するロジックと、前記通知を介してユーザ承認の入力を容易にするロジックと、前記ユーザ承認の受信に応答して、セキュリティクレデンシャルを前記少なくとも１つのコンピューティングデバイスで実行される第２のアプリケーションに転送するロジックとを備える、システム。
【００８０】
条項５．前記通知を生成する前記ロジックが、前記第２のアプリケーションからの要求に応答して前記通知を生成するように構成された、条項４に記載のシステム。
【００８１】
条項６．前記通知を生成する前記ロジックが、サーバからの要求に応答して前記通知を生成するように構成された、条項４〜５に記載のシステム。
【００８２】
条項７．前記セキュリティクレデンシャルがワンタイムパスワードである、条項４〜６に記載のシステム。
【００８３】
条項８．前記第１のアプリケーションが、さらに、前記ワンタイムパスワードをサーバからネットワークを介して受信するロジックを備える、条項４〜７に記載のシステム。
【００８４】
条項９．前記第１のアプリケーションが、さらに、前記ワンタイムパスワードを生成するロジックを備える、条項４〜８に記載のシステム。
【００８５】
条項１０．前記第１のアプリケーションが、前記ワンタイムパスワードを生成するのに用いられるシードを画像から取得するロジックをさらに備える、条項４〜９に記載のシステム。
【００８６】
条項１１．前記第１のアプリケーションが、前記第１のアプリケーションに関連付けられた第１のスキーム名を有する第１のユニフォームリソースロケータ（ＵＲＬ）を介して要求を受信し、前記第２のアプリケーションが、前記第２のアプリケーションに関連付けられた第２のスキーム名を有する第２のＵＲＬを介して前記セキュリティクレデンシャルを受信する、条項４〜１０に記載のシステム。
【００８７】
条項１２．前記通知領域が、前記第２のアプリケーションのユーザインタフェースと同時に前記ディスプレイ上にレンダリングされる、条項４〜１１に記載のシステム。
【００８８】
条項１３．前記セキュリティクレデンシャルが前記第２のアプリケーションに固有のものである、条項４〜１２に記載のシステム。
【００８９】
条項１４．前記第２のアプリケーションが複数の認証要素を用い、前記セキュリティクレデンシャルが前記複数の認証要素の１つに対応する、条項４〜１３に記載のシステム。
【００９０】
条項１５．前記少なくとも１つのコンピューティングデバイスが、一度に１つのアプリケーションのユーザインタフェースを前記ディスプレイ上にレンダリングするように構成された、条項４〜１４に記載のシステム。
【００９１】
条項１６．１つ又は複数のコンピューティングデバイスの少なくとも１つを介して実行される第１のアプリケーションによってセキュリティクレデンシャルを決定することと、前記１つ又は複数のコンピューティングデバイスの少なくとも１つのディスプレイ上の通知領域に前記セキュリティクレデンシャルをレンダリングさせ、前記１つ又は複数のコンピューティングデバイスの少なくとも１つを介して実行される第２のアプリケーションのユーザインタフェースも前記ディスプレイ上にレンダリングされることと、前記１つ又は複数のコンピューティングデバイスの少なくとも１つを介して実行される前記第２のアプリケーションによって、前記ユーザインタフェースのフォームフィールドを経由して前記セキュリティクレデンシャルを受信することとを含む方法。
【００９２】
条項１７．前記第２のアプリケーションによって、前記セキュリティクレデンシャルを表示する要求を前記第１のアプリケーションに送信することをさらに備える、条項１６に記載の方法。
【００９３】
条項１８．前記セキュリティクレデンシャルを表示する前記要求が、前記第１のアプリケーションに登録されたスキーム名を含むユニフォームリソースロケータ（ＵＲＬ）を介して送信される、条項１６〜１７に記載の方法。
【００９４】
条項１９．前記セキュリティクレデンシャルを決定することが、さらに、前記第１のアプリケーションによって、現在の時間及び共有シードに少なくとも部分的に基づいてワンタイムパスワードを生成することと、前記第１のアプリケーションによって、前記第２のアプリケーションに少なくとも部分的に基づいて複数のシードから前記共有シードを識別することとを備える、条項１６〜１８に記載の方法。
【００９５】
条項２０．前記セキュリティクレデンシャルが前記通知領域にレンダリングされるとき、前記ユーザインタフェース及び前記通知領域が前記ディスプレイの全体を占める、条項１６〜１９に記載の方法。
【００９６】
条項２１．少なくとも１つのコンピューティングデバイスで実行可能な第１のアプリケーション及び第２のアプリケーションを具体化する非一時的なコンピュータ可読媒体であって、前記第１のアプリケーションが認証を要求したことを判定するコードと、第１のユーザインタフェースを前記第２のアプリケーションによってレンダリングさせるコードであって、前記第１のユーザインタフェースは前記認証のユーザ承認を導くものであるコードと、前記第２のアプリケーションによってワンタイムパスワードを生成するコードと、前記ユーザ承認の受信に応答して、前記ワンタイムパスワードを前記第１のアプリケーションに自動的に転送するコードと、前記第１のアプリケーションによって第２のユーザインタフェースをレンダリングさせるコードであって、前記第２のユーザインタフェースは、前記ワンタイムパスワードが自動入力された第１のフォームフィールド及びユーザにより指定されたセキュリティクレデンシャルを受信するように構成された第２のフォームフィールドを含むものであるコードと、前記ワンタイムパスワード及び前記ユーザにより指定されたセキュリティクレデンシャルを少なくとも１つの認証サービスに送信して、前記第１のアプリケーションの前記認証を完了するコードとを備える、前記媒体。
【００９７】
条項２２．前記少なくとも１つの認証サービスが第１の認証サービス及び第２の認証サービスを含み、前記ユーザにより指定されたセキュリティクレデンシャルが前記第１の認証サービスに送信され、前記ワンタイムパスワードが前記第２の認証サービスに送信され、前記第２の認証サービスが前記第１の認証サービスのプロキシとして機能する、条項２１に記載の非一時的なコンピュータ可読媒体。
【００９８】
条項２３．少なくとも１つのコンピューティングデバイスと、前記少なくとも１つのコンピューティングデバイスで実行される第１のアプリケーションであって、第１の認証要素を指定している認証要求を第１の認証サービスに送信するロジックを備える前記第１のアプリケーションと、前記少なくとも１つのコンピューティングデバイスで実行される第２のアプリケーションであって、ユーザ承認の入力を容易にするユーザインタフェースを前記少なくとも１つのコンピューティングデバイスのディスプレイ上に生成するロジック及び前記ユーザ承認の受信に応答して、第２の認証要素を第２の認証サービスに送信するロジックを備える前記第２のアプリケーションとを備え、前記第２の認証サービスが前記第１の認証サービスのプロキシとして動作する、システム。
【００９９】
条項２４．前記第１の認証サービス及び前記第２の認証サービスが異なるエンティティによって運用される、条項２３に記載のシステム。
【０１００】
条項２５．前記第２の認証サービスに前記第２の認証要素を検証する能力がない、条項２３〜２４に記載のシステム。
【０１０１】
条項２６．前記ユーザインタフェースを生成する前記ロジックが、前記第２の認証サービスからの要求に応答して前記ユーザインタフェースを生成するように構成された、条項２３〜２５に記載のシステム。
【０１０２】
条項２７．前記ユーザインタフェースを生成する前記ロジックが、前記第１のアプリケーションからの要求に応答して前記ユーザインタフェースを生成するように構成された、条項２３〜２６に記載のシステム。
【０１０３】
条項２８．前記少なくとも１つのコンピューティングデバイスが第１のコンピューティングデバイス及び第２のコンピューティングデバイスを備え、前記第１のアプリケーションが前記第１のコンピューティングデバイスで実行され、前記第２のアプリケーションが前記第２のコンピューティングデバイスで実行される、条項２３〜２７に記載のシステム。
【０１０４】
条項２９．前記第１の認証サービスが、前記第１のアプリケーション及び前記第２のアプリケーションが異なるコンピューティングデバイスで実行されていることを確認するように構成された、条項２３〜２８に記載のシステム。
【０１０５】
条項３０．前記少なくとも１つのコンピューティングデバイスが、単一のコンピューティングデバイスを備え、前記第１のアプリケーション及び前記第２のアプリケーションの両方が前記単一のコンピューティングデバイスで実行される、条項２３〜２９に記載のシステム。
【０１０６】
条項３１．前記ユーザインタフェースが通知領域に通知を備える、条項２３〜３０に記載のシステム。
【０１０７】
条項３２．１つ又は複数のコンピューティングデバイスの少なくとも１つを介して、第１のアプリケーションが認証を要求したことを判定することと、前記１つ又は複数のコンピューティングデバイスの少なくとも１つを介して、ユーザ承認を導くユーザインタフェースを第２のアプリケーションによってレンダリングさせることと、前記１つ又は複数のコンピューティングデバイスの少なくとも１つを介して、前記第２のアプリケーションにより前記ユーザ承認を受信することと、前記ユーザ承認に応答して、前記１つ又は複数のコンピューティングデバイスの少なくとも１つを介して、認証要素を受信者に自動的に転送することとを含み、前記認証要素は、前記認証を行うのに用いられる複数の認証要素の１つに対応する、方法。
【０１０８】
条項３３．前記認証要素が、前記受信者に、前記受信者に登録されたスキーム名を含むユニフォームリソースロケータ（ＵＲＬ）を介して転送される、条項３２に記載の方法。
【０１０９】
条項３４．前記認証要素がワンタイムパスワードに対応する、条項３２〜３３に記載の方法。
【０１１０】
条項３５．前記複数の認証要素の別の１つがユーザにより提供されたパスワードに対応する、条項３２〜３４に記載の方法。
【０１１１】
条項３６．前記第２のアプリケーションによって、前記ワンタイムパスワードを生成することをさらに備える、条項３２〜３５に記載の方法。
【０１１２】
条項３７．前記第２のアプリケーションによって、前記ワンタイムパスワードを別のコンピューティングデバイスからネットワークを介して受信することをさらに備える、条項３２〜３６に記載の方法。
【０１１３】
条項３８．前記第１のアプリケーションによって前記複数の認証要素の少なくとも１つを、前記認証を行うように構成された認証サービスに送信することをさらに備える、条項３２〜３７に記載の方法。
【０１１４】
条項３９．前記受信者が前記第１のアプリケーションに対応する、条項３２〜３８に記載の方法。
【０１１５】
条項４０．前記受信者が認証サービスに対応する、条項３２〜３９に記載の方法。
【０１１６】
本開示の上述の実施形態が、本開示の原理を明確に理解するために記述される実装の単なる可能な例であることを強調されたい。本開示の精神及び原理から実質的に逸脱することなく、多くの変形及び修正を上述の実施形態（複数可）に加えてもよい。すべてのこのような修正及び変形は、本開示の範囲内で本明細書に含まれ、かつ以下の請求項によって保護されるように意図される。
【図１Ａ】
2020024764.tif 000003
【図１Ｂ】
2020024764.tif 000004
【図２Ａ】
2020024764.tif 000005
【図２Ｂ】
2020024764.tif 000006
【図３】
2020024764.tif 000007
【図４】
2020024764.tif 000008
【図５】
2020024764.tif 000009
【図６】
2020024764.tif 000010
【図７】
2020024764.tif 000011
【図８】
2020024764.tif 000012