JP2015149722A - 証明書生成装置および方法 - Google Patents
証明書生成装置および方法 Download PDFInfo
- Publication number
- JP2015149722A JP2015149722A JP2015020489A JP2015020489A JP2015149722A JP 2015149722 A JP2015149722 A JP 2015149722A JP 2015020489 A JP2015020489 A JP 2015020489A JP 2015020489 A JP2015020489 A JP 2015020489A JP 2015149722 A JP2015149722 A JP 2015149722A
- Authority
- JP
- Japan
- Prior art keywords
- certificate
- password
- public key
- user
- verifier
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0825—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
-
- 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/0823—Network architectures or network communication protocols for network security for authentication of entities using certificates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/33—User authentication using certificates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
- G06F21/445—Program or device authentication by mutual authentication, e.g. between devices or programs
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3226—Cryptographic 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 a predetermined code, e.g. password, passphrase or PIN
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3247—Cryptographic 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 involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3263—Cryptographic 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 involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
【課題】証明書が、パスワードを知るユーザの制御下においてユーザ装置によって生成されたことをも保証する解決方法を提供する。
【解決手段】装置(110、120)は、ユーザからパスワードを受信し(S202)、装置に関する暗号アルゴリズムについての公開鍵を取得し(S204)、一方向性関数を、ユニーク識別子とパスワードと公開鍵との結合に適用することによって、パスワードベリファイアを取得し(S206)、ユニーク識別子、公開鍵、およびパスワードベリファイアを備える証明書を生成し(S208)、公開鍵に対応する秘密鍵を使用して証明書に署名し、それによって自己署名された証明書を取得し(S210)、自己署名された証明書を出力する。また、その装置が提供される。
【選択図】図2
【解決手段】装置(110、120)は、ユーザからパスワードを受信し(S202)、装置に関する暗号アルゴリズムについての公開鍵を取得し(S204)、一方向性関数を、ユニーク識別子とパスワードと公開鍵との結合に適用することによって、パスワードベリファイアを取得し(S206)、ユニーク識別子、公開鍵、およびパスワードベリファイアを備える証明書を生成し(S208)、公開鍵に対応する秘密鍵を使用して証明書に署名し、それによって自己署名された証明書を取得し(S210)、自己署名された証明書を出力する。また、その装置が提供される。
【選択図】図2
Description
本開示は、概して、コンピュータネットワークセキュリティに関し、特に、そのようなネットワーク中の装置の認証に関する。
このセクションは、本技術の様々な態様を読み手に紹介することが意図されており、これらの態様は、以下に記載され、および/または、請求された本開示の様々な態様に関連する。この考察は、読み手に背景情報を提供して本開示の様々な態様のより深い理解を促進するのに役立つと信じられる。従って、これらの記述は、この観点から読まれるべきものであり、先行技術の自認として読まれるべきものではないことを理解されたい。
2つの装置がデータを取り交わすために相互作用する必要のある多くのシナリオが存在する。単独のユーザが、装置、例えば、ラップトップおよび無線アクセスポイントを制御するときに、一般的なケースが発生する。この場合、通信は、比較的盗聴が容易である無線通信チャネル上を通る。よって、特に、機密データが送信されることになるときは、このチャネルが安全であることを保証することは重要である。無線チャネルは例として用いられるであろうが、これは、しばしばというほどではないにしても、有線接続にも当てはまることを理解されたい。
これらの場合において、先行のトラスト基盤(trust infrastructure)が存在しないことは一般的である。これは、いわゆる中間者攻撃(man-in-the-middle attack)に対してドアを開いている。この攻撃の軽減には、装置登録処理(device enrolment process)において、ある程度のレベルのユーザの関与を必要とする。先行技術の解決策は、ボタンプロトコル(button protocols)および視覚チャネル(visual channel)の使用のような異なる方法を含む(例えば、第1の装置は、ユーザが第2の装置でスキャンするバーコードを有することが可能であり、その情報がセッション鍵を生成するために使用される)。そのような方法は、ユーザを、無線チャネル上で通信する装置と相互作用することに関わらせる。これは、アドホックネットワーク中の装置間におけるセキュア接続(secure connection)を形成する基礎となる。
今日、ほとんどのアプリケーションは、セキュア接続を提供するために、TLS(Transport Layer Security)プロトコルを採用する。ユーザを認証するために利用可能な従来のオプションは、事前共有鍵(pre-shared key)、パスワード、または公開鍵証明書を含む。しかしながら、ユーザ認証のためにクライアント側の公開鍵証明書を採用するアプリケーションはほとんど存在しない。実際に、証明書の展開(deployment)および管理は主たる問題となって現れている。
ユーザを認証するためのパスワードと証明書とを結合する解決方法が存在する。これらの方法は、概して、以下のように働く。ユーザが、証明書および秘密鍵を提供されるとき、ユーザはパスワードを入力するよう指示される。パスワードは、秘密鍵のセキュアストレージに対して使用され、証明書が失われる、または盗まれるリスクを最小化することを可能にする。そして、TLSセッションの間、ユーザは、デジタル証明書使用に際し“ロック解除”するために、パスワードを再度入力することを要求される。パスワードは、デジタル証明書と関連付けられた秘密鍵の所有の証拠として与えられる。
MITM(中間者:Man-In-The-Middle)攻撃またはなりすましは、攻撃者が2つの装置との独立した接続を作成し、それらの間でメッセージを中継する、相互認証プロトコルへの攻撃のタイプである。MITM攻撃における攻撃者は、通常、目に見えず、セキュア接続上で直接互いに通信していると信じる装置になりすます。しかしながら、攻撃者は、全体の通信を制御する。MITM攻撃は破壊的である場合がある。もしユーザがMITMに対して自身を認証すれば、自身の証明書を漏洩し、攻撃者はそれらを悪用してユーザを騙すことができる。
多くの認証の仕組みは、MITMまたはなりすまし攻撃に対する十分な保護を提供することに失敗している。これには主に2つの理由が存在する。
1.使用されるユーザ認証の仕組みは、通常、脆弱である。これは、ユーザがMITMと会話し、それにより自身のパスワードを漏洩する状況につながる。
2.TLSセッション確立は、通常、ユーザ認証とは切り離されている。例えば、もし共有秘密鍵が漏れると、ネットワーク中のあらゆる装置を騙すことに再利用されうる。
その結果、MITM攻撃に対する任意の効果的な対抗策は、ユーザ認証をTLS証明書ベースの認証と結合するセキュア認証の仕組みを実施することによって、これらの問題に対応しなくてはならない。
RFC2945、「SRP認証および鍵交換システム」(The SRP Authentication and Key Exchange System)は、パスワードに基づく認証の設定を可能とするSRP(Secure Remote Password)アルゴリズムを記載している。クライアントは、パスワードまたはPINコードを有し、サーバは、検証データ(例えば、パスワードのソルテッドハッシュ(salted hash)を有する。SRPは、強力な相互認証を提供する。しかしながら、SRPは、常に、サポートされて利用可能であるわけではない。DTLS(Datagram TLS)は、UDP上でデータを保護するための参考であるが、SRP認証をサポートせず、証明書ベースおよび事前共有鍵認証のみ、現在はサポートされている。
先行技術における第1の問題は、パスワード検証が装置に対してローカルであるときには、脆弱な可能性のあるセキュリティ強制機構が原因となり、それが信頼できないことである。これは、システム基盤に対して有害である可能性がある。その理由は、そのような場合には、攻撃者は、脆弱な装置上にてパスワード強制を回避し、そして、重要なリソースにアクセスすることが可能となるからである。従って、リモート装置(すなわち、検証者)が、ユーザが秘密鍵を所有するだけでなく、正しいパスワードを知っていることをも検証する解決方法に対する需要が存在することが分かるであろう。
先行技術の方法における第2の問題は、PKI基盤を設定することの集中化された特性と複雑さである。そのようなシステム内における拡張性(新たな装置の追加)は、署名のための管理サービスおよび新しい証明書の配信を必要とする。これは、費用がかかり、特に、セキュリティ知識を何ら持たないユーザにとっては、設定または使用するのは容易ではない。多くの場合、特にアドホックネットワークについては、自己署名された証明書を生成する中央機関、または管理サーバおよび装置は、存在しない。そして、任意の装置が証明書を生成することが可能であるため、そのような証明書を信頼することは難しい。我々は、ユニークなパスワードの知識に基づく、セキュアな、および分散化されたPKIシステムを提案することによって、この問題に対処する。これは、証明書のデプロイメントおよび管理を、ユーザにとって完全に透過的なものとする。ユーザは、パスワードを覚えることのみ必要である。
従って、証明書がリモートパスワード検証を可能にするだけでなく、証明書が、パスワードを知るユーザの制御下においてユーザ装置によって生成されたことをも保証する解決方法のニーズがあることが、理解されるであろう。
第1の態様において、本開示は、証明書を生成する装置を対象とする。装置は、ユーザデータを受信する手段、および装置について暗号アルゴリズムに関する公開鍵を取得する手段と、ユーザデータに基づく値と公開鍵との結合に関数を適用することによって、ベリファイアを取得する手段と、公開鍵およびベリファイアを備える証明書を生成する手段と、証明書上の署名を取得して、それにより署名済みの証明書を取得する手段と、署名済みの証明書を出力する手段と、を備える。
第1の実施形態において、ベリファイアを取得する手段は、ユニーク識別子とユーザデータに基づく値と公開鍵との結合に関数を適用すること、およびユニーク識別子を証明書に含めること、から構成される。ユニーク識別子は、少なくとも1つの装置または少なくとも1つのリソースに関するユニーク識別子であることが有益である。
第2の実施形態において、関数は、一方向性関数または暗号化関数である。
第3の実施形態において、ユーザデータは、パスワードである。
第4の実施形態において、ユーザデータに基づく値は、ユーザデータと同一である。
第5の実施形態において、暗号アルゴリズムはRSAであり、公開鍵はモジュラス(modulus)を備える。
第6の実施形態において、暗号アルゴリズムは、楕円曲線暗号(elliptic curve cryptography)アルゴリズムであり、公開鍵は、ジェネレータおよび第1のモジュラスを備える。
第7の実施形態において、署名を取得する手段は、公開鍵に対応する秘密鍵を使用して証明書に署名するように構成される。
第2の態様において、本開示は、証明書を生成する方法を対象とする。装置のプロセッサは、ユーザデータを受信し、装置について暗号アルゴリズムに関する公開鍵を取得し、ユーザデータに基づく値と公開鍵との結合に関数を適用することによってベリファイアを取得し、公開鍵およびベリファイアを備える証明書を生成し、証明書上の署名を取得して、それにより署名済みの証明書を取得し、署名済みの証明書を出力する。
第1の実施形態において、ユーザデータに基づく値は、ユーザデータと同一である。
第2の実施形態において、前記生成することは、ユニーク識別子とユーザデータに基づく値と公開鍵との結合に関数を適用することによって、ベリファイアを取得することと、ユニーク識別子を証明書に含むことと、を含む。
第3の実施形態において、ユニーク識別子は、少なくとも1つの装置または少なくとも1つのリソースに関するユニーク識別子である。
第4の実施形態において、関数は、一方向性関数または暗号化関数である。
第5の実施形態において、ユーザデータは、パスワードである。
本開示の有益な特徴は、非限定的例として、以下の図を参照しながら記載されるであろう。
本開示が実施された代表的なシステムを説明する図である。
本開示の有益な実施形態に係る証明書生成を説明する図である。
本開示の第1の有益な実施形態に係る相互装置認証を説明する図である。
図1は、本開示が実施された代表的なシステム100を図説する。システム100は、第1のコンピューティング装置(“第1の装置”)110と、第2のコンピューティング装置(“第2の装置”)120とを備える。第1および第2の装置110、120は、標準のパーソナルコンピュータ(PC)、ワークステーション、スマートフォン、およびタブレットなどの、計算を実行することが可能な任意の種類の適当なコンピュータまたは装置であってよい。第1および第2の装置110、120は、それぞれ、好ましくは、少なくとも1つのプロセッサ111、121、内部または外部メモリ112、122、ユーザと相互作用するためのユーザインタフェース113、123、および接続130上で他の装置と相互作用するための第2のインタフェース114、124を備える。第1および第2の装置110、120は、それぞれ、好ましくは、プロセッサによって実行される時に、この後に記載される方法のいずれかを実行する命令を記憶するデジタルデータサポート140からソフトウェアプログラムを読み出すためのインタフェース(図示しない)をも備える。図説された装置は明確化のために非常に簡潔化されていること、および、実際の装置はさらに電源および永続的記憶装置などの機能を備えているであろうことは、当業者であれば理解できるであろう。
簡潔に述べると、本開示の顕著な着想は、信頼のアンカー(anchor:支え, よりどころ)が、(例えば、外部の信頼された認証機関の代わりに)ユーザデータに基づく、証明書を生成する装置の能力にある点である。ユーザデータは、例えば、パスワード(これ以降、非限定的例として使用される)、パスフレーズ、または生体データであることができる。
ユーザが新しい装置をユーザの装置の群(クラスタ:cluster)(すなわち、接続されたときに、アドホックネットワークの一部となる装置群)に登録することを望むとき、その新しい装置について証明書を生成することが必要である。登録処理は、第1の装置のインストール前にユーザが選択するパスワードの知識に基づく。そして、それぞれの新しい装置について、再度パスワードが必要とされ、装置の登録の間に生成されてそれぞれの装置に記憶されたパスワードベリファイアに対して検証される。パスワードの使用は認証されていない装置の登録を回避することが理解されるであろう。パスワードベリファイアに加えて、それぞれの登録された装置は、公開鍵および関連付けられた秘密鍵について自己署名された証明書を生成する。公開鍵は、任意の適当な方法によって取得されうる。公開鍵は、その装置によって生成され、またはさらなる装置から受信されうる。そして、公開鍵は、必要とされるとき、またはメモリから読みだされるとき、生成され、または受信されうる。
しかしながら、セキュリティを提供するために、正しいパスワードが提供されなければ、正当な自己署名がなされた証明書を生成することはできないであろう。この目的のために、証明書は、証明書の公開鍵とパスワードとを安全に紐付け、そして、その結果として生じる“紐付け”は、証明書に挿入されて、パスワードベリファイアとして使用される。そして、証明書は、さらなる装置、または内部もしくは外部メモリに出力されることができる。
好ましくは、紐付けは、パスワードと公開鍵との結合、好都合には連結に、または、装置もしくはリソースについての少なくとも1つのユニーク識別子(uid)とパスワードと公開鍵との連結に作用する、好ましくは一方向性の、関数Fを使用して行われる。
パスワードベリファイア=F(パスワード|公開鍵)またはF(uid|パスワード|公開鍵)
ユニーク識別子は、1つまたは複数の装置に記憶されたファイルのグループに関する、またはユーザがアクセスすることができる装置のグループに関するものであることが可能である。例えば、これは、“ルート”および“ユーザ”のような2つの権限レベルを有することを可能とすることができ、前者は完全なアクセス権を有し、ユーザは制限されたアクセス(すなわち、少なくとも1つのユニーク識別子によって定義された装置またはリソースに対するアクセス)を有する。
ユニーク識別子は、1つまたは複数の装置に記憶されたファイルのグループに関する、またはユーザがアクセスすることができる装置のグループに関するものであることが可能である。例えば、これは、“ルート”および“ユーザ”のような2つの権限レベルを有することを可能とすることができ、前者は完全なアクセス権を有し、ユーザは制限されたアクセス(すなわち、少なくとも1つのユニーク識別子によって定義された装置またはリソースに対するアクセス)を有する。
関数Fは、任意の適当なもの、好適には暗号法の、本技術における一方向性関数、例えば、SHA−1およびSHA−3などのハッシュ関数または暗号化関数であることが可能である。
RSAの場合、公開鍵は、公開指数(public exponent)eおよびモジュラスNによって表され、パスワードベリファイアは、好ましくは、以下の方法の1つにおいて計算される。
・パスワードベリファイア=F(パスワード|(N,e))またはF(uid|パスワード|(N,e))
・パスワードベリファイア=F(パスワード|N)またはF(uid|パスワード|(N,e))
DSA(Digital Signature Algorithm)および楕円曲線暗号の場合、公開鍵は、公開パラメータ(すなわち、2つのモジュラス(moduli)p,qおよびジェネレータgx)をも含み、パスワードベリファイアは、好ましくは、以下の方法のうちの1つにおいて計算される。
・パスワードベリファイア=F(パスワード|N)またはF(uid|パスワード|(N,e))
DSA(Digital Signature Algorithm)および楕円曲線暗号の場合、公開鍵は、公開パラメータ(すなわち、2つのモジュラス(moduli)p,qおよびジェネレータgx)をも含み、パスワードベリファイアは、好ましくは、以下の方法のうちの1つにおいて計算される。
・パスワードベリファイア=F(パスワード|(gx,p,q))またはF(uid|パスワード|(gx,p,q))
・パスワードベリファイア=F(パスワード|(gx,p))またはF(uid|パスワード|(gx,p))
パスワードベリファイアは、公開とされうるため、自己署名される前に証明書に追加されることが可能である。
・パスワードベリファイア=F(パスワード|(gx,p))またはF(uid|パスワード|(gx,p))
パスワードベリファイアは、公開とされうるため、自己署名される前に証明書に追加されることが可能である。
図2は、本開示の有益な実施形態に従って証明書生成を図説する。証明書は、識別名(Distinguished Name)(DN)、暗号化公開鍵、およびパスワードベリファイアPVを含む。証明書のDNフィールドは、(シリアル番号、MACアドレス、または一意のリソース識別子のような)ユニーク識別子に設定されることができる。
ステップの多くは、異なる順番で実行されることが可能であることは理解されるであろう。例として、本方法は第1の装置110上で実行される。
1.第1の装置110は、通常はユーザ入力を介して、パスワードを取得する(S202)。
2.第1の装置110は、公開/秘密鍵のペアおよびユニーク識別子(uid)を取得する(S204)。これらは、好ましくは、装置自身によって生成されるが、ユーザまたは他の装置から提供されることも可能である。
3.第1の装置110は、関数Fをユニーク識別子、パスワード、および公開鍵に適用して、パスワードベリファイアを取得する(S206)。
4.第1の装置110は、ユニーク識別子、公開鍵、およびパスワードベリファイアを備える証明書を生成する(S208)。
5.第1の装置110は、公開鍵を使用して証明書に自己署名する(S210)。
装置が、他の装置に、通常は他の装置の秘密鍵を使用してデータへの署名を生成することを要求することも可能である。
図3は、本開示の第1の有益な実施形態に係る装置認証を図説する。この図説の例においては、2つの装置がアドホックネットワークにおいてペアに(すなわち接続)されている。
1.ユーザは、第1の装置110上でそのパスワードを入力する(S302)。
2.第1の装置110は、証明書、すなわち図2に図説されるように証明書1を生成する(S304)。
3.第1の装置110は、証明書1を第2の装置120に送信する(S306)。
4.第2の装置120は、証明書1上の署名を、その中の公開鍵を使用して検証する(S308)。もし署名検証が失敗すれば、第2の装置120は認証を中止する(さらに好ましくはユーザに通知する)。
5.第2の装置120は、ユーザからのパスワードを要求する(S310)。
6.第2の装置120は、ユーザからパスワードを受信する(S312)。
7.第2の装置120は、一方向性関数をユニーク識別子、公開鍵、およびパスワードに適用することによって、検証値(verification value)を生成し(すなわち、第1の装置110が証明書中のパスワードベリファイアを生成するために行ったのと同じ方法)、検証値が、証明書1から取り出されたパスワードベリファイアと合致するかチェックする(S314)。もし合致すれば、ユーザ認証は成功であり、証明書1は信頼された証明書として第2の装置120によって記憶される。不一致の場合は、認証は失敗となる。
ここまでは、第2の装置120が第1の装置110を認証したが、まだ逆についてはなされていない。これを可能にするために、本方法は以下のように進行しうる。
8.第2の装置120は、基本的には図2に図説されるように証明書を生成する(S316)が、第2の装置は、第1の装置110の認証のためにユーザから受信されたパスワードを再利用することができることに留意されたい。
9.第2の装置120は、証明書2を第1の装置に送信する(S318)。
10.第1の装置110は、証明書2上の署名を、その中の公開鍵を使用して検証する(S320)。もし署名検証が失敗すれば、第1の装置110は認証を中止する(さらに好ましくはユーザに通知する)。
11.第1の装置110は、一方向性関数をユニーク識別子、証明書2の公開鍵、およびパスワードに適用することによって、検証値を生成し(すなわち、第2の装置120が証明書2中のパスワードベリファイアを生成するために行ったのと同じ方法)、検証値が、パスワードベリファイアと合致するかチェックする(S322)。もし合致すれば、ユーザ認証は成功であり、証明書2は信頼された証明書として第1の装置110によって記憶される。不一致の場合は、認証は失敗となる。第1の装置110は、ユーザからのパスワードを要求することも、証明書1を生成するために受信されたパスワードを再利用することもできることに留意されたい。しかしながら、装置がパスワードを消去する前に記憶している時間については、比較的短い時間制限があることが有益である。
一旦、両方の装置上で認証が成功すると、証明書ベースのTLS認証が行われうる。証明書1および証明書2(すなわち、図3に図説された認証の間に取り交わされた証明書)を使用して、装置間でTLS相互認証の処理のみが行われうる。もし他の鍵または証明書が提出されれば、認証は失敗する。
変形形態において、ユーザはパスワードを1つの装置上のみで入力する(すなわち、パスワードは第1の装置110上のみで入力される。)
1.第1のパスワード検証の強制が、第1の装置110上で証明書1を使用して行われる。すなわち、第1の装置110がユーザからパスワードを受信し、それを使用して、パスワードベリファイアと比較される認証値を生成する。もし失敗すれば、処理は中止される。
1.第1のパスワード検証の強制が、第1の装置110上で証明書1を使用して行われる。すなわち、第1の装置110がユーザからパスワードを受信し、それを使用して、パスワードベリファイアと比較される認証値を生成する。もし失敗すれば、処理は中止される。
2.TLS認証は第1の装置110と第2の装置120との間で行われる。
3.成功のTLS認証において、
a)第2のパスワードの強制が、第1の装置110上にて、(TSL認証の間に受信された)証明書2からのパスワードベリファイアを使用して行われる。または、
b)第2のパスワードの強制が、第2の装置120上にて、(例えば、TLS認証から生じるセキュア通信チャネル内の第1の装置110から送信された)第1の装置110のパスワードベリファイアを使用して行われる。
a)第2のパスワードの強制が、第1の装置110上にて、(TSL認証の間に受信された)証明書2からのパスワードベリファイアを使用して行われる。または、
b)第2のパスワードの強制が、第2の装置120上にて、(例えば、TLS認証から生じるセキュア通信チャネル内の第1の装置110から送信された)第1の装置110のパスワードベリファイアを使用して行われる。
いくつかのシステムにおいては、セキュアチャネルは、一旦、設定されると、ユーザ認証に使用されることはできない。この場合、ユーザ認証は、セキュアチャネルの外側で、パスワードスニッフィング(password sniffing)にかかりやすいパスワードを作成して行われなければならない。この問題を解決するために、RFC2069/RFC2617または(TLS−SRPに実施されている)拡張PKAS(augmented Password-Authenticated Key Agreement)プロトコルに明記されているように、ダイジェストアクセス認証(Digest Access Authentication)プロトコルを使用することが可能である。そこではネットワークをスニッフィングしている攻撃者は、ユーザとしてログインするため、またはパスワードを推測するためでさえ、十分な情報を取得することはない。以下の変形形態は、Secure Remote Password(SRPプロトコル、さらなる詳細はRFC2945を参照)を実装する。
この変形形態では、以下のパラメータが証明書に、自己署名される前に追加される。
・N’=2q+1,安全素数である(qも素数)、
・g(ジェネレータ) mod N’、および
・A SRPベリファイアv=gpassword mod N’
パスワードは秘密のままであるが、SRPパスワードベリファイアは、公開とされうる。加えて、パスワードベリファイアは、2つの部分に分けられ、gpasswordはパスワードに対応する派生パスワード(derivate password)である。
・g(ジェネレータ) mod N’、および
・A SRPベリファイアv=gpassword mod N’
パスワードは秘密のままであるが、SRPパスワードベリファイアは、公開とされうる。加えて、パスワードベリファイアは、2つの部分に分けられ、gpasswordはパスワードに対応する派生パスワード(derivate password)である。
・PV_1=F(パスワード|(N,e))またはF(uid|パスワード|(N,e))
・PV_2=F((gパスワード,N’,q)|(N,e))またはF(uid|(gパスワード,N’,q)|(N,e))
装置が新しい証明書を受信するとき、証明書がパスワードを知る誰かによって生成されたものであることをチェックしなければならない。これは、システムが使用される前に、行われる。
・PV_2=F((gパスワード,N’,q)|(N,e))またはF(uid|(gパスワード,N’,q)|(N,e))
装置が新しい証明書を受信するとき、証明書がパスワードを知る誰かによって生成されたものであることをチェックしなければならない。これは、システムが使用される前に、行われる。
1.第1の装置110は、A=ga(aはランダム)を第2の装置120に送信する。
2.第2の装置120は、第1の装置110にその公開鍵r=SHA−1(N’,g)およびB=rv+gb(bはランダム)を送信する。
3.2つの装置は、S=SHA−1(A,B)を計算する。
4.第1の装置110は、ユーザからのパスワードを要求する。
5.ユーザは、第1の装置110上にてパスワードを入力する。
6.第1の装置110は、パスワードベリファイア=SHA−1(パスワード|公開鍵)を計算し、r=SHA−1(N’,g)をチェックし、そして、K1=(B−rv)(a+s・パスワード)=(gb)(a+s・パスワード)を生成する。K1は、第2の装置120に送信される。
7.第2の装置120は、K2=(A・Vs)b=(ga・Vs)b=(g{a+s・パスワード})b=(gb){a+s・password}を計算する。K2は、第1の装置110に送信される。
8.2つの装置は、K1=K2であることをチェックする。
一旦、装置がK1およびK2を計算してK1=K2であることをチェックすると、それぞれの装置上の検証モジュールは、検証値の第2の部分のみを生成して(すなわち、装置が証明書に挿入されるパスワードベリファイアPV_2を生成するのと同じ方法)、それがPV_2と等しいことをチェックする。成功であれば、それぞれの装置は、パスワードを知る誰かによって、認証の間に平文のパスワードへのアクセスを有さずに、他の装置の証明書が生成されたことを保証される。
一方で、チェックされたパスワードが装置に対してローカルであるとき、SRPプロトコルは必ずしも使用されない。その場合には、検証モジュールは、平文のパスワードを入手することができる。よって、検証モジュールは、以下のチェックを行う。
1.パスワード検証値の第1の部分を生成し(すなわち、装置がパスワードベリファイアPV_1を生成したのと同じ方法)、それがPV_1と等しいことをチェックする。
2.g、N’、および平文のパスワードからSRP検証値を生成し(すなわち、初めに生成されたのと同じ方法)、それがvと等しいことをチェックする。
3.検証値の第2の部分を生成し、それがPV_2と等しいことをチェックする。
このように、本開示は、トラステッドなCA無しに、特に、アドホックネットワークにおいて、認証を実行する装置に関する方法を提供することが可能であることが、理解されるであろう。
本明細書および(適正であれば)クレーム並びに図面に開示された各機能は、独立して、または任意の適当な組み合わせによって、提供されうる。ハードウェアにて実施されるように記載された機能は、ソフトウェアにても実施されうるし、その逆もありうる。クレームに出現する参照符号は、例示のためのみのものであり、請求の範囲に制限する効力を何ら有するべきではない。
Claims (15)
- 証明書を生成する装置であって、
ユーザデータを受信する手段と、
前記装置について暗号アルゴリズムに関する公開鍵を取得する手段と、
前記公開鍵と前記ユーザデータに基づく値との結合に関数を適用することによって、ベリファイアを取得する手段と、
前記公開鍵および前記ベリファイアを備える前記証明書を生成する手段と、
前記証明書上の署名を取得して、それにより署名済みの証明書を取得する手段と、
前記署名済みの証明書を出力する手段と、
を備える、前記装置。 - 前記取得する手段は、ユニーク識別子と、前記ユーザデータに基づく前記値と、前記公開鍵との結合に前記関数を適用することによって前記ベリファイアを取得し、前記ユニーク識別子を前記証明書中に含めるように構成された、請求項1に記載の装置。
- 前記ユニーク識別子は、少なくとも1つの装置または少なくとも1つのリソースに関するユニーク識別子である、請求項2に記載の装置。
- 前記関数は、一方向性関数または暗号化関数である、請求項1に記載の装置。
- 前記ユーザデータは、パスワードである、請求項1に記載の装置。
- 前記ユーザデータに基づく前記値は、前記ユーザデータと同一である、請求項1に記載の装置。
- 前記暗号アルゴリズムはRSAであり、前記公開鍵はモジュラス(modulus)を備える、請求項1に記載の装置。
- 前記暗号アルゴリズムは、楕円曲線暗号(elliptic curve cryptography)アルゴリズムであり、前記公開鍵は、ジェネレータおよび第1のモジュラス(modulus)を備える、請求項1に記載の装置。
- 前記署名を取得する手段は、前記公開鍵に対応する秘密鍵を使用して前記証明書に署名するように構成された、請求項1に記載の装置。
- 証明書を生成する方法であって、装置のプロセッサにおける、
ユーザデータを受信するステップと、
前記装置について暗号アルゴリズムに関する公開鍵を取得するステップと、
前記公開鍵と前記ユーザデータに基づく値との結合に関数を適用することによって、ベリファイアを取得するステップと、
前記公開鍵および前記ベリファイアを備える前記証明書を生成するステップと、
前記証明書上の署名を取得して、それにより署名済みの証明書を取得するステップと、
前記署名済みの証明書を出力するステップと、
を含む、前記方法。 - 前記ユーザデータに基づく前記値は、前記ユーザデータと同一である、請求項10に記載の方法。
- 前記生成するステップは、ユニーク識別子と、前記ユーザデータに基づく前記値と、前記公開鍵との結合に関数を適用することによって前記ベリファイアを取得すること、および前記ユニーク識別子を前記証明書に含めることを含む、請求項10に記載の方法。
- 前記ユニーク識別子は、少なくとも1つの装置または少なくとも1つのリソースに関するユニーク識別子である、請求項10に記載の方法。
- 前記関数は、一方向性関数または暗号関数である、請求項10に記載の方法。
- 前記ユーザデータは、パスワードである、請求項10に記載の方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP14305158.9A EP2905718A1 (en) | 2014-02-05 | 2014-02-05 | Device and method certificate generation |
EP14305158.9 | 2014-02-05 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2015149722A true JP2015149722A (ja) | 2015-08-20 |
Family
ID=50693571
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015020489A Pending JP2015149722A (ja) | 2014-02-05 | 2015-02-04 | 証明書生成装置および方法 |
Country Status (5)
Country | Link |
---|---|
US (2) | US10110593B2 (ja) |
EP (2) | EP2905718A1 (ja) |
JP (1) | JP2015149722A (ja) |
KR (1) | KR20150092719A (ja) |
CN (1) | CN104821933A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019029988A (ja) * | 2017-08-01 | 2019-02-21 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | 管理システム、車両、及び、情報処理方法 |
JP2019040588A (ja) * | 2017-08-23 | 2019-03-14 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | 運転管理システム、車両、及び、情報処理方法 |
JP2022160475A (ja) * | 2017-08-01 | 2022-10-19 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 情報処理方法、装置、及び車両 |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3153985A1 (en) * | 2015-10-08 | 2017-04-12 | Thomson Licensing | Device and method for password generation in a user device |
DE102015220226A1 (de) * | 2015-10-16 | 2017-04-20 | Volkswagen Aktiengesellschaft | Verfahren zur Zertifizierung durch ein Steuergerät eines Fahrzeugs |
US9755832B2 (en) * | 2015-12-29 | 2017-09-05 | International Business Machines Corporation | Password-authenticated public key encryption and decryption |
US10956555B2 (en) * | 2017-08-01 | 2021-03-23 | Panasonic Intellectual Property Corporation Of America | Management system, vehicle, and information processing method |
CN107959684A (zh) * | 2017-12-08 | 2018-04-24 | 上海壹账通金融科技有限公司 | 安全通信方法、装置、计算机设备及存储介质 |
US10756908B1 (en) | 2019-02-22 | 2020-08-25 | Beyond Identity Inc. | User authentication with self-signed certificate and identity verification |
EP3720082A1 (de) * | 2019-04-05 | 2020-10-07 | Siemens Aktiengesellschaft | Verfahren zum ausstellen einer kryptographisch geschützten authentizitätsbescheinigung für einen benutzer |
US11201741B2 (en) * | 2020-03-03 | 2021-12-14 | The Prudential Insurance Company Of America | System for improving data security |
US11546323B1 (en) * | 2022-08-17 | 2023-01-03 | strongDM, Inc. | Credential management for distributed services |
US11736531B1 (en) | 2022-08-31 | 2023-08-22 | strongDM, Inc. | Managing and monitoring endpoint activity in secured networks |
US11765159B1 (en) | 2022-09-28 | 2023-09-19 | strongDM, Inc. | Connection revocation in overlay networks |
US11916885B1 (en) | 2023-01-09 | 2024-02-27 | strongDM, Inc. | Tunnelling with support for dynamic naming resolution |
US11765207B1 (en) | 2023-03-17 | 2023-09-19 | strongDM, Inc. | Declaring network policies using natural language |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0980559A4 (en) * | 1997-05-09 | 2004-11-03 | Gte Service Corp | BIOMETRIC CERTIFICATES |
US7243236B1 (en) * | 1999-07-29 | 2007-07-10 | Intertrust Technologies Corp. | Systems and methods for using cryptography to protect secure and insecure computing environments |
US7047408B1 (en) | 2000-03-17 | 2006-05-16 | Lucent Technologies Inc. | Secure mutual network authentication and key exchange protocol |
KR100568233B1 (ko) * | 2003-10-17 | 2006-04-07 | 삼성전자주식회사 | 인증서를 이용한 기기 인증 방법 및 상기 방법을 이용하여기기 인증을 수행하는 디지털 컨텐츠 처리 기기 |
US7602910B2 (en) * | 2004-11-17 | 2009-10-13 | Microsoft Corporation | Password protection |
US7814538B2 (en) * | 2005-12-13 | 2010-10-12 | Microsoft Corporation | Two-way authentication using a combined code |
US7958368B2 (en) | 2006-07-14 | 2011-06-07 | Microsoft Corporation | Password-authenticated groups |
US8418235B2 (en) | 2006-11-15 | 2013-04-09 | Research In Motion Limited | Client credential based secure session authentication method and apparatus |
WO2008058388A1 (en) * | 2006-11-15 | 2008-05-22 | Certicom Corp. | Implicit certificate verification |
US20090183000A1 (en) * | 2008-01-16 | 2009-07-16 | Scott Krig | Method And System For Dynamically Granting A DRM License Using A URL |
US8412932B2 (en) * | 2008-02-28 | 2013-04-02 | Red Hat, Inc. | Collecting account access statistics from information provided by presence of client certificates |
US8707031B2 (en) * | 2009-04-07 | 2014-04-22 | Secureauth Corporation | Identity-based certificate management |
DE102010033231B4 (de) * | 2010-08-03 | 2013-08-22 | Siemens Aktiengesellschaft | Verfahren und Vorrichtung zur manipulationssicheren Bereitstellung eines Schlüssel-Zertifikates |
EP3007383B1 (en) * | 2013-05-28 | 2019-08-14 | Hitachi, Ltd. | Biometric signature system, signature verification method, registration terminal, signature generation terminal, and signature verification device |
KR101608184B1 (ko) * | 2013-07-03 | 2016-03-31 | 에이.티 코뮤니케이션즈 가부시끼가이샤 | 인증서버, 인증시스템, 인증방법 및 기록매체 |
-
2014
- 2014-02-05 EP EP14305158.9A patent/EP2905718A1/en not_active Withdrawn
-
2015
- 2015-01-29 EP EP15152974.0A patent/EP2905719B1/en active Active
- 2015-02-02 US US14/611,771 patent/US10110593B2/en not_active Expired - Fee Related
- 2015-02-03 CN CN201510055645.XA patent/CN104821933A/zh active Pending
- 2015-02-04 KR KR1020150017352A patent/KR20150092719A/ko not_active Application Discontinuation
- 2015-02-04 JP JP2015020489A patent/JP2015149722A/ja active Pending
-
2018
- 2018-10-08 US US16/154,107 patent/US20190052622A1/en not_active Abandoned
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019029988A (ja) * | 2017-08-01 | 2019-02-21 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | 管理システム、車両、及び、情報処理方法 |
JP7109238B2 (ja) | 2017-08-01 | 2022-07-29 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 管理システム、車両、及び、情報処理方法 |
JP2022160475A (ja) * | 2017-08-01 | 2022-10-19 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 情報処理方法、装置、及び車両 |
JP7465915B2 (ja) | 2017-08-01 | 2024-04-11 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 情報処理方法、装置、及び車両 |
JP2019040588A (ja) * | 2017-08-23 | 2019-03-14 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | 運転管理システム、車両、及び、情報処理方法 |
Also Published As
Publication number | Publication date |
---|---|
EP2905719A1 (en) | 2015-08-12 |
US10110593B2 (en) | 2018-10-23 |
EP2905719B1 (en) | 2019-03-06 |
US20190052622A1 (en) | 2019-02-14 |
US20150222628A1 (en) | 2015-08-06 |
KR20150092719A (ko) | 2015-08-13 |
EP2905718A1 (en) | 2015-08-12 |
CN104821933A (zh) | 2015-08-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20190052622A1 (en) | Device and method certificate generation | |
US11757662B2 (en) | Confidential authentication and provisioning | |
US9467430B2 (en) | Device, method, and system for secure trust anchor provisioning and protection using tamper-resistant hardware | |
US10637818B2 (en) | System and method for resetting passwords on electronic devices | |
CN107040513B (zh) | 一种可信访问认证处理方法、用户终端和服务端 | |
US20190356649A1 (en) | Local Encryption for Single Sign-On | |
Chattaraj et al. | A new two-server authentication and key agreement protocol for accessing secure cloud services | |
US10374802B2 (en) | Multi-factor simple password exponential key exchange (SPEKE) authentication | |
JP2020526146A (ja) | 第1のアプリケーションと第2のアプリケーションとの間の対称型相互認証方法 | |
US9398024B2 (en) | System and method for reliably authenticating an appliance | |
EP3000216B1 (en) | Secured data channel authentication implying a shared secret | |
WO2014069985A1 (en) | System and method for identity-based entity authentication for client-server communications | |
KR100668446B1 (ko) | 안전한 인증정보 이동방법 | |
KR20210153419A (ko) | Puf를 이용한 인증서 기반 디바이스 인증 장치 및 방법 | |
JP2019526205A (ja) | デバイス間の共通セッション鍵を取得するシステムおよび方法 | |
EP2905717A1 (en) | Device and method for device and user authentication | |
KR20130046781A (ko) | 무선 네트워크 접속 인증 방법 및 그 시스템 | |
RU2771928C2 (ru) | Безопасный обмен данными, обеспечивающий прямую секретность | |
JP2018148293A (ja) | クレデンシャル生成システム及び方法、クライアント端末、サーバ装置、発行依頼装置、クレデンシャル発行装置並びにプログラム | |
US20220083666A1 (en) | Key authentication | |
Rai | A literature on Common Cloud Authentication Techniques | |
KR20130062965A (ko) | 무선 네트워크 접속 인증 방법 및 그 시스템 | |
NO327337B1 (no) | En anordning og en metode for sterk brukerautentisering og kryptering av brukerdata i private virtuelle nettverk |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20161202 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20161202 |