JP2016520230A - 安全な承認システム及び方法 - Google Patents
安全な承認システム及び方法 Download PDFInfo
- Publication number
- JP2016520230A JP2016520230A JP2016515126A JP2016515126A JP2016520230A JP 2016520230 A JP2016520230 A JP 2016520230A JP 2016515126 A JP2016515126 A JP 2016515126A JP 2016515126 A JP2016515126 A JP 2016515126A JP 2016520230 A JP2016520230 A JP 2016520230A
- Authority
- JP
- Japan
- Prior art keywords
- secure
- authentication
- token
- user
- secure token
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
- H04L63/0838—Network architectures or network communication protocols for network security for authentication of entities using passwords using one-time-passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0807—Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Telephonic Communication Services (AREA)
- Storage Device Security (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
【課題】安全なユーザ認証ためのシステム及び方法。【解決手段】ある特定の実施形態において、スマートフォン等のクライアントデバイスには、安全な鍵及び/または他の秘密情報がプロビジョニングされ得る。クライアントデバイスは、認証プロセスと関連して使用される固有の安全なトークン及び/または他の信用証明書を生成するために使用され得る。ユーザは、管理されたサービスにアクセスする要求と関連して、生成されたトークン及び/または他の信用証明書をサービスプロバイダに提供し得る。生成されたトークン及び/または他の信用証明書の有効性は、サービスプロバイダと通信している認証サービスによって確認され得る。【選択図】図6
Description
本願発明は、ワンタイムパスワード(「OTP」)認証プロセスを使用した安全なユーザ認証を容易にするシステム及び方法に関する。
[関連出願の相互参照]
本出願は、米国特許法第119条(e)の下で、2013年5月23日に出願された米国仮特許出願第61/826,613号、表題「SECURE AUTHORIZATION SYSTEMS AND METHODS」に対する優先権の利益を主張するものであり、その内容は、参照によりその全体が本明細書に組み込まれる。
本出願は、米国特許法第119条(e)の下で、2013年5月23日に出願された米国仮特許出願第61/826,613号、表題「SECURE AUTHORIZATION SYSTEMS AND METHODS」に対する優先権の利益を主張するものであり、その内容は、参照によりその全体が本明細書に組み込まれる。
[著作権承認]
本特許文献の開示の一部分は、著作権保護を受ける資料を含み得る。著作権所有者は、米国特許商標局の特許ファイルまたは記録に現れるような特許文書または特許開示を、第三者がファクシミリで複製することに異存はないが、その他の場合には、著作権に関する全ての権利を保有するものである。
本特許文献の開示の一部分は、著作権保護を受ける資料を含み得る。著作権所有者は、米国特許商標局の特許ファイルまたは記録に現れるような特許文書または特許開示を、第三者がファクシミリで複製することに異存はないが、その他の場合には、著作権に関する全ての権利を保有するものである。
ユーザ認証技術は、様々な用途に使用することができる。例えば、ユーザ認証プロセスは、(例えば、金融記録、個人記録、機密記録、業務記録、もしくは医療記録、及び/または同類のものへのアクセスを提供する、オンラインまたは販売時点金融取引の場合のように、ユーザが機密データにアクセスすることを許可する前に、及び/またはユーザがデータに対して機密操作を行うことを許可する前に、ユーザの識別情報または同類のものを検証することによって)オンラインサービス等のリソースを管理するコンピュータシステムが、リソースへのアクセスを提供する前に、ユーザがリソースへのアクセス権を有することを確認することを可能にする。同様に、ユーザ認証は、物理的アクセスまたは在庫管理システムと関連して使用され得、ある特定の識別信用証明書の示された所有権(例えば、建物及び/もしくは建物内のある領域または同類のものへのアクセス、病院内の医療用在庫キャビネットへのアクセス、等)に基づいて、保護された領域及び/または在庫へのユーザの物理的アクセス権を検証することを可能にする。
本明細書で開示されるシステム及び方法は、ワンタイムパスワード(「OTP」)認証プロセスを使用した安全なユーザ認証を容易にする。開示される実施形態と一致するOTP認証プロセスは、経時的に変化する、ならびに/または単一の認証トランザクションに対して、及び/または特定の期間にわたって有効である、パスワード、鍵、及び/または他の適切な信用証明書を使用し得る。ある実施形態において、開示されるOTP認証プロセスと関連して使用されるパスワード、鍵、及び/または他の適切な信用証明書は、ユーザが認証トランザクションを行うことを望むときに、ランダムプロセス及び/または擬似乱数プロセスに基づいて生成され得る。とりわけ、本明細書で開示される実施形態と一致するOTP認証プロセスは、不正なパーティによるリプレイアタックからの強化された保護を含む、静的パスワード認証プロセスに勝る、ある特定の利点を提供し得る。
ある特定の実施形態において、ユーザは、例えば、開示されるOTP認証プロセスと関連するスマートフォンまたは他のモバイルデバイス等の、クライアントデバイスを使用し得る。クライアントデバイス及び/またはクライアントデバイス上で実行するアプリケーションには、安全な鍵、ならびに/またはOTP認証プロセスと関連して使用されるトークン、パスワード、鍵、及び/または他の信用証明書を生成するために使用され得る他の秘密情報がプロビジョニングされ得る。いくつかの実施形態において、安全な鍵及び/または他の秘密情報は、認証サービスプロバイダ及び/または他の信頼できる機関によってプロビジョニングされ得る。
安全な鍵及び/または他の秘密情報に基づいて、クライアントデバイスは、OTP認証プロセスと関連して使用するためのトークン、パスワード、鍵、及び/または他の信用証明書を生成し得る。クライアントデバイスのユーザは、リソースにアクセスするユーザの権利を検証するために、生成したトークン、パスワード、鍵、及び/または他の信用証明書を、リソースを管理するシステム(例えば、サービスプロバイダシステム、アクセス制御システム等)に提供する。ある特定の実施形態において、システムは、認証サービスシステムと通信して、ユーザが管理されたリソースにアクセスする特定の権利を有するかどうかを判定することと関連する、ユーザによって提供されるトークン、パスワード、鍵、及び/または他の信用証明書の信頼性を検証する。
開示されるOTPユーザ認証プロセスの実施形態と関連してスマートフォン等のクライアントデバイスを使用することは、例えばキーカードまたはドングルのような分離した専用の認証デバイスの必要性を取り除くことによって、展開コストを削減し得、及び/またはOTPベースの認証を採用し易くし得る。加えて、開示されるシステム及び方法のいくつかの実施形態は、ショートメッセージサービス(「SMS」)OTP認証プロセスの場合にあり得るように、トークン、パスワード、鍵、及び/または他の信用証明書が生成されるときに、及び/または別様には、それらがユーザに提供されるときに、クライアントデバイスが、他のシステム及び/またはサービスに対してある特定の接続性を有することを必要とし得ない。さらに、クライアントデバイス上で実行するサードパーティの認証サービス及び/またはダウンロード可能なトークン認証アプリケーションの使用は、様々な管理されたリソース及び/またはサービスと関連する、開示される安全なOTPユーザ認証プロセスの実施形態の統合を容易にし得る。
本発明の作用の主体は、添付図面と併せて以下の詳細な説明を参照することによって容易に理解されるであろう。
本開示の実施形態と一致する、安全なユーザ認証のためのシステムを例示する図である。
本開示の実施形態と一致する、安全なユーザ認証のためのモバイルアプリケーションのインターフェースを例示する図である。
本開示の実施形態と一致する、安全なユーザ認証を実現するサービスインターフェースを例示する図である。
本開示の実施形態と一致する、モバイルデバイスによって認証トークンを生成するための方法のフローチャートを例示する図である。
本開示の実施形態と一致する、サービスプロバイダのユーザ認証のための方法のフローチャートを例示する図である。
本開示の実施形態と一致する、ユーザを認証するための方法のフローチャートを例示する図である。
本開示のシステム及び方法のある特定の実施形態を実現するために使用され得るシステムを例示する図である。
本開示の実施形態と一致するシステム及び方法の詳細な説明は、下に提供される。複数の実施形態が説明されるが、本開示は、任意の一実施形態に限定されるものではなく、代わりに、多数の代替物、変形物、均等物を包含することを理解されたい。加えて、本明細書で開示される実施形態の完全な理解を提供するために、多数の具体的な詳細が以下の説明に記載されるが、いくつかの実施形態は、これらの詳細の一部または全てを伴わずに実践することができる。さらに、明確にする目的で、関連技術において知られているある特定の技術資料は、本開示を不必要に不明瞭にすることを回避するために、詳細に説明されていない。
本開示の実施形態は、図面を参照することによって理解され得、同じ部分は、同じ数字によって表され得る。開示される実施形態の構成要素は、全般的に本明細書で図面において説明され、例示されるように、多種多様な異なる構成で配設し、設計することができる。したがって、本開示のシステム及び方法の実施形態の以下の詳細な説明は、特許請求される本開示の範囲を限定することを意図するものではなく、単に、本開示の可能な実施形態を表したものに過ぎない。加えて、本明細書で開示される任意の方法のステップは、別途指定されない限り、必ずしも任意の特定の順序で、さらには連続的に実行する必要があるというわけではなく、また、ステップを1度だけ実行する必要があるというわけでもない。
本明細書で開示される実施形態は、安全なユーザ認証を可能にする。ある特定の実施形態において、本明細書で説明されるシステム及び方法は、例えば、2006年10月18日に出願され、米国特許出願公開第2007/0180519 A1号として公開された、本発明の譲受人に譲渡された、同時係属で係属中の米国特許出願第11/583,693号「Digital Rights Management Engine Systems and Methods」(「693号出願」)で説明されているもの等の、デジタル権利管理(「DRM」)技術、及び/または本発明の譲受人に譲渡された、米国特許第8,234,387号、「Interoperable Systems and Methods for Peer−to−Peer Service Orchestration」(「387号特許」)で説明されているもの等の、サービス編成及びDRM技術と関連して使用することができる。これらのシステム及び方法は、その中で用いられる構成要素、システム、及び方法の多くと同様に、新規であることが認識されるであろう。
図1は、本開示の実施形態と一致する、安全なユーザ認証のためのシステムを例示する。ある特定の実施形態において、ユーザ100は、例えばサービスプロバイダシステム102によって管理されるオンラインサービス104(例えば、オンライン金融アカウント、データベース等)等の、リソースにアクセスすることを望み得る。ある特定の実施形態において、ユーザ100は、モバイルデバイス110及び/またはコンピュータ101を使用して、サービスプロバイダのシステム102にリモートにアクセスし得る。他の実施形態において、ユーザは、(例えば、POS端末、ATM、キオスク、及び/または同類のものの場合と同様であり得るように)サービスプロバイダのシステム102に直接アクセスし得る。したがって、いくつかの実施形態において、システム101、102、及び/または110によって行われる動作のいくつかは、図1と関連して提供される以下の実例となる説明と異なって組み合わせられ得るか、または分配され得ることを認識するであろう。さらに、オンラインサービス104と関連して例示されているが、サービスプロバイダシステム102は、ユーザ100がアクセスすることを望み得る様々な他の種類のリソースへのアクセスを管理し得ることが認識されるであろう。例えば、いくつかの実施形態において、サービスプロバイダシステム102は、1人以上のユーザによる保護された領域、ある特定の在庫品目、及び/または同類のものへの物理的アクセスを管理するように構成された物理的アクセス及び/または在庫管理システムを備え得る。
開示されるシステム及び方法のある特定の実施形態と一致して、サービスプロバイダシステム102は、ユーザ100が管理されたリソースへのアクセス権を有することを検証するために、安全な認証プロセスを実現し得る。例えば、ある特定の実施形態では、安全なトークン120の知識をサービスプロバイダシステム102及び/または別の関連システムに示すことによって、ユーザ100は、サービスプロバイダシステム102によって管理されるリソースへのユーザのアクセス権を検証し得る。下でさらに詳細に論じるように、ある特定の実施形態において、ユーザ100は、安全なトークン120を生成するために、クライアントデバイス110上で実行する認証トークンアプリケーション116を使用し得る。いくつかの実施形態において、安全なトークン120は、安全な鍵114に少なくとも部分的に基づいて生成され得る。いくつかの実施形態において、安全な鍵114は、認証サービスシステム106の個人化サービス112によって、クライアントデバイス110にプロビジョニングされ得る。いくつかの実施形態において、認証サービスシステム106は、ユーザ100によって(例えば、デバイス101及び/または110を介して)システム102に提供される安全なトークン120を検証することと関連して、サービスプロバイダシステム102と通信し得る。ある特定の実施形態において、認証サービスシステム106は、表現的状態転送(「REST」)APIを使用するHTTP認証サービスを備え得る。別個のシステムとして例示されているが、他の実施形態では、サービスプロバイダシステム102、認証サービスシステム106、ならびに/またはクライアントデバイス101及び110のある特定の機能が、単一のシステムによって、及び/または任意の適切なシステムの組み合わせによって行われ得ることを認識されるであろう。
サービスプロバイダシステム102、認証サービスシステム106、クライアントデバイス110、クライアントデバイス101、及び/または1つ以上の他の関連システム(図示せず)は、本明細書で開示されるシステム及び方法の実施形態を実現するように構成された任意の適切なコンピューティングシステムまたはシステムの組み合わせを備え得る。ある特定の実施形態において、サービスプロバイダシステム102、認証サービスシステム106、クライアントデバイス101及び/もしくは110、ならびに/または他の関連システムは、関連非一時的コンピュータ可読記憶媒体に記憶された命令を実行するように構成された少なくとも1つのプロセッサシステムを備え得る。下でさらに詳細に論じるように、サービスプロバイダシステム102、認証サービスシステム106、クライアントデバイス101及び/もしくは110、ならびに/または他の関連システムは、信頼できる信用証明書及び/または鍵の管理、トークンの生成及び/または検証、ならびに/または本明細書で開示されるシステム及び方法の他の態様等の機密動作を行うように構成された安全な処理ユニット(「SPU」)をさらに備え得る。サービスプロバイダシステム102、認証サービスシステム106、クライアントデバイス101及び/もしくは110、ならびに/または他の関連システムは、1つ以上の関連ネットワーク接続を介してシステム101、102、106、110の間の情報の電子通信を可能にするように構成されたソフトウェア及び/またはハードウェアをさらに備え得る。
サービスプロバイダシステム102、認証サービスシステム106、ならびに/またはクライアントデバイス101及び/もしくは110は、本明細書で開示されるシステム及び方法の実施形態を実現するように構成された1つ以上のアプリケーションを実行するコンピューティングデバイスを備え得る。ある特定の実施形態において、サービスプロバイダシステム102、認証サービスシステム106、ならびに/またはクライアントデバイス101及び/もしくは110は、開示されるシステム及び方法と関連して利用され得る、ラップトップコンピュータシステム、デスクトップコンピュータシステム、スマートフォン、タブレットコンピュータ、サーバシステム、ゲーミングシステム、現金自動預払機(ATM)、キオスク、ならびに/または任意の他のコンピューティングシステム及び/もしくはデバイスを備え得る。ある特定の実施形態において、サービスプロバイダシステム102、認証サービスシステム106、ならびに/またはクライアントデバイス101及び/もしくは110は、とりわけ、安全な鍵114をプロビジョニングし、安全なトークン120を生成し、リソースへのアクセスを管理し、かつ/または安全なトークン120の信頼性を検証するように構成されたソフトウェア及び/またはハードウェアを備え得る。いくつかの実施形態において、そのような機能は、サービスプロバイダシステム102、認証サービスシステム106、ならびに/またはクライアントデバイス101及び/もしくは110上で実行する1つ以上のアプリケーション(例えば、認証サービス108、個人化サービス112、認証トークンアプリケーション116、及び/またはオンラインサービス104)を使用して実現され得る。
ある特定の開示される実施形態は、汎用クライアントデバイス110を、安全なタグの認証及び/または存在確認と関連して使用することを可能にし得る。例えば、ある特定の実施形態では、開示される実施形態のある特定の態様を実現するために、認証トークンアプリケーション116(例えば、安全なトークンの生成と関連して使用するための認証サービスシステム106及び/または別の信頼できるサービスプロバイダによって提供されるアプリケーション)を実行する汎用スマートフォン及び/またはタブレットコンピューティングデバイスが利用され得る。いくつかの実施形態において、クライアントデバイス110として汎用スマートフォン及び/またはタブレットコンピューティングデバイスを使用することは、展開コストを削減し得、及び/または開示されるシステム及び方法の実施形態を実現する、OTPベースの認証プロセスを採用し易くし得る。
種々のシステム102、106、110は、任意の適切な数のネットワーク及び/またはネットワーク接続を備える1つ以上ネットワークを介して通信し得る。ネットワーク接続は、様々なネットワーク通信デバイス及び/またはチャネルを備え得、また、接続されたデバイスとシステムとの間の通信を促進する任意の適切な通信プロトコル及び/または規格を利用し得る。ネットワーク接続は、例えば、インターネット、ローカルエリアネットワーク、仮想プライベートネットワーク、ならびに/または1つ以上の電子通信技術及び/もしくは規格(例えば、イーサネット(登録商標)または同類のもの)を利用する任意の他の通信ネットワークを備え得る。いくつかの実施形態において、ネットワーク接続は、パーソナル通信システム(「PCS」)等の無線キャリアシステム、及び/または任意の適切な通信規格及び/またはプロトコルを組み込んだ任意の他の適切な通信システムを備え得る。さらなる実施形態において、ネットワーク接続は、例えば、符号分割多重アクセス(「CDMA」)、モバイル通信用グローバルシステムもしくはGroupe Special Mobile(「GSM」)、周波数分割多重アクセス(「FDMA」)、及び/または時分割多重アクセス(「TDMA」)技術を利用する、アナログモバイル通信ネットワーク及び/またはデジタルモバイル通信ネットワークを備え得る。ある特定の実施形態において、ネットワーク接続は、1つ以上の衛星通信リンクを組み込み得る。なおさらなる実施形態において、ネットワーク接続は、IEEEの802.11規格、Bluetooth(登録商標)、超広帯域(「UWB」)、Zigbee(登録商標)、及び/または任意の他の適切な通信プロトコル(複数可)を利用し得る。
オンラインサービス104によって認証することを望むユーザ100は、個人化サービス112によって個人化されるモバイルデバイス等の、クライアントデバイス110を有し得る。個人化サービス112は、認証サービスシステム106及び/または別の信頼できる機関と関連付けられ得る。クライアントデバイス110を個人化するために、ユーザ100は、最初に、認証サービスシステム106及び/または他の信頼できる機関によって、自分の識別情報及び/または自分のオンラインサービス104へのアクセス権を認証し得る。ある特定の実施形態では、認証サービスシステム106及び/または他の信頼できる機関によってユーザの識別情報及び/またはオンラインサービス104へのアクセス権を認証することと関連して、ユーザ名及び/またはパスワード認証、生体認証、個人識別番号認証、及び/または任意の他の適切な種類の認証技法が利用され得る。
ある特定の実施形態において、ユーザ認証は、ユーザ100、サービスプロバイダシステム102及び/もしくはオンラインサービス104、ならびに/または認証サービスシステム106が関与する取引と関連して行われ得る。例えば、ユーザ100は、オンラインサービス104へのアクセス権を購入することを望み得る。購入トランザクションの一部として、オンラインサービス104へのユーザのアクセス権及び個人化された関連クライアントデバイス110を有する権利は、認証サービスシステム106及び/または他の信頼できる機関によって認証され得る。
認証サービスシステム106及び/または他の信頼できる機関によってユーザ100を認証すると、個人化サービス112は、本明細書で開示される実施形態と一致する安全なOTPユーザ認証プロセスと関連して使用するためのクライアントデバイス110を個人化し得る。ある特定の実施形態において、個人化プロセスの一部として、クライアントデバイス110には、安全なOTPトークン120を生成するために使用され得る安全な鍵114及び/または他の秘密情報がプロビジョニングされ得る。いくつかの実施形態において、安全な鍵114は、関連クライアントデバイス110に固有の鍵であり得る。本明細書で開示される実施形態は、安全な鍵114に関して論じられているが、OTP認証プロセスの実施形態と関連して使用されるトークン、パスワード、鍵、及び/または他の信用証明書を生成するために使用され得る任意の他の秘密情報も使用され得ることが認識されるであろう。下でさらに詳細に論じるように、ある特定の実施形態において、認証サービスシステム106及び/または他の信頼できる機関によってクライアントデバイス110にプロビジョニングされる安全な鍵114は、クライアントデバイス110上で動作する安全な鍵箱118に記憶され得る。
クライアントデバイス110には、とりわけ、ユーザ100が、安全なOTP認証プロセスと関連して安全なトークン120を生成する要求を行うこと、及び/またはそのような安全なトークン120を生成することを可能にするように構成された認証トークンアプリケーション116がさらにプロビジョニングされ得る。ある特定の実施形態において、認証トークンアプリケーション116は、認証サービスシステム106及び/または別の信頼できる機関によって、クライアントデバイス110に提供され得る。さらなる実施形態において、認証トークンアプリケーション116は、「アプリストア」または同類のもの等の様々なアプリケーションを提供するオンラインリソースから、クライアントデバイス110にダウンロードされ得る。
オンラインサービス104へのユーザのアクセス権を認証するために、いくつかの実施形態において、ユーザは、最初に、クライアントデバイス110及び/またはその上で実行する認証トークンアプリケーション116によって安全なトークン120を生成する要求を行い得る。他の実施形態において、そのような要求は、例えばサーバ102によって、及び/またはユーザのデバイスの上で動作するクライアントアプリケーションによって自動的に行うことができる。本明細書で開示されるいくつかの実施形態は、安全なトークン120に関して論じられるが、他の実施形態は、開示される認証プロセスの実施形態と関連して、生成されるトークン、パスワード、鍵、及び/または他の信用証明書を利用し得ることが認識されるであろう。下でさらに詳細に論じるように、ある特定の実施形態において、安全なトークン120は、例えば、安全なトークン120の生成中に、安全な鍵114及び/または関連した安全なトークン生成アルゴリズムの秘密性及び/または完全性を保護するように構成された安全な鍵箱118等の、保護された処理環境の中で生成され得る。
いくつかの実施形態において、安全なトークン120は、安全な鍵114に少なくとも部分的に基づいて生成され得る。ある特定の実施形態において、安全なトークン120は、安全な鍵114、及び、例えば同期されたカウンタ及び/またはクロックによって提供される値等の、クライアントアプリケーション110と認証サービスシステム106との間で共有される他の情報を使用して算出を行うことによって生成され得る。例えば、いくつかの実施形態において、安全なトークン120は、安全な鍵114及びクロックによって提供される値を使用して、暗号ハッシュ及び/またはダイジェスト算出を行うことによって生成され得る。さらなる実施形態において、安全な鍵114を生成することと関連して使用される他の情報は、共有された非ランダム値、ランダム値、及び/または擬似ランダム値であり得る。ある特定の実施形態において、安全なトークン120を生成することと関連して使用される情報(例えば、安全な鍵144、カウンタ及び/またはクロックによって提供される値等)は、クライアントデバイス110及び/または認証サービスシステム106の双方が利用可能であり得、及び/または別様には、それらと同期もしくは共有され得る。いくつかの実施形態において、安全なトークン120は、時間ベースのワンタイムパスワード(「TOTP」)アルゴリズムを使用して生成され得る。
安全なトークン120は、様々な他の方法で生成され得る。例えば、いくつかの実施形態において、安全なトークン120は、HMACベースのワンタイムパスワード(「HOTP」)アルゴリズムを使用して生成され得る。さらなる実施形態において、安全なトークン120は、以前に生成された安全なトークンに少なくとも部分的に基づいて生成され得る。なおさらなる実施形態において、安全なトークン120は、ユーザ100によって提供されるチャレンジに対する応答に少なくとも部分的に基づいて生成され得る。様々な他の方法が、安全なトークン120を生成することと関連して利用され得ること、及び任意の適切な方法または方法の組み合わせが、開示される認証プロセスの実施形態と関連して使用され得ることが認識されるであろう。
プロビジョニングされた安全な鍵114は、安全な鍵箱118等の保護された処理環境の中のクライアントデバイス110によって記憶され得る。ある特定の実施形態において、安全な鍵箱118は、安全な鍵114の秘密性及び/または完全性を保護するように構成され得る。安全な鍵箱118は、クライアントデバイス110によって安全なトークン120を生成するために使用される安全な計算と関連して使用されるソフトウェアコードをさらに保護し得る。いくつかの実施形態では、本発明の譲受人に譲渡された米国特許第7,430,585号(「585号特許」)及び/または米国特許第5,892,900号(「900号特許」)で説明されるもの等の、保護された処理環境及び/または安全な処理ユニットが使用され得、それぞれ、参照により本明細書に組み込まれる。
いくつかの実施形態において、安全な鍵箱118は、関連した安全なトークン120生成方法の実行中であっても、安全な鍵114を暗号化した状態に維持することを可能にする、ホワイトボックス暗号化方法を使用し得る。ある特定の実施形態において、安全な鍵箱118は、安全な鍵114をクリアテキストに晒すことなく、安全なトークン120を生成することと関連して安全な鍵114を記憶すること、及び/または使用することを可能にし得る。例えば、いくつかの実施形態において、安全な鍵箱118は、オープンアーキテクチャを有するクライアントデバイス100のコード及び/またはメモリの安全な鍵114を晒すことなく、安全な鍵114の記憶及び/または使用を可能にし得る。いくつかの実施形態において、安全な鍵箱は、whiteCryption Corporationによって提供される安全な鍵箱技術を使用して実現される(例えば、www.cryptanium.com/secure_key_boxを参照されたい)。
安全な鍵箱118は、実行時にロード及び/または解読され得る静的鍵及び/または暗号化された動的鍵の双方と関連して使用され得る。さらなる実施形態において、異なるクライアントデバイス110と関連付けられた別個の安全な鍵箱118は、異なる暗号化フォーマットを使用して安全な鍵114を記憶し得、及び/または該安全な鍵に対して動作し得る。ある特定の実施形態において、安全な鍵箱118は、クライアントデバイス110に含まれる専用のセキュリティハードウェアを使用することなく、安全な鍵114の保護及び/または該安全な鍵を使用して行われる計算を可能にし得る。
いくつかの実施形態において、例えば安全な鍵114等の安全な情報は、安全な鍵箱118から送信されるときに暗号化され得る。ある特定の実施形態において、安全な鍵114は、認証サービスシステム106上で動作する別個の安全な鍵箱(図示せず)において該認証サービスシステムによって管理され得る。認証サービスシステム106の安全な鍵箱から、クライアントデバイス110の個人化プロセスの一部として送信されたときに、認証サービスシステム106の安全な鍵箱は、クライアントデバイス110の安全な鍵箱118と共有される共通のエクスポート鍵によって安全な鍵114を暗号化し得る。クライアントデバイス110が受け取った時点で、安全な鍵箱118は、安全なトークン120を生成することと関連して使用するための共通のエクスポート鍵を使用して、受け取った暗号化した安全な鍵114を解読し得る。
安全な鍵114及び/または安全な鍵114を使用して行われる動作(例えば、安全なトークン120を生成するために使用される計算)を保護するために、クライアントデバイス110と関連して、ソフトウェアの難読化及び/または完全性保護技法がさらに実現され得る。例えば、いくつかの実施形態では、完全性の保護、難読化、反海賊行為、反デバッグ、及び共有されたライブラリの保護が挙げられるが、それらに限定されない、様々なセキュリティ技法が、(例えば、安全な鍵箱118の外の及び/またはその中の)安全な鍵114を利用して動作を行うソフトウェアコードに適用され得る。ある特定の実施形態では、統合された保護機構が、関連ソフトウェアコードの異なる層に適用され得る。いくつかの実施形態では、本発明の譲受人に譲渡された米国特許第6,668,325 B1号、「Obfuscation Techniques for Enhancing Software Security」、米国特許出願第11/102,306号(公開第2005/0183072 A1号)、「Software Self−Defense Systems and Methods」、米国特許出願第11/737,428号(公開第2008/0028474 A1号)、「Systems and Methods for Watermarking Software and Other Media」、及び/または米国特許出願第10/172,682号(公開第2003/0023856 A1号)、「Software Self−Checking Systems and Methods」で説明されているもの等の、ソフトウェアの難読化及び/またはコードチェック技法を使用することができ、それぞれ、参照により本明細書に組み込まれる。
いくつかの実施形態では、安全な鍵114を使用して動作を行うように構成されたソフトウェアコードが攻撃者によって改変されることを防止するために、完全性保護技法が使用され得る。例えば、いくつかの実施形態では、いくつかの完全性チェッカーが、関連付けられたバイナリファイルの特定の範囲(例えば、コードの重複範囲)を監視するように構成されたソフトウェアコードの中へ挿入され得る。アプリケーションが改変された場合は、挿入されたチェッカー(例えば、チェックサム)がもはや以前に生成されたバイナリフットプリントと一致し得ず、アプリケーションは、実行を終了することによってそれ自体を防御することができる。ある特定の実施形態において、チェッカーは、それらが他のチェッカーを保護し、また、検出することが比較的困難であるような、及び/または削除に時間がかかるような様式で挿入され得る。
いくつかの実施形態では、静的分析ツールが、関連付けられた実行可能形式においてある特定の機能を識別することを困難にするように、安全な鍵114を使用して行われる動作と関連付けられたコードを変換するために、ソフトウェア難読化技法が使用され得る。安全な鍵114及び/または安全な鍵114を使用して行われる動作を保護するために、様々なソフトウェア難読化技法が使用され得、該技法としては、例えば、関連付けられたバイナリコードでメッセージコールを難読化すること、文字列リテラルが容易に読み出しできないように、また、そのようなリテラルが処理される前にだけ復号化されるように、文字列リテラルをコードで難読化すること、反デバッグコードのインスタンスを保護されたコードの中へ挿入すること、ジェイルブレイクされたクライアントデバイス110上で実行されていることを検出した場合にそのコードの完全性を保護するセキュリティ機構を実現すること、実行時にメモリの中へ解読される添付のスタブによって、関連付けられた実行可能バイナリコードが暗号化されるように、バイナリファイルをパックすること、クラッシュにつながる関連アプリケーションのプログラム状態を損なわせるように構成された防御コードを含むこと、及び/または同類のことが挙げられる。
ある特定の実施形態において、安全なトークン120は、ユーザ120からの要求に応じて、クライアントデバイス110によって生成され得る。さらなる実施形態において、安全なトークン120は、クライアントデバイス100によって自動的に生成され得る。いくつかの実施形態において、生成された安全なトークン120は、経時的に(例えば、30秒毎等に)更新され得る。例えば、安全なトークン120が、安全な鍵114の暗号ハッシュ及び共有されたクロックによって提供される値を計算することによって計算される実施形態において、安全なトークン120は、クロック値が増加するにつれて定期的に更新され得る。いくつかの実施形態において、ユーザ100には、安全なトークン120が(例えば、表示されたカウンタまたは同類のものを介して)クライアントデバイス110でいつ定期的に更新されるかに関する表示が提供され得る。
オンラインサービス104及び/またはサービスプロバイダシステム102によって管理される別のリソースにアクセスすることを望むユーザ100は、該ユーザがオンラインサービス104及び/または管理されるリソースへのアクセス権を有するかどうかを判定する際に使用するためのある特定の認証信用証明書122をサービスプロバイダシステム102に提供し得る。本明細書で開示される実施形態と一致して、認証信用証明書122は、クライアントデバイスによって生成される安全なトークン120を含み得る。さらなる実施形態において、認証信用証明書122は、例えば、ユーザ名及び/もしくはユーザ100と関連付けられた他の識別情報、ならびに/またはパスワードを含む、様々な他の認証情報を含み得る。
サービスプロバイダシステム102は、認証信用証明書122に基づいて認証クエリ124を生成し得る。認証クエリ124は、とりわけ、ユーザ100によって提供される安全なトークン120を含み得る。認証クエリ124は、認証信用証明書122に含まれる他の認証情報(例えば、ユーザ名、パスワード等)、ユーザ100がアクセスしたいサービス及び/もしくはリソースに関する情報、ならびに/または同類のものをさらに含み得る。サービスプロバイダシステム102は、認証クエリ124を認証サービスシステム106に送信し得る。
認証クエリ124を受け取ると、認証サービスシステム106は、例えばその上で実行する認証サービスアプリケーション108を使用して、認証プロセスを行い得る。ある特定の実施形態において、認証プロセスは、少なくとも部分的に認証サービスシステム106及び/またはクライアントデバイス110の間で共有される鍵114を使用した、安全なトークンの生成を含み得る。例えば、認証サービスシステム106は、共有された安全な鍵114ならびに共有された及び/または別様には同期されたクロックによって生成される値を使用して暗号ハッシュまたは他の計算を行うことによって、安全なトークンを生成し得る。認証サービスシステム106によって生成される安全なトークンは、ユーザ100によって提供される、クライアントデバイス110によって生成される安全なトークン120と比較され得る。安全なトークンが一致する場合、ユーザ100が認証され得る。安全なトークンが一致しない場合、ユーザ100は認証され得ない。いくつかの実施形態において、時間値における有効ビットの数は、サーバのクロックとクライアントの(例えば、最も近い瞬間と測定され得る時間)との間の予め定義された誤差の範囲を可能にするように選択することができる。
ある特定の実施形態において、認証サービスシステム106は、ユーザによって提供される安全なトークン120が、特定の期間内に認証サービスシステム106によって生成された、及び/または生成することができた安全なトークンと一致するかどうかを判定し得る。すなわち、認証サービスシステム106は、安全なトークン120が「新しい」ことを確認し得る。安全なトークン120が、特定の期間内に認証システム106によって生成された、及び/または生成することができた安全なトークンではない(すなわち、「新しく」ない)場合、より早い時間に認証サービスシステム106によって受け取った場合に認証され得たか、及び/または有効であり得たかどうかに関係なく、認証サービスシステム106は、安全なトークン120が本物でないと、及び/または別様には無効であると判定し得る。このようにして、より古い安全なトークンを使用する、可能なリプレイアタックが軽減され得る。いくつかの実施形態において、認証システム106は、現在の時刻、ならびに予め定義された数の以前の時間間隔及び/または将来の時間間隔に基づいて、トークン値を算出し得、そして、受け取ったトークンとこのウィンドウにおいて算出されたトークンのいずれかとの間に一致がある限り、受け取ったトークンが新しく、かつ本物であると判定し得、それによって、クライアントのクロックとサーバのクロックとの間の厳密な同期性の可能な欠如を可能にする。例えば、サーバ106は、直前、現在の時刻、及び直後のトークンを計算することができ、また、デバイス110から受け取ったトークンがこれらの3つの値のいずれか1つと一致する限り、該トークンを認証することができ、それによって、クライアント及びサーバ上の僅かな時間差による不正確な結果、クライアントとサーバとの間の送信の遅れ、遅いトークン値のユーザ入力、及び/または同類のことを回避する。
ユーザ100によって提供された安全なトークン120を含む認証信用証明書122が認証サービスシステム106によって検証されたかどうかを示す認証結果126が、サービスプロバイダシステム102に送られ得る。認証結果126に基づいて、サービスプロバイダシステム102は、ユーザ100がアクセスすることを望むオンラインサービス104及び/または他のリソースへのアクセスを許可または制限し得る。
本発明の作用の主体の範囲内で、図1と関連して提示されるアーキテクチャ及び関係に対していくつかの変更が行われ得ることが認識されるであろう。例えば、これに限定されないが、いくつかの実施形態では、認証サービスシステム106によって行われる機能の一部または全部が、サービスプロバイダシステム102によって行われ得る。同様に、クライアントデバイス101及び/または110によって行われる機能の一部または全部が、サービスプロバイダシステム102によって行われ得る。したがって、図1で例示されるアーキテクチャ及び関係が、例示及び説明の目的で提供され、限定を目的としないことが認識されるであろう。
図2は、本開示の実施形態と一致する、安全なユーザ認証のためのモバイルアプリケーションのインターフェース200を例示する。インターフェース200は、例えば、関連クライアントデバイス110を使用するユーザに表示され得る。いくつかの実施形態において、ユーザは、ユーザがトークン選択メニュー202を介してクライアントデバイス110に生成してもらいたい、安全なトークン120の種類を選択し得る。例えば、例示されるように、ユーザは、トークン選択メニュー202を介して、HOTPトークン生成及び/またはTOTPトークン生成を選択し得る。他の実施形態において、トークンの選択及び/または生成は、自動的に行われる。
ユーザがクライアントデバイス110を使用して安全なトークン120を生成したいとき、ユーザは、インターフェース200に含まれる1つ以上のトークン生成要素204を選択することによって、トークン生成プロセスを開始し得る。例示されるように、安全なトークン120は、数値的なトークンまたはコード(例えば、変化する6桁のコードまたは同類のもの)を含み得る。さらなる実施形態において、安全なトークン120は、英数字トークンまたはコードを含み得る。クライアントデバイス110が、様々な種類の安全なトークン120を生成し得ること、及び任意の適切な種類の安全なトークン120が、開示される実施形態と関連して生成され得るか、または使用され得ることが認識されるであろう。
ある特定の実施形態において、生成された安全なトークン120は、定期的に(例えば、30秒毎等に)更新され得る。例えば、安全なトークン120が、安全な鍵の暗号ハッシュ及び共有されたクロックによって提供される値を計算することによって計算される実施形態において、安全なトークン120は、クロック値が増加するにつれてインターフェース200上で定期的に更新され得る。ある特定の実施形態において、クライアントデバイス110のユーザは、インターフェース200上の適切なトークン生成要素204を選択することによって、新しい安全なトークン120の生成を終了し得る。
図3は、本開示の実施形態と一致する、安全なユーザ認証を実現するサービスインターフェース300を例示する。ある特定の実施形態において、サービスインターフェース300は、サービス及び/またはサービスプロバイダシステム102によって管理される別のリソースと関連付けられ得る。いくつかの実施形態において、サービスインターフェース300は、ウェブ−ブラウザアプリケーションを介して表示され得る。さらなる実施形態において、サービスインターフェース300は、別個のアプリケーションのインターフェースであり得る。
サービス及び/またはサービスプロバイダシステム102によって管理される別のリソースにアクセスすることを望むユーザは、最初に、該ユーザがオンラインサービス及び/または管理されるリソースへのアクセス権を有するかどうかを判定する際に使用するためのある特定の認証信用証明書をサービスプロバイダシステム102に提供するよう要求され得る。ある特定の実施形態において、そのような信用証明書は、サービスインターフェース300のログイン情報ウィンドウ302を介して提供され得る。例示されるように、ユーザは、ログイン情報ウィンドウ302内の関連フィールド304を介して、サービス及び/または他の管理されたリソースに、ユーザ名及び/もしくはユーザと関連付けられた他の識別情報(例えば、電子メールアドレス)、パスワード情報、ならびに/または、例えば図3と関連して、本明細書で開示されるトークン生成プロセスの実施形態を使用して生成される安全なトークンが挙げられるが、それらに限定されない、様々な認証信用証明書を提供し得る。適切な認証信用証明書をログイン情報ウィンドウ302に入力した後に、ユーザは、ログインボタン306を選択して、サービスプロバイダシステム102による認証プロセスを開始し得る。
図4は、本開示の実施形態と一致する、モバイルデバイスによって認証トークンを生成するための方法400のフローチャートを例示する。例示される方法400は、ソフトウェア、ファームウェア、ハードウェア、及び/またはそれらの任意の組み合わせを使用することが挙げられる、様々な方法で実現され得る。ある特定の実施形態において、方法400は、上で説明されるようにクライアントデバイスに上で実行する認証トークンアプリケーション及び/または安全な鍵箱によって、少なくとも部分的に実現され得る。
402で、ユーザから、及び/またはユーザのデバイス上で動作するアプリケーションから、安全なトークンを生成する要求を受け取り得る。ある特定の実施形態において、要求は、ある種類の安全なトークンの表示、及び/または安全なトークンを生成するために使用されるべき計算の方法を含み得る。例えば、ユーザは、HOTPトークン生成プロセス及び/またはTOTPトークン生成プロセスを使用して生成される安全なトークンを有したい旨を指定し得る。
404で、要求のパラメータに基づいて、安全なトークンが生成され得る。本明細書で開示される実施形態と一致して、安全なトークンは、認証サービスシステム及び/または別の信頼できる機関によってクライアントデバイスにプロビジョニングされる安全な鍵に基づいて生成され得る。安全な鍵に加えて、時間値、チャレンジ/応答等の他の情報、またはクライアントデバイスと認証サービスシステムとの間で共有される情報に基づいて、安全なトークンがさらに生成され得る。例えば、いくつかの実施形態において、安全なトークンは、安全な鍵及びクロックによって提供される値を使用して、暗号ハッシュ及び/またはダイジェスト算出を行うことによって生成され得る。406で、生成された安全なトークンが、(例えば、図3で示されるようなウェブインターフェース上でトークンの値を入力することによって)サーバに送信するために、クライアントデバイスのインターフェースを介してユーザに提供され得る。他の実施形態において、安全なトークンは、自動的に及び/または直接サーバに通信することができる。安全なトークンを使用して、サーバは、サービス及び/または管理されたリソースへのユーザのアクセス権を認証することができる。
図5は、本開示の実施形態と一致する、ユーザのサービスプロバイダ認証のための方法500のフローチャートを例示する。例示される方法500は、ソフトウェア、ファームウェア、ハードウェア、及び/またはそれらの任意の組み合わせを使用することが挙げられる、様々な方法で実現され得る。ある特定の実施形態において、方法500は、上で説明されるように、管理されたサービス及び/またはサービスプロバイダシステムと関連付けられたリソースによって、少なくとも部分的に実現され得る。
502で、ユーザから認証信用証明書を受け取り得る。認証信用証明書としては、ユーザ名及び/もしくはユーザと関連付けられた他の識別情報(例えば、電子メールアドレス)、パスワード情報、本明細書で開示されるトークン生成プロセスの実施形態を使用して生成される安全なトークン、ならびに/または同類のものが挙げられ得るが、それらに限定されない。504で、受け取った認証信用証明書に少なくとも部分的に基づいて、認証クエリが生成され、認証サービスに送られ得る。認証クエリは、とりわけ、認証信用証明書に含まれる、ユーザによって提供される安全なトークンを含み得る。認証クエリは、認証信用証明書に含まれる他の情報(例えば、ユーザ名、パスワード等)、ユーザがアクセスしたいサービス及び/もしくはリソースに関する情報、ならびに/または同類のものをさらに含み得る。
506で、認証クエリに応答して、認証サービスから認証結果を受け取り得る。508で、認証結果が、認証サービスによる認証クエリに含まれる情報の認証に成功したことを示すかどうかの判定が行われ得る。認証に成功しなかった場合、ユーザは、510で、サービス及び/または他の管理されたリソースへの要求されたアクセスを拒否され得る。認証が成功した場合、ユーザは、512で、サービス及び/または他の管理されたリソースへの要求されたアクセスを許可され得る。
図6は、本開示の実施形態と一致する、ユーザを認証するための方法600のフローチャートを例示する。例示される方法600は、ソフトウェア、ファームウェア、ハードウェア、及び/またはそれらの任意の組み合わせを使用することが挙げられる、様々な方法で実現され得る。ある特定の実施形態において、方法600は、上で説明されるように認証サービスシステムと関連付けられた認証サービスアプリケーション及び/または安全な鍵箱によって、少なくとも部分的に実現され得る。
602で、サービスを管理するサービスプロバイダシステムから、及び/または他のリソースから、認証クエリを受け取り得る。認証クエリは、とりわけ、ユーザによって提供される安全なトークン、他の認証信用証明書(例えば、ユーザ名、パスワード等)、ユーザがアクセスしたいサービス及び/もしくはリソースに関する情報、ならびに/または同類のものを含み得る。
604で、602で受け取った認証クエリに含まれる、または該認証クエリから取り出される安全な鍵に基づいて、認証サービスシステムによって安全なトークンが生成され得る。安全な鍵に加えて、現在の時間値、及び/またはクライアントデバイスと認証サービスシステムとの間で共有される他の情報に基づいて、安全なトークンがさらに生成され得る。例えば、いくつかの実施形態において、安全なトークンは、安全な鍵及びクロックによって提供される値を使用して、暗号ハッシュ及び/またはダイジェスト算出を行うことによって生成され得る。
606で、604で認証サービスシステムによって生成された安全なトークンが、ユーザと関連付けられたクライアントデバイスによって生成された認証クエリに含まれる安全なトークンと比較され得る。608で、604で生成された安全なトークンと認証クエリに含まれる安全なトークンが一致しているかどうかに関する比較に基づいて、判定が行われ得る。トークンが一致しなかった場合は、610で、認証クエリに含まれる安全なトークンが有効でないことを示す認証結果がサービスプロバイダシステムに送られ得る。トークンが一致した場合は、612で、認証クエリに含まれる安全なトークンが有効であることを示す認証結果がサービスプロバイダシステムに送られ得る。一致するトークンは、認証サービスシステムによって生成された安全なトークン、及びクライアントデバイスによって生成された安全なトークンが、同じ安全な鍵及び/もしくは他の情報(例えば、同期されたクロック値)に基づいて生成されたこと、ならびに/または同じ暗号計算を使用して生成されたことを示し得る。それに応じて、受け取った認証結果に基づいて、サービスプロバイダシステムが、ユーザによるサービス及び/またはリソースへのアクセスを管理し得る。
図7は、本開示のシステム及び方法のある特定の実施形態を実現するために使用され得るシステム700を例示する。システム700は、例えば、ラップトップコンピュータシステム、デスクトップコンピュータシステム、サーバコンピュータシステム、スマートフォンまたはタブレット等のモバイルデバイス、ゲーミングシステム、ATM、家電製品、及び/または本明細書で説明されるシステム及び方法を実現するように構成された任意の他のシステムまたはデバイスを備え得る。ある特定の実施形態において、システム700は、認証サービスシステムまたは他の信頼できる機関、サービスプロバイダシステム、クライアントデバイス、及び/または本明細書で開示される任意の他のシステムと関連付けられたある特定の機能を行い得る。
図7で例示されるように、システム700は、プロセッサ702と、プロセッサ702によって使用し、実行するためのプログラム及び他のデータを記憶するための、高速RAM、不揮発性メモリ、及び/または1つ以上のバルクの不揮発性コンピュータ可読記憶媒体(例えば、ハードディスク、フラッシュメモリ等)が挙げられ得る、システムメモリ704と、ディスプレイ、ならびに/または例えばタッチスクリーン、キーボード、マウス、トラックパッド、及び/もしくは同類のもの等の1つ以上の入力デバイスが挙げられ得る、ユーザインターフェース714(例えば、入力/出力インターフェース)と、1つ以上のディスケット、光記憶媒体、及び/または他のコンピュータ可読記憶媒体(例えば、フラッシュメモリ、サムドライブ、USBドングル、コンパクトディスク、DVD等)が挙げられ得るリムーバブルメモリ708とインターフェースするためのポート706と、1つ以上の通信技術を使用して、ネットワーク712を介して他のシステムと通信するためのネットワークインターフェース710と、上述した要素を通信可能に連結するための1つ以上のバス718と、を含み得る。
ある特定の実施形態において、ネットワーク712は、インターネット、ローカルエリアネットワーク、仮想プライベートネットワーク、ならびに/または1つ以上の電子通信技術及び/もしくは規格(例えば、イーサネット(登録商標)または同類のもの)を利用する任意の他の通信ネットワークを備え得る。いくつかの実施形態において、ネットワークインターフェース710及び/またはネットワーク712は、PCS等の無線キャリアシステム、ならびに/または任意の適切な通信規格及び/もしくはプロトコルを組み込んだ任意の他の適切な通信システムの一部であり得る。さらなる実施形態において、ネットワークインターフェース710及び/またはネットワーク712は、例えば、CDMA、GSM、FDMA、及び/もしくはTDMA規格を利用する、アナログモバイル通信ネットワーク及び/またはデジタルモバイル通信ネットワークの一部であり得る。なおさらなる実施形態において、ネットワークインターフェース710及び/またはネットワーク712は、1つ以上の衛星通信リンクを組み込み得、ならびに/またはIEEEの802.11規格、近距離無線通信、Bluetooth(登録商標)、UWB、Zigbee(登録商標)、及び/もしくは任意の他の適切な1つまたは複数の技術を利用し得る。
いくつかの実施形態において、システム700は、代替として、または加えて、安全な物理的及び/または仮想的セキュリティ技法を利用することによって、システム700のユーザまたは他のエンティティによる改竄から保護される、SPU716を含み得る。SPU716は、個人的管理等の機密動作の安全、ならびに/または安全な鍵及び/もしくは本明細書で開示されるシステム及び方法の他の態様の使用を強化すること及び/または促進することを補助することができる。ある特定の実施形態において、SPU716は、論理的に安全な処理ドメインの中で動作し得、また、秘密情報を保護し、該秘密情報に対して動作するように構成され得る。いくつかの実施形態において、SPU716は、SPU716が安全な動作を行うことを可能にするように構成された実行可能命令またはプログラムを記憶する、内部メモリを含み得る。
システム700の動作は、全般的に、システムメモリ704(及び/またはリムーバブルメモリ708等の、他のコンピュータ可読媒体)に記憶されたソフトウェア命令及びプログラムを実行することによって動作するプロセッサ702によって制御され得る。システムメモリ704は、システム700の動作を制御するための、様々な実行可能プログラムまたはモジュールを記憶し得る。例えば、システムメモリ704は、システムハードウェアリソースを少なくとも部分的に管理し、協調させ得、また、種々のアプリケーションを実行するための共通のサービスを提供し得る、オペレーティングシステム(「OS」)720と、安全な鍵を含む秘密情報の保護及び/または管理を含む信用及びプライバシー管理機能を実現するための、信用及びプライバシー管理システム722とを含み得る。システムメモリ704は、これらに限定されないが、システム700との、及び該システムによる通信を少なくとも部分的に可能にするように構成された通信ソフトウェア724、アプリケーション726(例えば、個人化アプリケーション、認証トークン生成アプリケーション等)、本明細書で開示される安全なトークン認証動作を行うように構成された認証サービスアプリケーション728、安全な鍵、及び安全な鍵を使用して行われる計算(例えば、暗号の計算)を保護するように構成された安全な鍵箱730、ならびに/または本明細書で開示されるシステム及び方法の実施形態を実現するように構成された任意の他の情報及び/もしくはアプリケーションをさらに含み得る。
当業者であれば、本明細書で説明されるシステム及び方法を、図7で例示されるものに類似する、もしくはそれと同一のコンピューティングデバイスによって、または図7で示される構成要素のいくつかを保有しないコンピューティングデバイス、及び/もしくは図示されていない他の構成要素を保有するコンピューティングデバイスを含む、実質的に任意の他の適切なコンピューティングデバイスによって実践することができることを認識するであろう。したがって、図7は、例示の目的で提供されており、限定を目的としないことを認識されたい。
本明細書で開示されるシステム及び方法は、任意の特定のコンピュータ、電子制御ユニット、または他の装置に本質的に関連するものではなく、また、ハードウェア、ソフトウェア、及び/またはファームウェアの適切な組み合わせによって実現され得る。ソフトウェアの実現形態としては、プロセッサまたは仮想マシンによって実行または翻訳されたときに、実行可能命令によって少なくとも部分的に定義される方法をコンピュータシステムに行わせ得るコード/命令を含む、1つ以上のコンピュータプログラムが挙げられ得る。コンピュータプログラムは、コンパイル型言語またはインタプリタ型言語が挙げられる、任意の形態のプログラミング言語で記述することができ、また、スタンドアロンのプログラムとしての形態、またはコンピューティング環境での使用に適したモジュール、構成要素、サブルーチン、もしくは他のユニットとしての形態が挙げられる、任意の形態で展開することができる。さらに、コンピュータプログラムは、1つのサイトで1つのコンピュータ上でまたは複数のコンピュータ上で実行するように展開するか、または複数のサイトにわたって分散させ、通信ネットワークによって相互接続することができる。ソフトウェアの実施形態は、プロセッサによって実行されたときに、命令に従って方法をプロセッサに行わせるように構成されたコンピュータプログラム及び命令を記憶するように構成された非一時的記憶媒体を備える、コンピュータプログラム製品として実現され得る。ある特定の実施形態において、非一時的記憶媒体は、プロセッサ可読命令を非一時的記憶媒体に記憶することができる、任意の形態をとり得る。非一時的記憶媒体は、コンパクトディスク、デジタルビデオディスク、磁気テープ、磁気ディスク、フラッシュメモリ、集積回路、及び/または任意の他の非一時的メモリが挙げられるが、それらに限定されない、任意の適切な形態で具現化され得る。
上述のものは、明確にする目的でいくらか詳細に説明されているが、その原理から逸脱することなく、特定の変更及び修正が行われ得ることが明らかになるであろう。本明細書で説明されるシステム及び方法の双方を実現する数多くの代替の方法があることに留意されたい。故に、本実施形態は、限定的なものではなく例示的なものであるとみなされるべきであり、また本発明は、本明細書に与えられる詳細に限定されるものではなく、添付の特許請求の範囲及びその均等物の範囲内で変更され得るものである。
Claims (11)
- 管理されたリソースへのユーザのアクセス権を認証するためのシステムによって行われる方法であって、
管理されたリソースと関連付けられたサービスプロバイダシステムから、前記ユーザによって前記サービスプロバイダシステムに提供された認証信用証明書を受け取ることであって、前記認証信用証明書は、前記ユーザと関連付けられたクライアントデバイスによって生成される第1の安全なトークンを含む、受け取ることと、
前記認証信用証明書に基づいて、第1の安全な鍵を取り出すことと、
前記第1の安全な鍵に基づいて、第2の安全なトークンを生成することと、
前記第1の安全なトークンを前記第2の安全なトークンと比較することと、
前記比較の結果に基づいて、認証結果を生成することと、
前記認証結果を前記サービスプロバイダシステムに送信することと、
を含む、方法。 - 前記方法は、
前記比較の前記結果に基づいて、前記第1の安全なトークンが前記第2の安全なトークンと一致すると判定することをさらに含み、
前記認証結果は、前記第1の安全なトークンが有効であるという表示を含む、請求項1に記載の方法。 - 前記方法は、
前記比較の前記結果に基づいて、前記第1の安全なトークンが前記第2の安全なトークンと一致しないと判定することをさらに含み、
前記認証結果は、前記第1の安全なトークンが有効でないという表示を含む、請求項1に記載の方法。 - 前記第2の安全なトークンを生成することは、
前記第1の安全な鍵、ならびに前記システム及び前記クライアントデバイスに共通する他の情報に基づいて、計算を行うことを含む、請求項1に記載の方法。 - 前記計算は、暗号ハッシュ計算を含む、請求項4に記載の方法。
- 前記計算は、時間ベースのワンタイムパスワード(「TOTP」)計算を含む、請求項4に記載の方法。
- 前記計算は、HMACベースのワンタイムパスワード(「HOTP」)計算を含む、請求項4に記載の方法。
- 前記他の情報は、クロックによって提供される値を含む、請求項4に記載の前記方法。
- 前記他の情報は、カウンタによって提供される値を含む、請求項4に記載の方法。
- 前記第1の安全なトークンを前記第2の安全なトークンと比較することは、前記第1の安全なトークン及び前記第2の安全なトークンがいずれも特定の期間内に生成されたと判定することを含む、請求項1に記載の方法。
- 前記管理されたリソースは、オンラインサービスを含む、請求項1に記載の方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361826613P | 2013-05-23 | 2013-05-23 | |
US61/826,613 | 2013-05-23 | ||
PCT/US2014/039415 WO2015023341A2 (en) | 2013-05-23 | 2014-05-23 | Secure authorization systems and methods |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2016520230A true JP2016520230A (ja) | 2016-07-11 |
Family
ID=51936325
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016515126A Pending JP2016520230A (ja) | 2013-05-23 | 2014-05-23 | 安全な承認システム及び方法 |
Country Status (5)
Country | Link |
---|---|
US (3) | US10021091B2 (ja) |
EP (1) | EP3000200A4 (ja) |
JP (1) | JP2016520230A (ja) |
CN (1) | CN105379177A (ja) |
WO (1) | WO2015023341A2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018117388A (ja) * | 2018-04-26 | 2018-07-26 | 日本電信電話株式会社 | 認証システム、方法及びプログラム、移動機器並びにサーバ |
JP2018117318A (ja) * | 2017-01-20 | 2018-07-26 | 日本電信電話株式会社 | 認証システム、方法及びプログラム、移動機器並びにサーバ |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9531749B2 (en) * | 2014-08-07 | 2016-12-27 | International Business Machines Corporation | Prevention of query overloading in a server application |
US20160149894A1 (en) * | 2014-11-25 | 2016-05-26 | Appright, Inc. | System and method for providing multi factor authentication |
JP6423100B2 (ja) | 2014-12-24 | 2018-11-14 | コーニンクレッカ フィリップス エヌ ヴェKoninklijke Philips N.V. | 暗号のシステム及び方法 |
US10439815B1 (en) * | 2014-12-30 | 2019-10-08 | Morphotrust Usa, Llc | User data validation for digital identifications |
EP3101535B1 (en) * | 2015-06-01 | 2022-04-13 | OpenSynergy GmbH | Method for updating a control unit for an automotive vehicle, control unit for an automotive vehicle, and computer program product |
US10013684B2 (en) | 2015-06-02 | 2018-07-03 | Bank Of America Corporation | Processing cardless transactions at automated teller devices |
KR102424055B1 (ko) * | 2015-12-08 | 2022-07-25 | 한국전자통신연구원 | 두 개의 api 토큰을 이용한 api 인증 장치 및 방법 |
EP3179395A1 (en) * | 2015-12-10 | 2017-06-14 | Thomson Licensing | Device and method for executing protected ios software modules |
US10348713B2 (en) * | 2016-09-16 | 2019-07-09 | Oracle International Corporation | Pluggable authentication for enterprise web application |
US20180091641A1 (en) * | 2016-09-28 | 2018-03-29 | Sensormatic Electronics, LLC | Repeater for frictionless access control system |
US20180095500A1 (en) * | 2016-09-30 | 2018-04-05 | Intel Corporation | Tap-to-dock |
EP3376421A1 (en) * | 2017-03-17 | 2018-09-19 | Gemalto Sa | Method for authenticating a user and corresponding device, first and second servers and system |
CA3062199A1 (en) * | 2017-05-04 | 2018-11-08 | Hangar Holdings Pty Ltd | Access control system |
US11138371B2 (en) | 2017-09-28 | 2021-10-05 | Oracle International Corporation | Editable table in a spreadsheet integrated with a web service |
EP3750273B1 (en) * | 2018-02-06 | 2024-07-10 | Sony Group Corporation | Information processing device, information processing method, and program |
US10993274B2 (en) | 2018-03-30 | 2021-04-27 | Apple Inc. | Pairing devices by proxy |
US10783929B2 (en) * | 2018-03-30 | 2020-09-22 | Apple Inc. | Managing playback groups |
US11297369B2 (en) | 2018-03-30 | 2022-04-05 | Apple Inc. | Remotely controlling playback devices |
US10887317B2 (en) * | 2018-11-28 | 2021-01-05 | Sap Se | Progressive authentication security adapter |
CN109474608B (zh) * | 2018-12-06 | 2021-01-15 | 苏州浪潮智能科技有限公司 | 一种多平台通讯方法及*** |
US11296874B2 (en) | 2019-07-31 | 2022-04-05 | Bank Of America Corporation | Smartwatch one-time password (“OTP”) generation |
US11259181B2 (en) * | 2020-07-09 | 2022-02-22 | Bank Of America Corporation | Biometric generate of a one-time password (“OTP”) on a smartwatch |
US11595214B2 (en) | 2020-11-10 | 2023-02-28 | Okta, Inc. | Efficient transfer of authentication credentials between client devices |
US11652646B2 (en) * | 2020-12-11 | 2023-05-16 | Huawei Technologies Co., Ltd. | System and a method for securing and distributing keys in a 3GPP system |
US11811929B2 (en) * | 2021-01-27 | 2023-11-07 | International Business Machines Corporation | Detection of compromised credentials |
US11750597B2 (en) * | 2021-06-18 | 2023-09-05 | Kyndryl, Inc. | Unattended authentication in HTTP using time-based one-time passwords |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030163739A1 (en) * | 2002-02-28 | 2003-08-28 | Armington John Phillip | Robust multi-factor authentication for secure application environments |
US7861082B2 (en) | 2002-05-24 | 2010-12-28 | Pinder Howard G | Validating client-receivers |
DE60309216T2 (de) * | 2003-04-04 | 2007-08-23 | Telefonaktiebolaget Lm Ericsson (Publ) | Verfahren und vorrichtungen zur bereitstellung eines datenzugriffs |
US7532723B2 (en) | 2003-11-24 | 2009-05-12 | Interdigital Technology Corporation | Tokens/keys for wireless communications |
CN101076807B (zh) * | 2004-10-15 | 2014-09-03 | 弗里塞恩公司 | 一次性密码验证的方法和*** |
US9768963B2 (en) * | 2005-12-09 | 2017-09-19 | Citicorp Credit Services, Inc. (Usa) | Methods and systems for secure user authentication |
NZ547322A (en) * | 2006-05-18 | 2008-03-28 | Fronde Anywhere Ltd | Authentication method for wireless transactions |
US8438621B2 (en) | 2007-12-21 | 2013-05-07 | General Instrument Corporation | Method and apparatus for secure management of debugging processes within communication devices |
US8353019B2 (en) * | 2010-03-26 | 2013-01-08 | Canon Kabushiki Kaisha | Security token destined for multiple or group of service providers |
EP2475144A1 (en) * | 2011-01-05 | 2012-07-11 | Gemalto SA | Method for communicating between a server and a client and corresponding client, server and system |
US8640214B2 (en) * | 2011-03-07 | 2014-01-28 | Gemalto Sa | Key distribution for unconnected one-time password tokens |
KR101273285B1 (ko) * | 2011-06-03 | 2013-06-11 | (주)네오위즈게임즈 | 인증 에이전트 장치, 온라인 서비스 인증 방법 및 시스템 |
US10102510B2 (en) * | 2012-11-28 | 2018-10-16 | Hoverkey Ltd. | Method and system of conducting a cryptocurrency payment via a mobile device using a contactless token to store and protect a user's secret key |
US9104853B2 (en) * | 2013-05-16 | 2015-08-11 | Symantec Corporation | Supporting proximity based security code transfer from mobile/tablet application to access device |
WO2017127564A1 (en) * | 2016-01-19 | 2017-07-27 | Priv8Pay, Inc. | Network node authentication |
-
2014
- 2014-05-23 EP EP14836332.8A patent/EP3000200A4/en not_active Withdrawn
- 2014-05-23 JP JP2016515126A patent/JP2016520230A/ja active Pending
- 2014-05-23 US US14/286,618 patent/US10021091B2/en active Active
- 2014-05-23 CN CN201480041639.2A patent/CN105379177A/zh active Pending
- 2014-05-23 WO PCT/US2014/039415 patent/WO2015023341A2/en active Application Filing
-
2018
- 2018-06-12 US US16/006,389 patent/US11070544B2/en active Active
-
2021
- 2021-07-06 US US17/367,860 patent/US12047372B2/en active Active
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018117318A (ja) * | 2017-01-20 | 2018-07-26 | 日本電信電話株式会社 | 認証システム、方法及びプログラム、移動機器並びにサーバ |
JP2018117388A (ja) * | 2018-04-26 | 2018-07-26 | 日本電信電話株式会社 | 認証システム、方法及びプログラム、移動機器並びにサーバ |
Also Published As
Publication number | Publication date |
---|---|
US20210344669A1 (en) | 2021-11-04 |
US10021091B2 (en) | 2018-07-10 |
WO2015023341A2 (en) | 2015-02-19 |
US20140351911A1 (en) | 2014-11-27 |
US12047372B2 (en) | 2024-07-23 |
EP3000200A2 (en) | 2016-03-30 |
EP3000200A4 (en) | 2016-06-08 |
US11070544B2 (en) | 2021-07-20 |
WO2015023341A3 (en) | 2015-04-23 |
CN105379177A (zh) | 2016-03-02 |
US20190098001A1 (en) | 2019-03-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US12047372B2 (en) | Resource access management and secure authorization systems and methods | |
CN109951489B (zh) | 一种数字身份认证方法、设备、装置、***及存储介质 | |
CN104919775B (zh) | 用于密钥链同步的***和方法 | |
US20200119904A1 (en) | Tamper-proof privileged user access system logs | |
US10523441B2 (en) | Authentication of access request of a device and protecting confidential information | |
TWI724683B (zh) | 電腦實施的用於管理用戶金鑰對的方法、用於管理用戶金鑰對的系統以及用於管理用戶金鑰對的裝置 | |
KR102177848B1 (ko) | 액세스 요청을 검증하기 위한 방법 및 시스템 | |
US20140136840A1 (en) | Computer system for storing and retrieval of encrypted data items using a tablet computer and computer-implemented method | |
CN113271212A (zh) | 取决于密钥认证的证书发布 | |
KR20210121307A (ko) | 복수의 장치로부터 데이터에 액세스하기 위한 시스템 | |
JP2008269610A (ja) | リモートアプリケーションを対象とした機密データの保護 | |
US20200295929A1 (en) | Authentication device based on biometric information and operation method thereof | |
US12033142B2 (en) | Authenticator app for consent architecture | |
US20180218364A1 (en) | Managing distributed content using layered permissions | |
KR20080087917A (ko) | 일회용 비밀번호 생성방법과 키 발급 시스템 및 일회용비밀번호 인증 시스템 | |
US20050125698A1 (en) | Methods and systems for enabling secure storage of sensitive data | |
JP6712707B2 (ja) | 複数のサービスシステムを制御するサーバシステム及び方法 | |
EP3455763B1 (en) | Digital rights management for anonymous digital content sharing | |
KR20210015534A (ko) | 보안키 관리 방법 및 보안키 관리 서버 | |
Poniszewska-Marańda et al. | Security library for safe data storage on android platform | |
US20230281585A1 (en) | Systems and Methods for Managing Network-Agnostic Smart Contracts | |
US20240259192A1 (en) | Data management system, data management method, and non-transitory recording medium | |
EP4329241A1 (en) | Data management system, data management method, and non-transitory recording medium | |
WO2024026428A1 (en) | Digital identity allocation, assignment, and management | |
JP6398308B2 (ja) | 情報処理システム、情報処理方法、及びプログラム |