JP6494584B2 - 認証方法、当該認証方法をコンピュータに実行させるプログラム、および装置 - Google Patents

認証方法、当該認証方法をコンピュータに実行させるプログラム、および装置 Download PDF

Info

Publication number
JP6494584B2
JP6494584B2 JP2016211833A JP2016211833A JP6494584B2 JP 6494584 B2 JP6494584 B2 JP 6494584B2 JP 2016211833 A JP2016211833 A JP 2016211833A JP 2016211833 A JP2016211833 A JP 2016211833A JP 6494584 B2 JP6494584 B2 JP 6494584B2
Authority
JP
Japan
Prior art keywords
authentication
user
hash
questions
server
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.)
Active
Application number
JP2016211833A
Other languages
English (en)
Other versions
JP2017073789A5 (ja
JP2017073789A (ja
Inventor
バークマン,オメル
ヨン,マルセル・エム・エム
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Publication of JP2017073789A publication Critical patent/JP2017073789A/ja
Publication of JP2017073789A5 publication Critical patent/JP2017073789A5/ja
Application granted granted Critical
Publication of JP6494584B2 publication Critical patent/JP6494584B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/40User authentication by quorum, i.e. whereby two or more security principals are required
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0407Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the identity of one or more communicating identities is hidden
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3218Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2103Challenge-response

Description

背景
1.技術分野
例示的な実施形態の局面は、永続的認証のためのプライバシー保護検査に関し、より特定的には、プライベートな質問に対する回答がサーバ側で暴露されないように、認証ハッシュまたは他の一方向性の反転しにくい関数を生成し、生成された認証ハッシュに基づいて認証するための装置、方法、およびシステムに関する。
2.関連技術
アクセスのための、およびアカウントの回復のためのユーザの認証プロセス中のさまざまな状況において、ユーザが自分の身元を証明しなければならない場合がある。認証、または認証のための代替的方法(たとえば、故障許容/回復)を容易にするために、ユーザは、因子(ファクター:factor)(たとえば、ユーザの生活および趣味に特有の質問への回答)を、アクセスを保持するサーバ(たとえば、アカウントプロバイダ)に登録する。回答を含む、ユーザによる登録は、プライベートなユーザ情報をサーバに暴露するおそれがある。悪意のある第三者による、サーバへの不正アクセスは、プライベートなユーザ情報をその悪意のある第三者に暴露するおそれがある。たとえば、その第三者(たとえば、サーバ組織のインサイダー、もしくはアウトサイダーまたはフィッシング攻撃者)は、同様の回答を必要とし得る他のまたは同じアカウントプロバイダで登録された回答を利用して、そのユーザになりすますおそれがある。
認証のために、ユーザが質問に回答すること(または、生体計測情報、システム外部に格納された所有された情報といった他のプライベートな因子を提供すること)を可能にしつつ、プライバシー上の理由により、ユーザからの情報を検証するサーバに個人情報を保持させないようにするという要望が存在する。
概要
本願の局面は、プロセッサを伴う装置であって、プロセッサは、複数の質問への複数の応答から複数のハッシュを生成し、認証ハッシュを、複数のハッシュの多項式補間と、複数の質問のうちの選択されたグループに基づいて認証ハッシュを形成するための、複数のハッシュのうちの1つ以上の選択との少なくとも一方から生成し、認証ハッシュを用いて認証するように構成されている、装置を含み得る。
本願の局面はさらに、プロセスを実行するための命令を格納する、コンピュータ読取可能記憶媒体を含む。命令は、複数の質問への複数の応答から複数のハッシュを生成することと、認証ハッシュを、複数のハッシュの多項式補間と、複数の質問のうちの選択されたグループに基づいて認証ハッシュを形成するための、複数のハッシュのうちの1つ以上の選択との少なくとも一方から生成することと、認証ハッシュを用いて認証することとを伴い得る。
本願の局面はさらに、プロセッサを含み得るサーバであって、プロセッサは、複数の質問を送信し、送信された複数の質問に応答した認証ハッシュが秘密認証ハッシュと整合する場合には、アクセスを許可し、認証ハッシュが秘密認証ハッシュと整合しない場合には、アクセスを拒否するように構成されており、認証ハッシュは、複数のハッシュの多項式
補間と、複数の質問のうちの選択されたグループに基づいて認証ハッシュを形成するための、複数のハッシュのうちの1つ以上の選択との少なくとも一方から生成される。
例示的な一実現化例に従った、装置についてのフロー図を示す図である。 例示的な一実現化例に従った、装置についてのフロー図を示す図である。 例示的な一実現化例に従った、サーバについてのフロー図を示す図である。 例示的な一実現化例に従った、サーバについてのフロー図を示す図である。 いくつかの例示的な実現化例で使用するのに好適な例示的なコンピューティング装置を有する、例示的なコンピューティング環境を示す図である。 例示的な実現化例に従った例示的な処理環境を示す図である。
詳細な説明
ここに説明される主題は、例示的な実現化例によって教示される。明確にするために、および主題を不明瞭にしないようにするために、さまざまな詳細が省略されている。以下に示す例は、プライバシー保護を有するキャンペーンパフォーマンスの測定を実現するための構造および機能に向けられている。例示的な実現化例の局面は、たとえば、電子商取引、情報共有、プライバシー保護方法、符号化および暗号化手法、トランザクションシステム、個人情報共有、および、セキュアなコンピューティングに関し得る。しかしながら、例示的な実現化例はそれらに限定されておらず、この発明の概念の範囲から逸脱することなく他の分野に適用されてもよい。
ここに説明される例示的な実現化例は、サーバ(またはサーバの情報を有する誰か)がプライベートな回答を推定できるようにする情報をサーバ側で暴露しない、ユーザのプライベートな因子に基づいた認証に向けられている。例示的な実現化例では、ユーザは認証因子を用いて質問票に回答し、回答は一方向性のやり方で変換され、変換された回答はサーバ側に提供される。これは、ユーザのプライバシーを保護しつつ、サーバがサーバに情報を登録した元のユーザを認証できるようにする。
例示的な実現化例は、十分なエントロピー(たとえば文字列)を有する複数の因子が、ユーザ装置上で一方向性(たとえば暗号学的ハッシュ)関数の下でともに変換されるようにすること、および、変換された値を登録時にサーバに送信することに向けられている。認証セッションで、ユーザは再度回答を求められ、それらの回答は上述のものと同様のやり方で装置によって変換され、サーバに送信される。サーバは次に、一方向性で変換された回答を、登録された情報と比較する。以下の説明は、例示的な実現化例で使用される機構を概説する、より詳細なプログラム/プロトコルに向けられている。
例示的な実現化例についてのプロトコルエンティティは、ユーザ、ユーザ装置、およびサーバを含んでいてもよい。明確にするために、プロトコルパラメータはn、t、rおよびmとして表わされ、それらについて以下に説明する。
例示的なプロトコル環境では、以下に説明されるような、考慮すべきいくつかの局面がある。
プライベートな登録情報:ユーザは、個人情報のn個のラベル付き文字列を有する。こ
れは、ユーザが知っていて思い出しそうな何か、または、ユーザが所持または所有する因子であり得る。例示的な実現化例では、初期登録は、たとえば、ユーザに関連付けられた装置(たとえば、ユーザの電話、および代替的電子メールなどのユーザに関連付けられたアカウント、または友人のアカウント)に送信された受領通知をユーザが受信し、応答した後で、有効になり得る。
プライベートでないラベリング:文字列のラベル、フォーマット、おそらくはヒント、および順序は、プライベートではない。
永続性:いかなる時も、ユーザは、少なくともn−t個の文字列を知っている。すなわち、ユーザはn個の文字列を登録したかもしれないが、それらのすべてを常に思い出すとは仮定できず、それらのうちのt個を忘れるかもしれない。このため、ユーザは、文字列のうちのn−t個についての何らかのしきい値を知っていることが必要とされる。なお、必要とされるレベルは、認証セッションごとにサーバによって調整可能である。
ユーザ装置:ユーザは、データのセキュアな入力、計算、データの消去、データの保存、およびデータの出力が可能な装置へのアクセスを有する。装置は、ユーザの制御下にある(たとえば、それはフィッシング不可である)。これは、ウェブに接続されていないスマートフォンまたはソフトウェア要素であり得る。
装置の部分的完全性:装置は正確に動作する(特に、要求された場合、データは永続的に消去される)が、失われる/盗まれるかもしれない。
サーバの完全性:サーバは正確に動作し、データを決して失わない。なぜなら、サーバはユーザを認証することに関与しているためである。また、サーバで長期間格納されたデータは、攻撃者らがユーザになりすますことを可能にするデータを含んでいない。
セットアップ:セットアップ中、装置およびサーバは、情報をセキュアに交換できる。
例示的なプロトコル環境はまた、以下のようないくつかの要件を含み得る。
プライバシー:プライベートな文字列のうちのr個について知っていると仮定すると、サーバ上、装置上の情報、またはサーバと装置との間で交換された情報は、残りのn−r個の文字列のうちのいずれかを暴露するのに、または、残りのn−r個の文字列のうちのいずれかを最初よりも良好に推測するのに実質的に不十分であるはずである。
真正性:いかなる時も、ユーザは、ユーザが入力文字列のうちの少なくともn−t個(n−tはrよりもはるかに大きい)を知っているということを(装置を用いて)サーバに証明することができる。この真正性動作は動作の好結果を決定し、サーバは、さまざまな認証セッションにおいて、必要とされるしきい値n−tをおそらく動的に変化させてもよい。
セキュリティ:サーバ上、ユーザによって使用されていない装置上の情報、またはサーバと装置との間で交換された情報は、最初に登録した元のユーザでないかもしれないユーザを認証するために使用するのに実質的に不十分であるはずである。
例示的なプロトコル環境は、さまざまなプロトコルを採用してもよい。たとえば、さまざまな因子をセットアップするために、因子登録が行なわれてもよい。因子登録は、ランダム化、作表、回答および生成を伴っていてもよい。
因子登録のランダム化局面では、装置およびサーバは、乱数発生器または他の方法を用
いて、ランダム性を共同で生成してもよい。例示的な一実現化例では、サーバは、長いランダム(秘密でない)ソルト(salt)Rsを装置に提供する。ユーザは、長いランダム(秘密でない)ソルトRuを生成し、RsおよびRuを装置に入力してもよい。装置は、長いランダム(秘密でない)ソルトRdを生成し、3つのランダムソルトすべてを単一のランダムソルトRへと連結する(ソルトRは、さらなるインタラクションにおいてサーバによって採用されるべき因子であってもよい)。
因子登録の作表局面では、ラベル提供が行なわれてもよい。サーバはユーザに、1組の文字列ラベルと、各文字列のそれぞれの可能なフォーマットと、ユーザによって採用されるべき1組の基準「ヒント」とを提供する。ラベルとは、ユーザがある文字列において所与のフォーマットで値を提供する、変数である。ユーザは、質問票を規定するために、提供された順序付けられた一組のラベルからn個のラベルを選択してもよい。例示的な実現化例では、質問票におけるいくつかの要素は必ずしも「知っている何か」というタイプのものではないかもしれず、他のタイプの情報(たとえば、生体計測、カスタマイズされた質問など)が同様に使用可能である。
因子登録の回答局面では、ユーザは、質問票の回答をn個の文字列として提供する。ユーザは、プロセスの一環として回答を繰り返すよう、システムによって訓練され得る(たとえば、ユーザは2度質問され、システムは回答のユーザ記憶を増加させるための手法を採用するなど)。回答は装置に移動され得る。
質問票は、所望の実現化例に依存して、秘密のままにしておいたり、または、オープンである(たとえば、サーバがそれに対する直接的な回答を知っている)他の方法と混合されることができる。たとえば、質問票は、(たとえば、唯一の方法であるというよりはむしろ、識別についてのクレームの機能を高めるように)他の認証方法と組合せて使用することができる。たとえば、この組合せは、他の方法の失敗時、他の方法を用いた何らかの最初の成功後、他の方法が使用される前、ユーザがすでに認証されているもののさらに高感度のアクセス/行動を要求する場合のみ、使用可能である。
因子登録の因子生成局面では、システムは、回答に基づいて、およびアルゴリズムを利用することによって、思い出すべき因子を生成する。アルゴリズムを初期化するために、装置にはn個のユーザ秘密u_1、…、u_nが与えられ、u_i=質問q_iおよび回答a_iである。装置はn個の秘密s_1、…、s_nを生成し、それらは、q_iのハッシングまたは一方向性関数である。s_i=HASH(a_i,R)。装置は、i=1、nについての点(q_i,s_i)から、平面におけるすべての点を通過するn−1次の多項式Pを、補間によって有限体上に生成することができる。q_iおよびs_iの各々は有限体において解釈され、たとえばハッシュは、サイズが256ビットの素数を法として、その素数によって規定された有限体における要素として解釈された、256ビットの文字列であってもよく、ハッシングを介して生成されたq_1およびs_iは、有限体にXおよびY座標を有するデカルト平面に位置する点として見ることができる、ランダムに見える点にマッピングされるであろう。有限体、素数、および多項式補間は、当業者にとって基本的な概念である。秘密sは、0での多項式の値であり(すなわち、P(0)=s)、シリアルナンバーとともにサーバで登録することができる。加えて、点(1,P(1))、(2,P(2))、…(k,P(k))といった、多項式上の追加のk=2t個の点が、これらは補間で元々使用された点ではないと仮定して送信され、サーバで登録される。これは、将来の認証においてユーザが間違っていること、または、n個の文字列から可能なtを省略することを可能にするiである。多項式Pは(n個の点によって生成されたため)n−1次を有しており、点(o,P(0))である秘密と追加されたk個の点との登録は、k+1がnよりも小さくなるべきであり、このk+1個の点の知識はサーバに多項式の特性を与えない。たとえば、将来15個の回答しか必要としないというしきい
値を保有しつつ、ユーザが回答すべき20個の因子について尋ねられる場合、秘密に加えて10個の点がサーバに送信される。ユーザが将来認証される(例示的な一実現化例として以下に説明する)と、ユーザは因子を再度送信し、追加された10個の点は多項式の表現に追加され、これらの点を含むノイズのある補間がユーザによって試みられ得る。攻撃者がなりすましを試みる場合、攻撃者の知識は常に10個の点よりも少ないであろう。なぜなら、因子は、因子についてのユーザ知識および所有を表わすように注意深く選択されたためである。このため、サーバによって送信された点、およびなりすましを試みる者の知識は、多項式Pを復元するために利用可能な点を補間できないであろう。
別の例示的な実現化例では、s自体ではなくHASH(s)がローカルに維持される。所望の実現化例に依存して、他の情報が装置によって削除または維持されてもよく、もしくは、k個の点がサーバで維持されてもよい。たとえば、他の情報を消去すると、ユーザは、認証時に情報を再度入力しなければならず、一方、情報を維持することは、装置の所有を証明する際に使用可能である。HASHは、任意の一方向性関数、暗号学的ハッシュアルゴリズム、もしくは、暗号文書でのべき乗剰余について知られているような、ある有限体または別の代数構造上の発生器を有するべき乗であってもよい。sではなくHASH(s)をサーバで保持することは、サーバに侵入する攻撃者らがs自体を学習することを防止する。
例示的な一実現化例では、認証セッションが、以下に説明されるように採用されてもよい。認証セッションは、因子のさまざまな使用モードを含んでいてもよい。第1のモードでは、装置は利用可能であり、ユーザは装置へのアクセスを有しており、秘密sは削除されなかった。第1のモードで、装置は次に、ハッシュのシリアルナンバーをサーバに通知し、セキュアプロトコルを使用することによって秘密についての知識を証明する。
第2の使用モードでは、サーバ、ユーザ、および装置(または別の装置)が協力し合って、ハッシュのうちの1つを生成する。サーバはユーザに、n個のラベル(質問)とそれらのフォーマットとを送信する。次に、サーバは装置に、n個のラベルとソルトRとを送信する。ユーザは装置に回答a_iを入力する。サーバは、k個の追加点(1,P(1))、…(k,P(k))も送信する。ノイズのある補間アルゴリズム(たとえば、バーレカンプ・ウェルチ(Berlekamp Welch)、グルスワミ・スーダン(Guruswami−Sudan)な
ど)を使用して、装置は多項式を計算し、回答のしきい値が正しい場合(たとえば、上述の20個中15個の例でのような2/3、半分など)、ノイズのある補間アルゴリズムはsを生成する。装置がHASH(s)を有する場合、生成されたsは、正しいかどうかチェックを受けることができ、また、ユーザに新しい回答を求めてもよい(たとえば、正しくない場合、初期化などについて)。結果として生じるsはサーバに送信され、サーバはユーザを認証し、またはそれに代えて、ユーザの装置は、サーバに送信されるHASH(s)に基づいてsの所有を証明し、この目的を達成するために、当該技術分野で公知のゼロ知識プロトコルまたはチャレンジ応答プロトコルを利用することができる。
ノイズのある補間アルゴリズムについての点のうちの1つが(たとえば、サーバまたはローカルソフトウェアによって付与された)ランダマイザである場合には、結果として生じる因子はランダム化される(すなわち、ユーザの回答から独立している)。たとえば、まず、バーレカンプ・ウェルチのノイズのある補間アルゴリズムからの2/3という範囲が、サーバにいくつかの点を付与させることによって調整可能であると仮定する。より高いしきい値が所望される場合には、サーバは(多項式上にない)エラー点を付与することができる。したがって、所望のしきい値がたとえば18個中16個(16/18)の点であり、バーレカンプ・ウェルチのノイズのある補間アルゴリズムが採用されている場合、24個中16個(16/24)の点が正しくなるように、サーバまたは装置のいずれかによって6つのエラーが導入でき、それによりバーレカンプ・ウェルチのしきい値を満たす
。別の例では、実現されたしきい値が、回答の半分のみが正しいことを必要とする場合には、サーバまたは装置によって「良好な多項式点」が導入できる。たとえば、18個中10個(10/18)(質問の半分以上が正しい)が十分であると考えられる場合、結果が16/24になるように6個の良好な点を導入でき、それは2/3というバーレカンプ・ウェルチのしきい値を満たす。必要とされるしきい値の調整は、認証セッションごとに変わり得る。
選択された情報は非常にプライベートなものであるため、ユーザは、情報のほとんどすべてを思い出せるはずである。複雑性は、有限体における多項式の評価の複雑性である。
文字列は非常にプライベートなものであり得、必要とされる場合にユーザがそれらのほとんどを思い出せることを確実にする秘密情報を伴い得る。例は、所望の実現化例に依存して、兄弟、子供、配偶者、両親、祖父母、友人の名前、自分および親類のアドレス、アカウント名および/または番号、雇い主などの名前を含む。文字列についての選択基準は、必要とされる場合にユーザが回答を再作成できるようなものであるべきである。データの量および可変性は、十分な文字列が攻撃者に決して知られず、そのため、サーバからの追加点を有していても、攻撃者は良好な補間点を生成できず、多項式が攻撃者にとって秘密のままである、といったものであるべきである。
例示的な実現化例では、いくつかのセキュリティレベルも導入可能である。たとえば、文字列のラベル、フォーマット化および順序は、それら自体が、基本的で思い出しやすいいくつかの文字列(たとえば、ユーザのパスワード)によって保護されてもよい。
アカウント回復および乗取り犯によって乗取られたアカウントの解除の目的のために、回復プロセスのために使用され、以下の特性を有する認証因子が採用されるべきである。
永続的である:ユーザにとって常に利用可能である。ユーザは、因子を含む物理的対象を失っても、または(たとえば乗取りによって)自分のアカウントを失っても、それを失うことができない(もしくは、それを再作成することができる)。
偽造不可である:アカウントまたは個人ユーザ情報へのアクセスが与えられた場合でも、実質的に推測できない。ランダム攻撃者らおよびユーザの仲間双方に対して、偽造不可であるべきである。
プライベートである:アカウントプロバイダまたは攻撃者に個人データを暴露しない。
可用性を有する:特殊用途装置を用いない汎用ソフトウェアシステムにおいて実現可能である。
因子を選択するための検討事項がいくつかある。たとえば、永続的因子が「ユーザが有する何か」である場合、ユーザはその因子を失うかもしれず、または、その因子は攻撃者の手に渡るかもしれない。永続的因子が「ユーザが知っている何か」である場合、その因子は、チェックするシステムにとってプライベートなものではないかもしれず、ユーザはその因子を忘れるかもしれない。永続的因子が「ユーザの状態である何か」である場合、その因子は人間の何らかの特徴認識(生体計測装置など)を必要とし、容易には利用できないかもしれず、また、個人情報をプロバイダに暴露するかもしれない。
例示的な実現化例では、永続的因子はユーザの知識(「知っている何か」)に基づいて利用されており、また、ユーザが所有する何かに基づいていてもよい。そのような要件は、既存の状況の多くでは、満たすことが困難かもしれない。したがって、例示的な実現化例は、ユーザが多くの基本的質問を確実に思い出せると仮定し、回答を暗号演算と関わら
せて、ユーザの知識に基づいた解決策を伴い得る。
自分および他人の知識:例示的な実現化例は「ユーザの知識」に基づくものとして提示されているが、その知識は、受託者および他のソースからリアルタイムで取得可能であり、知識の蓄積は、ユーザの個人的な知識および受託者へのユーザアクセスを表わし得る。受託者は、ユーザについての知識の一部を表わし、必要とされる因子をユーザが生成することを助けることができる。
例示的な実現化例は、アカウントへのアクセスの緊急回復のための基本的プロセスを伴い得るが、プライバシーと真正性とのバランスを取って有用性を考慮に入れる一般的な認証方法としても実現可能である(たとえば、因子が必要とされる場合にユーザを訓練するユーザトレーニングおよびユーザインターフェイス)。
ユーザがインターネットアカウントプロバイダから有するアカウントは、ユーザが自分の電子メール、電子支払い、個人のコンテンツなどをアカウントに保持するにつれて、重要性が高まっている。これらのアカウントは主要な個人リソースであり、攻撃者らの影響を受けやすい。例示的な実現化例は、ユーザは常に利用可能であるが攻撃者は決して利用できない永続的認証因子をユーザが有する場合に、ユーザが、乗取り犯には不可能なやり方でアカウントを保有し、再クレームすることができるようなシステムおよび方法に向けられている。そのような因子を近似することは、回復プロセスを緩和し得る。
関連技術では、電子メールアカウントなどのアカウントが乗取られると、攻撃者はアカウントの状態を有し、ユーザである悪意のないアカウント保持者による回復がより困難になるようにアカウントを操作できる、ということは事実である。攻撃者はまた、アカウントに格納されたすべてのデータから学習することができる。例示的な実現化例はしたがって、アカウントへのアクセスを有することから推論できない機構を利用する。同様に、それらの機構は、アカウントが利用できない場合(たとえば、乗取られた場合)にそれらが失われない、といったものであるべきである。回復が次に、永続的因子の保持者によって支配される。
例示的な実現化例は、ユーザの知識、または、必要とされる場合にユーザが再作成できる知識の高エントロピーソースを採用する。この目的のために、兄弟、子供、配偶者、両親、祖父母、友人の名前、自分および親類のアドレス、アカウント名および/または番号、雇い主の名前などの、非常にプライベートな大量のユーザ情報が利用される。この情報は、必要とされる場合にユーザが回答を再作成できるようなものであるべきであり、データの量および可変性は、十分なビットが攻撃者に決して知られないようなものである。同様に、生体計測読取りまたは銀行サーバなどの受託者へのアクセスといった他の因子も、攻撃者に知られずに、組合わされると仮定される。
別の例示的な実現化例では、因子は、生成のための、および因子をチェックするための入力、処理および出力を有するプロセスによって生成可能である。このプロセスは、各々役割を有する、ユーザー入力、システム入力、および暗号演算を伴い得る。
入力は、ユーザが尋ねられるQ1、Q2、Q3などの質問と、A1、A2、A3などの回答との組といった、知識の高エントロピーソースを伴い得る。回答Aiは、ユーザが思い出せるようなものであるべきである(質問は何度も尋ねられ、ユーザはそれにより、質問に回答するように訓練され得る)。そのような質問の選択は、生活の質問、(さまざまな分野における)趣味の質問、個人履歴の質問などを伴い得る。さらに、質問の数は、所望のエントロピーを生成できるほど十分に多いものであるべきである。所望の実現化例に依存して、ユーザが携帯装置または1枚の紙の上に保持する、または、ユーザにメールさ
れてインターネットアカウントの外部で保持されるランダム値R1、R2など、および/または、ユーザのローカルシステムが保持する追加されたランダム値、および秘密Sも採用可能である。
処理は、要因生成を伴い得る。質問への入力である回答A1、A2、…Anが(繰り返すことで)グループへと体系化され、たとえば、G1=A1、A3、A5、G2=A1、A3、A6、A7となると仮定する。1つのグループは、ユーザが全部回答するるよう期待されている、1組の連結された回答を表わす。m個のグループがあり、各グループが十分に高いエントロピーを有すると仮定する。所望の実現化例に依存して、ランダム値R1、…、Rmおよび秘密Sも追加(連結)されてもよく、たとえばSが各グループに、RiがGiに追加され、そのためG1=S、R1、A1、A3、A5となる。
各Giは、暗号学的ハッシュ関数(たとえばSha1など)Hを用いてハッシュされる。たとえば、H1=H(H(H(H(H(R),S1)A1)A3)A5)である。演算を遅くするための追加のハッシングも行なわれてもよい。H_iは指標(インディケータ)と呼ばれる。
各グループは、それ自体の指標Hi:H1、H2、…、Hmを有する。ランダマイザと呼ばれるランダム値Riは、ユーザーシステムに保持され(たとえば、サーバによってアクセスできず、または、Sの下で符号化されてサーバに送信される)、Sは、システム外部(たとえば、紙の上、または回復用に保持された別の装置内、または受託者など、他の場所にはない)に保持されたユーザの秘密である。E_S(Ri)=Xiとし、XiはHiで使用されたRiの符号化であり、Sはシードと呼ばれるとする。Hi,Xi i=1、…、mがサーバに送信される。指標Hiは次に、クライアント側で、および自分の装置内で消去される。
シードであるSは、アカウントストレージ外部のユーザのメモリ(たとえば、装置または紙の上)で保持される。Hiはサーバに送信されて回復検証のために保持され、ローカルコピーが消去される。サーバはさらに、侵入する攻撃者らが指標を学習することを防止するために、指標を一方向性関数でハッシュしてもよい。
上述の例示的な実現化例から、サーバはしたがって回答についての情報を何も受信せず、十分なエントロピーを有するハッシュ値のみを受信する。ユーザは、1つのグループと整合するのに十分な質問に回答できるはずである。攻撃者は、1つのグループをカバーする回答さえ推測できないはずであり、Sへのアクセスを有さない。
因子は次に、認証のために使用可能である。認証プロセスまたはアカウント回復プロセスで、永続的因子を使用する試みが行なわれる。サーバは、グループのうちの1つについての質問を提示し、ユーザはグループを選択し、質問に回答し、そのSおよびその装置を順に入力し、その秘密Sを使用してXiからRiを回復させる。Hiは、回答グループ「Gi現在」(Gi-current:Giについての候補)を生成するユーザの現在の回答に基づいて最初から演算され、生成されたHiはサーバに送信される。ユーザは、回答から全指標を演算してもよく、また、これに代えて、指標における回答のうちのいくつか(例におけるA5など)はクリアな状態で送信可能であり、例における部分的に評価された指標H(H(H(H(R),S1)A1)A3)が送信可能であり、ユーザは指標演算を完了することができる(したがって、回復時のみ、いくつかの回答は隠され、いくつかの回答はオープンである)。
サーバは、次にハッシュされる演算された生成されたHiを、格納されたハッシュされたHiと比較する。整合がある場合、ユーザは認証される。整合がない場合(たとえば、
生成されたHiがさまざまなグループに対して失敗した場合)、クレームした者は不合格となり、元のユーザとして認識されない。なお、代替的な例示的な一実現化例では、ユーザは、ハッシュされたバージョンHASH(Hi)に対してHiの所有を証明するプロトコルに関与していてもよい。
回答は、ユーザについての個人情報を必要とするかもしれないが、情報はすべて、ユーザコンピュータまたはユーザ装置にとってローカルであり、プライバシーの目的のためにサーバは情報にアクセスできず、サーバであるふりをするフィッシング第三者も情報にアクセスできない。回答は消去されるため、それらはクエリー時に再構成される。さらに、部分情報を与えることができる。たとえば、部分入れ子ハッシングが計算され、A5がクリアな状態で与えられ、サーバはハッシングを完了する。
結合関数としてのH(R)H(A1)H(A3)H(A5)(すなわち、十分に大きい体における個々の値のハッシュの乗算)といった一実現化例については、部分積が提供可能であり、回答のうちのいくつかはオープンであってもよく、サーバは積を完了できる。位置が固定された検査については、H(R)H(1,A1)H(2,A3)H(3,A5)が提供可能であり、質問票の位置jでの回答Aiが位置jに関連付けられるようになっている。積は、大きい素数の順序体(large prime order field)上で行な
うことができる。
情報は、攻撃者が回答を生成する可能性が実質的に小さくなるように、サーバの状態が与えられた個々の体を隠すのに十分なエントロピーを有するべきである。ユーザはさらに、因子が正しいサーバに与えられることを確実にする必要がある。回答のうちのいくつかをオープンにする(リアルタイム攻撃)因子または複数の因子を学習しようとすること(オフライン攻撃)が可能であり、実現化例において考慮されるべきである。
また、値がサーバでコミットされる(記録される)前に、高度に記憶された1組の回答を使用すべきであり、ユーザトレーニングが実施されるべきであり、これを支援するであろう。因子が永続的であることを確実にするために、思い出しにくい回答が書留められてもよい。例示的な実現化例は、汎用ソフトウェアシステムが特殊装置/リーダなどなしで採用できるといったものであってもよい。
例示的な実現化例は、回答が、思い出されるのではなく、外部機関からユーザによって得られるシステムまたはプロセスを伴い得る。これらの機関は、ユーザが回答を検索できるようにするために認証に依拠しており、そのため実現化例は、上述の永続的因子を用いて暗黙の「社会的回復」を構築可能である。因子は、まず以前の検査に合格し、次に因子に埋め込まれた知識を更新することによって、徐々に構築可能である。さらに、永続的因子は、必要とされる場合に使用されるように制限されてもよく、他の因子によってサポートされてもよく、アカウントの回復またはアカウントプロセスの再クレームにおける1つの追加の決定的因子として含まれてもよい。なお、ユーザおよび受託者からの回答は、タイピング、音声、生体計測読取り、カメラなどの任意の入力方法を採用して得ることができる。
上述の例示的な実現化例はそれにより、ユーザがパスワードをユーザが入力する知識と置換することを可能にする。パスワードとは異なり、ユーザは、ユーザについてのいくつかの知識(それらの大部分)をたいがい知っていると思われる。パスワードの使用は、(秘密鍵のような)パスワード符号化情報のローカル復号のために利用可能である。この新しい考えを延長することが、そのような目的のためのパスワード・ドロップイン置換に使用されてもよく、それは「装置」が単なるローカル演算である別の設計の事項である。「ローカル演算」はモバイル装置上で行なわれてもよく、回答が盗まれていないことをユー
ザに保証するために、最終結果が、無線、USBまたは物理的接続などのローカル通信方法を介して、コンピュータまたはサーバに送信されてもよい。
例示的な実現化例はまた、識別の他の手段が失われたとしても、ユーザが常に再構成できる永続的因子を伴い得る。これは、ユーザをアカウント乗取り犯と区別でき、アカウントをクレームバック(claim back)するためにユーザによって使用可能である(たとえば、質問票に基づいてクレームバックし、露出を最小限にする方法が実施される)。
図1(a)は、例示的な一実現化例に従った、装置についてのフロー図を示す。100で、装置は、複数の質問への、ユーザによって提供された複数の応答から、複数のハッシュを生成する。提供された質問は、サーバから、または装置からであってもよく、上述のようなユーザについての個人情報に関与する質問票を利用する。
101で、装置は、複数のハッシュから認証ハッシュを生成できる。これは、認証ハッシュを生成するために複数のハッシュの多項式補間を行なうことにより、および/または、複数の質問のうちの選択されたグループに基づいて認証ハッシュを形成するために複数のハッシュのうちの1つ以上を選択することにより、実現することができる。上述の例示的な実現化例で説明されたように、ユーザは、回答すべき質問のグループを選択でき、回答はそれにより、認証ハッシュを生成するためにハッシュ可能であり、または、装置は、提供された回答の部分集合(たとえば、2つ以上)を選択し、その部分集合に基づいて認証ハッシュを生成することができる。上述の例示的な実現化例で説明されたように、秘密認証ハッシュも装置に格納でき、要件が満たされる(たとえば、質問への正しい回答のしきい値を満たす、質問の部分集合に正しく回答する、認証ハッシュが秘密認証ハッシュと整合する、など)と、セキュアプロトコルによってサーバに転送され得る。
装置はまた、上述のように、認証ハッシュを補間するために多項式補間を使用することで、複数のハッシュの多項式補間から認証ハッシュを生成してもよい。多項式補間アルゴリズムおよびノイズのある補間アルゴリズムといった実現化例が、採用可能である。サーバでの追加点を用いた、多項式補間のための1つ以上のエラー点、および/または多項式補間のための1つ以上の正しい点の導入を通して、しきい値を調節し、多項式補間に適用することができる。102で、装置は次にサーバに、生成された認証ハッシュを用いて認証することを試みる。
図1(b)は、例示的な一実現化例に従った、回復プロセスのためのフロー図を示す。上述の例示的な実現化例で説明されたように、103で、装置は複数の質問を受信し、それらの中からユーザは、アカウントへのアクセスを回復するために回答すべき部分集合を選択してもよい。104で、提供された回答は、ユーザ装置の外部にある秘密シードから生成された乱数の使用に基づいて、認証ハッシュに変換される。105で、認証ハッシュはサーバに転送される。
図2(a)は、例示的な一実現化例に従った、サーバについてのフロー図を示す。200で、サーバは、複数の個人的な質問を装置に送信してもよい。201で、サーバは、送信された複数の質問に応答して、装置から認証ハッシュを受信する。202で、サーバは次に、送信された複数の質問に応答した認証ハッシュがサーバに格納された秘密認証ハッシュと整合する場合には(YES)、アクセスを許可する(204)と決定してもよく、認証ハッシュが秘密認証ハッシュと整合しない場合には(NO)、アクセスを拒否する(203)と決定してもよい。認証ハッシュは、複数のハッシュの多項式補間、および、複数の質問のうちの選択されたグループに基づいて認証ハッシュを形成するための、複数のハッシュのうちの1つ以上の選択から生成されてもよい。実現化例に依存して、サーバは、秘密認証ハッシュおよびしきい値に基づいて、ノイズのある補間アルゴリズムで使用す
るための1つ以上のエラー点および1つ以上の正しい点を送信してもよい。サーバはまた、ハッシュが格納された秘密ハッシュと整合するかどうか判断するために、受信された認証ハッシュのハッシングを行なってもよい。
別の例では、サーバは、送信された質問のうちの選択されたグループに基づいて、複数の秘密認証ハッシュから秘密認証ハッシュを選択してもよく、複数の秘密認証ハッシュの各々は、複数の質問のうちの少なくとも2つに関連付けられている。送信された質問のうちの選択されたグループは、装置で、またはサーバによって選択されてもよい。これはたとえば、上述のような回復プロセスで実現可能である。
図2(b)は、例示的な一実現化例に従った、サーバからの回復プロセスのためのフロー図を示す。205で、サーバは、複数の個人的な質問を装置に送信してもよい。206で、サーバは、送信された複数の質問に応答して、装置から認証ハッシュを受信する。認証ハッシュは潜在的に、上述の例示的な実現化例で説明されたような指標のうちの1つである。207で、サーバは次に、認証ハッシュがサーバに格納された指標のうちの1つと整合する場合には(YES)、ユーザーアカウントを回復するプロセスを開始する(209)と決定してもよく、認証ハッシュが格納された指標のどれとも整合しない場合には(NO)、アクセスを拒否する(208)と決定してもよい。
例示的な処理環境
図3は、いくつかの例示的な実現化例で使用するのに好適な例示的なコンピューティング装置を有する、例示的なコンピューティング環境を示す。コンピューティング環境300におけるコンピューティング装置305は、1つ以上の処理部、コア、またはプロセッサ310、メモリ315(たとえば、RAM、ROMなど)、内部ストレージ320(たとえば、磁気、光学、固体ストレージ、および/または有機)、および/またはI/Oインターフェイス325を含んでいてもよく、それらのいずれも、情報を通信するための通信機構またはバス330上に結合可能であり、または、コンピューティング装置305に埋込み可能である。
コンピューティング装置305は、入力/ユーザインターフェイス35および出力装置/インターフェイス340に通信可能に結合可能である。入力/ユーザインターフェイス35および出力装置/インターフェイス340のいずれか一方または双方は、有線または無線インターフェイスであってもよく、取り外し可能であってもよい。入力/ユーザインターフェイス35は、入力を提供するために使用可能な、物理的なまたは仮想の任意の装置、コンポーネント、センサ、またはインターフェイス(たとえば、ボタン、タッチスクリーン・インターフェイス、キーボード、ポインティング/カーソル制御装置、マイク、カメラ、点字、運動センサ、光学式読取り装置など)を含んでいてもよい。出力装置/インターフェイス340は、ディスプレイ、テレビ、モニタ、プリンタ、スピーカ、点字などを含んでいてもよい。いくつかの例示的な実現化例では、入力/ユーザインターフェイス35および出力装置/インターフェイス340は、コンピューティング装置305に埋込可能であり、または物理的に結合可能である。他の例示的な実現化例では、他のコンピューティング装置は、コンピューティング装置05のために、入力/ユーザインターフェイス35および出力装置/インターフェイス340として機能し、またはそれらの機能を提供してもよい。
コンピューティング装置305の例は、高度モバイル装置(たとえば、スマートフォン、車両および他のマシンにおける装置、人間および動物によって運ばれる装置など)、モバイル装置(たとえば、タブレット、ノートブック、ラップトップ、パーソナルコンピュータ、ポータブルテレビ、ラジオなど)、および移動性のために設計されていない装置(たとえば、デスクトップコンピュータ、他のコンピュータ、情報キオスク、1つ以上のプ
ロセッサが埋め込まれた、および/または結合されたテレビ、ラジオ、サーバなど)を含み得るが、それらに限定されない。
コンピューティング装置305は、同じまたは異なる構成の1つ以上のコンピューティング装置を含む、任意の数のネットワーク化されたコンポーネント、装置、およびシステムと通信するために、(たとえばI/Oインターフェイス325を介して)外部ストレージ345およびネットワーク350に通信可能に結合可能である。コンピューティング装置305または任意の接続されたコンピューティング装置は、サーバ、クライアント、シンサーバ、汎用マシン、特殊用途マシン、または別のラベルとして機能し、それらのサービスを提供し、またはそのように呼ばれてもよい。
I/Oインターフェイス325は、少なくとも、コンピューティング環境300におけるすべての接続されたコンポーネント、装置、およびネットワークとの間で情報を通信するために、任意の通信またはI/Oプロトコルもしくは規格(たとえば、イーサネット(登録商標)、802.11x、ユニバーサル・システム・バス、WiMax、モデム、セルラー・ネットワーク・プロトコルなど)を用いる有線および/または無線インターフェイスを含み得るが、それらに限定されない。ネットワーク350は、任意のネットワーク、またはネットワークの組合せであってもよい(たとえば、インターネット、ローカルエリアネットワーク、ワイドエリアネットワーク、電話ネットワーク、セルラーネットワーク、衛星ネットワークなど)。
コンピューティング装置305は、信号媒体および記憶媒体を含む、コンピュータ使用可能媒体またはコンピュータ読取可能媒体を用いて、使用および/または通信できる。信号媒体は、伝送媒体(たとえば、金属ケーブル、光ファイバー)、信号、搬送波などを含む。記憶媒体は、磁気媒体(たとえば、ディスクおよびテープ)、光学媒体(たとえば、CD ROM、デジタルビデオティスク、ブルーレイディスク)、固体媒体(たとえば、RAM、ROM、フラッシュメモリ、固体ストレージ)、および他の不揮発性ストレージまたはメモリを含む。
コンピューティング装置305は、いくつかの例示的なコンピューティング環境において、手法、方法、アプリケーション、プロセス、またはコンピュータ実行可能命令を実現するために使用可能である。コンピュータ実行可能命令は、一時的媒体から検索可能であり、また、非一時的媒体に格納されてそこから検索されることが可能である。実行可能命令は、任意のプログラミング言語、スクリプト言語、およびマシン語(たとえば、C、C++、C#、Java(登録商標)、ビジュアル・ベーシック、パイソン、パール、JavaScript(登録商標)など)のうちの1つ以上から生じ得る。
プロセッサ310は、自然または仮想環境において、任意のオペレーティングシステム(OS)(図示せず)の下で実行可能である。1つ以上のアプリケーションを配備することができ、それは、論理ユニット360と、アプリケーション・プログラミング・インターフェイス(API)ユニット365と、入力ユニット370と、出力ユニット375と、認証ユニット380と、回復ユニット385と、乱数発生器ユニット390と、異なるユニットが互いに、OSと、および他のアプリケーション(図示せず)と通信するためのユニット間通信機構395とを含む。たとえば、装置またはサーバとしての実現化例に依存して、認証ユニット380、回復ユニット385、および乱数発生器ユニット390は、図1(a)、図1(b)、図2(a)および図2(b)に示すような1つ以上のプロセスを実現してもよい。回復ユニット385はまた、図1(b)および図2(b)の上述の例示的な実現化例で説明されたような回復プロセスを実現してもよい。説明されたユニットおよび要素は、設計、機能、構成、または実現化例の点で変更可能であり、提供された説明に限定されない。
いくつかの例示的な実現化例では、情報または実行命令がAPIユニット365によって受信されると、それは、1つ以上の他のユニット(たとえば、論理ユニット360、入力ユニット370、出力ユニット375、認証ユニット380、回復ユニット385、および乱数発生器ユニット390)に通信されてもよい。たとえば、乱数発生器ユニット390は、ハッシュを生成するかまたは提出用の質問を選択し、APIユニット365を使用して認証ユニット380および回復ユニット385と通信し、上述の例示的な実現化例で説明されているように乱数を提供するために使用されてもよい。認証ユニット380は、認証ハッシュを格納された秘密認証ハッシュと比較するために、APIユニット365を介して回復ユニット385と相互作用してもよい。
場合によっては、論理ユニット360は、上述のいくつかの例示的な実現化例において、ユニット間の情報フローを制御して、APIユニット365、入力ユニット370、出力ユニット375、認証ユニット380、回復ユニット385、および乱数発生器ユニット390によって提供されるサービスを指示するように構成されてもよい。たとえば、1つ以上のプロセスまたは実現化例のフローは、論理ユニット360のみによって、またはAPIユニット365とともに制御されてもよい。
例示的な処理環境
図4は、いくつかの例示的な実施形態が実現され得る例示的なオンライン環境を示す。環境400は装置405〜445を含み、各々は、たとえばネットワーク450を介して、少なくとも1つの他の装置に通信可能に接続されている。いくつかの装置は、(たとえば、装置425を介して)1つ以上の記憶装置430および445に通信可能に接続されてもよい。
1つ以上の装置405〜445の一例は、図3で説明するコンピューティング装置であってもよい。装置405〜445は、コンピュータ425(たとえば、個人用または業務用)、車両420に関連付けられた装置、モバイル装置410(たとえば、スマートフォン)、テレビ415、モバイルコンピュータ405、サーバコンピュータ450、コンピューティング装置435〜440、記憶装置430、445を含み得るが、それらに限定されない。装置405〜445のうちのいずれも、環境400において図示された1つ以上の装置、および/または環境400において図示されていない装置からの1つ以上のサービスにアクセスしてもよく、および/または、そのような装置に1つ以上のサービスを提供してもよい。装置間のアクセスは、有線、無線で行なわれてもよく、ユーザ音声やカメラ画像のようなマルチメディア通信によるものであってもよい。
ユーザは、ネットワーク450を介して例示的な実現化例を実現するために、上に説明されたように装置を制御してもよい。例示的な実現化例に関連付けられた情報は、たとえば記憶装置430または445にそれぞれ格納されてもよい。
ここに説明されたシステムが、ユーザについての個人情報を収集する、または個人情報を利用し得る状況では、ユーザには、プログラムまたは機能がユーザ情報(たとえば、ユーザの社会的ネットワーク、社会的行動または活動、職業、ユーザの好み、またはユーザの現在位置についての情報)を収集するかどうかを制御する機会、もしくは、ユーザにより関連し得るコンテンツサーバからコンテンツを受信するかどうか、および/またはどのように受信するかを制御する機会が提供されてもよい。加えて、或るデータは、個人を識別可能な情報が除去されるように、格納または使用される前に1つ以上のやり方で処理されてもよい。たとえば、ユーザについて、個人を識別可能な情報がまったく判断できないように、ユーザの身元が処理されてもよく、または、(市、郵便番号、または国家レベルなどまで)位置情報が得られる場合、ユーザの特定の位置が判断できないように、ユーザ
の地理的な位置が一般化されてもよい。このため、ユーザは、ユーザについて情報がどのように収集され、コンテンツサーバによってどのように使用されるか、に対する制御を有していてもよい。
いくつかの例示的な実現化例を示し、説明してきたが、これらの例示的な実現化例は、ここに説明された主題を、この分野の当業者に伝えるために提供されている。ここに説明された主題は、説明された例示的な実現化例に限定されることなく、さまざまな形で実現され得る、ということが理解されるべきである。ここに説明された主題は、それらの具体的に定義または説明された事項がなくても、もしくは、説明されていない他のまたは異なる要素または事項があっても、実践可能である。これらの例示的な実現化例において、添付された請求項およびそれらの均等物で定義されるような、ここに説明された主題から逸脱することなく、変更を行なってもよい、ということは、この分野の当業者によって理解されるであろう。

Claims (9)

  1. 端末にハッシュ生成用ソルトと複数の質問を送信するステップと、
    前記複数の質問に対する応答と前記ソルトとに基づいて生成された認証ハッシュを前記端末から受信するステップと、
    前記認証ハッシュを認証用データとして登録するステップと、
    前記端末に前記複数の質問を再度送信するステップと、
    前記複数の質問に対する応答と前記ソルトとに基づいて生成された認証ハッシュを前記端末から受信するステップと、
    前記認証ハッシュが秘密認証ハッシュと整合する場合には、アクセスを許可するステップと、
    前記認証ハッシュが前記秘密認証ハッシュと整合しない場合には、アクセスを拒否するステップとを含む、認証方法。
  2. ノイズのある補間アルゴリズムを使用することで、複数のハッシュを対象とする多項式補間および前記複数のハッシュの各々が入力として使用されるハッシュ関数の演算から前記認証ハッシュを生成するステップと、
    多項式補間のための1つ以上のエラー点、および多項式補間のための1つ以上の正しい点のうちの一方の導入を通して、ノイズのある補間アルゴリズムの、前記複数の質問に対する応答のうち必要とされる正解の割合であるしきい値を調節するステップとをさらに含む、請求項1に記載の認証方法。
  3. 秘密認証ハッシュおよびしきい値に基づいて、ノイズのある補間アルゴリズムで使用するための1つ以上のエラー点および1つ以上の正しい点のうちの一方を生成して送信するステップをさらに含む、請求項に記載の認証方法。
  4. 送信された質問のうちの選択されたグループに基づいて、複数の秘密認証ハッシュから秘密認証ハッシュを選択するステップをさらに含み、
    複数の秘密認証ハッシュの各々は、複数の質問のうちの少なくとも2つに関連付けられている、請求項1〜3のいずれか1項に記載の認証方法。
  5. 複数の質問への応答を受信するステップをさらに含み、前記応答は、応答ハッシュと、複数の質問のうちの1つまたは部分集合への回答とを含み、前記認証方法はさらに、
    応答ハッシュおよび回答から認証ハッシュを構築するステップをさらに含む、請求項1から4のいずれか1項に記載の認証方法。
  6. 前記複数の質問に対するそれぞれの応答を再帰的にハッシュ関数の引数とすることにより、前記認証ハッシュを生成するステップをさらに含む、請求項1に記載の認証方法。
  7. 複数の質問は、生体計測情報についての要求を含む、請求項1からのいずれか1項に記載の認証方法。
  8. 請求項1から7のいずれか1項に記載の認証方法をコンピュータに実行させる、プログラム。
  9. 請求項に記載のプログラムを格納したメモリと、
    前記プログラムを実行するためのプロセッサとを備える、装置。
JP2016211833A 2013-03-15 2016-10-28 認証方法、当該認証方法をコンピュータに実行させるプログラム、および装置 Active JP6494584B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/844,619 US8949960B2 (en) 2013-03-15 2013-03-15 Privacy preserving knowledge and factor possession tests for persistent authentication
US13/844,619 2013-03-15

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2016500901A Division JP6352381B2 (ja) 2013-03-15 2014-03-07 永続的認証のための、プライバシーを保護する知識/因子所有検査

Publications (3)

Publication Number Publication Date
JP2017073789A JP2017073789A (ja) 2017-04-13
JP2017073789A5 JP2017073789A5 (ja) 2017-12-07
JP6494584B2 true JP6494584B2 (ja) 2019-04-03

Family

ID=51535030

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2016500901A Active JP6352381B2 (ja) 2013-03-15 2014-03-07 永続的認証のための、プライバシーを保護する知識/因子所有検査
JP2016211833A Active JP6494584B2 (ja) 2013-03-15 2016-10-28 認証方法、当該認証方法をコンピュータに実行させるプログラム、および装置

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2016500901A Active JP6352381B2 (ja) 2013-03-15 2014-03-07 永続的認証のための、プライバシーを保護する知識/因子所有検査

Country Status (8)

Country Link
US (1) US8949960B2 (ja)
EP (1) EP2973162B1 (ja)
JP (2) JP6352381B2 (ja)
KR (1) KR102257943B1 (ja)
CN (1) CN105210071B (ja)
AU (1) AU2014237590B2 (ja)
BR (1) BR112015023183B1 (ja)
WO (1) WO2014150064A1 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2015234221B2 (en) * 2014-03-16 2017-02-16 Haventec Pty Ltd Persistent authentication system incorporating one time pass codes
CN105337928B (zh) * 2014-06-24 2019-09-13 阿里巴巴集团控股有限公司 用户身份识别方法、安全保护问题生成方法及装置
CN107070871B (zh) * 2017-01-12 2020-04-24 阿里巴巴集团控股有限公司 一种身份验证的方法及装置
WO2020246402A1 (ja) * 2019-06-05 2020-12-10 ソニー株式会社 本人確認プログラム、本人確認方法、ユーザ端末、及びユーザ認証プログラム
CN112487485B (zh) * 2020-05-09 2022-12-27 支付宝(杭州)信息技术有限公司 基于零知识证明的个人数据处理方法、装置及电子设备

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6760752B1 (en) 1999-06-28 2004-07-06 Zix Corporation Secure transmission system
US20060085647A1 (en) * 2000-03-24 2006-04-20 Neff C A Detecting compromised ballots
US7228417B2 (en) 2002-02-26 2007-06-05 America Online, Inc. Simple secure login with multiple-authentication providers
US7725730B2 (en) 2002-08-09 2010-05-25 Emc Corporation Cryptographic methods and apparatus for secure authentication
JP4692826B2 (ja) * 2003-07-28 2011-06-01 ソニー株式会社 情報処理装置および方法、記録媒体、並びにプログラム
US7461399B2 (en) 2004-07-30 2008-12-02 Rsa Security Inc. PIN recovery in a smart card
US20070162961A1 (en) 2005-02-25 2007-07-12 Kelvin Tarrance Identification authentication methods and systems
JP4697583B2 (ja) 2005-03-02 2011-06-08 琢晃 伊藤 個人情報の漏洩を回避した個人認証システム
US7694138B2 (en) * 2005-10-21 2010-04-06 Avaya Inc. Secure authentication with voiced responses from a telecommunications terminal
US7739733B2 (en) 2005-11-02 2010-06-15 Emc Corporation Storing digital secrets in a vault
EP2016701A4 (en) 2006-04-25 2012-04-25 Stephen Laurence Boren DYNAMIC DISTRIBUTED KEY SYSTEM AND METHOD FOR MANAGING IDENTITY, AUTHENTICATION OF SERVERS, DATA SECURITY AND PREVENTING ATTACKS OF MIDDLE MAN
EP2122900A4 (en) * 2007-01-22 2014-07-23 Spyrus Inc PORTABLE DATA ENCRYPTION DEVICE WITH CONFIGURABLE SAFETY FUNCTIONS AND METHOD FOR FILING ENCRYPTION
JP4917453B2 (ja) * 2007-02-22 2012-04-18 Kddi株式会社 閾値秘密分散装置、閾値秘密分散方法、秘密情報復元方法およびプログラム
CN101145911B (zh) 2007-10-30 2010-05-19 江汉大学 具有私密保护及口令找回功能的身份认证方法
US8156333B2 (en) * 2008-05-29 2012-04-10 Red Hat, Inc. Username based authentication security
JP6220110B2 (ja) * 2008-09-26 2017-10-25 コーニンクレッカ フィリップス エヌ ヴェKoninklijke Philips N.V. デバイス及びユーザの認証
US8527758B2 (en) * 2009-12-09 2013-09-03 Ebay Inc. Systems and methods for facilitating user identity verification over a network
US8842827B2 (en) * 2010-07-16 2014-09-23 Intryca, Inc. Mobile phone aided operations system and method
JP4820928B1 (ja) 2011-07-08 2011-11-24 株式会社野村総合研究所 認証システムおよび認証方法

Also Published As

Publication number Publication date
EP2973162A4 (en) 2016-09-07
BR112015023183A8 (pt) 2018-01-02
KR102257943B1 (ko) 2021-05-28
US8949960B2 (en) 2015-02-03
CN105210071B (zh) 2018-06-01
EP2973162B1 (en) 2018-06-06
WO2014150064A1 (en) 2014-09-25
CN105210071A (zh) 2015-12-30
US20140282942A1 (en) 2014-09-18
JP6352381B2 (ja) 2018-07-04
KR20150132467A (ko) 2015-11-25
JP2016512931A (ja) 2016-05-09
JP2017073789A (ja) 2017-04-13
AU2014237590B2 (en) 2019-02-28
BR112015023183A2 (pt) 2017-07-18
AU2014237590A1 (en) 2015-09-10
BR112015023183B1 (pt) 2022-04-05
EP2973162A1 (en) 2016-01-20

Similar Documents

Publication Publication Date Title
US10735407B2 (en) System and method for temporary password management
US11233637B2 (en) System and method for validating an entity
US11271926B2 (en) System and method for temporary password management
CN109756338B (zh) 认证装置、验证装置的计算机实现方法和计算机可读介质
US11388174B2 (en) System and method for securing a communication channel
JP6494584B2 (ja) 認証方法、当該認証方法をコンピュータに実行させるプログラム、および装置
US9740849B2 (en) Registration and authentication of computing devices using a digital skeleton key
US11128457B2 (en) Cryptographic key generation using external entropy generation
Nakouri et al. A new biometric-based security framework for cloud storage
JP7250960B2 (ja) ユーザのバイオメトリクスを利用したユーザ認証および署名装置、並びにその方法
JP6087480B1 (ja) 認証装置、認証システム及び認証プログラム
US11741215B1 (en) Recipient credentialing leveraging private keys on keystores read by provisioned devices
Abdulmalik et al. Secure two-factor mutual authentication scheme using shared image in medical healthcare environment
US20240121098A1 (en) Scalable Authentication System with Synthesized Signed Challenge
US20240121084A1 (en) Cryptographic key generation using machine learning
Maqbali Strengthening Password-Based Authentication
Jubur On the Security and Usability of New Paradigms of Web Authentication
JP2023165912A (ja) 通信システム、通信方法、及びプログラム
WO2021028705A1 (en) Recovery of secret data in a distributed system

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170307

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170307

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171020

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180515

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180815

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190205

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190305

R150 Certificate of patent or registration of utility model

Ref document number: 6494584

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: R3D02

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250