JP2015226137A - Terminal authentication method using client certificate, terminal authentication system, and program - Google Patents
Terminal authentication method using client certificate, terminal authentication system, and program Download PDFInfo
- Publication number
- JP2015226137A JP2015226137A JP2014108990A JP2014108990A JP2015226137A JP 2015226137 A JP2015226137 A JP 2015226137A JP 2014108990 A JP2014108990 A JP 2014108990A JP 2014108990 A JP2014108990 A JP 2014108990A JP 2015226137 A JP2015226137 A JP 2015226137A
- Authority
- JP
- Japan
- Prior art keywords
- user
- registration
- database
- public key
- information
- 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.)
- Granted
Links
Images
Abstract
Description
本発明は、ウェブ(web)サービスなどのネットワークサービスにおける利用者認証に関し、特に、自己署名クライアント証明書を使用する利用者の端末を認証することができる方法、システム及びプログラムに関する。 The present invention relates to user authentication in a network service such as a web service, and more particularly, to a method, system, and program capable of authenticating a user terminal using a self-signed client certificate.
ウェブサービスなどのネットワークサービスを利用者に対して提供する際には、そのネットワークサービスのサーバに対してアクセスしてきた人物あるいは端末が、真正な利用者あるいは利用者端末であるかを確認する必要がある。真正な利用者あるいは利用者端末であることを確認してその利用者あるいは利用者端末を認証することを利用者認証と呼ぶ。利用者認証に関する従来の方法としては、以下に記載するようなものが知られている。 When providing a network service such as a web service to a user, it is necessary to confirm whether the person or terminal accessing the network service server is a genuine user or user terminal. is there. Confirming that the user is a genuine user or user terminal and authenticating the user or user terminal is called user authentication. As a conventional method for user authentication, the following methods are known.
第1の方法として、各々の利用者を識別するID(識別情報:identification)とIDに対応するパスワードとをネットワークサービスに事前に登録させ、利用者のIDとその利用者本人しか知らないパスワードとが正しくセットで提示されたことにより利用者を認証する方法がある。しかしながら、IDとパスワードによる利用者認証は、総当たり攻撃(brute force attack)やリスト型攻撃に弱い、という問題点を有する。 As a first method, an ID (identification information) for identifying each user and a password corresponding to the ID are registered in advance in the network service, and the user's ID and a password that only the user knows are registered. There is a method for authenticating a user by correctly presenting a set. However, user authentication based on ID and password has a problem that it is vulnerable to a brute force attack and a list type attack.
第2の方法として、各々の利用者を識別するIDと、その利用者本人以外の者はメッセージを確認できないことが担保されたメッセージサービスのアドレス(例えば、電子メールアドレスやソーシャルネットワークサービス(SNS:social network service)のダイレクトメールアドレスなど)とをウェブサービスなどのネットワークサービスに事前に登録させ、利用者のIDが提示されたときにその利用者に関して登録されたメッセージサービスのアドレス宛に1回限りの使い捨てパスワード(ワンタイムパスワードとも呼ぶ)を送付し、その後、利用者のIDとその利用者本人でしか受け取れないアドレス宛のメッセージで送られた使い捨てパスワードとが正しくセットで提示されたことにより利用者を認証する方法がある。メッセージサービスを用いた使い捨てパスワードによる利用者認証は、IDとパスワードに依存する方法と比べ、総当たり攻撃やリスト型攻撃には強いが、認証の度にウェブサービスなどのネットワークサービスとのメッセージ交換が発生し、煩雑である、という問題点を有する。 As a second method, an ID for identifying each user and an address of a message service (for example, an e-mail address or a social network service (SNS: SNS)) that ensures that a message other than the user cannot confirm the message. social network service) direct mail address, etc.) in advance in a network service such as a web service, and when the user ID is presented, the message service address registered for that user is only once. Used when the user's ID and the disposable password sent in a message addressed to an address that can only be received by the user are correctly presented as a set. There is a way to authenticate a person. User authentication with a disposable password using a message service is more resistant to brute force attacks and list-type attacks than methods that rely on IDs and passwords, but message authentication with network services such as web services is possible each time authentication is performed. The problem is that it occurs and is complicated.
第3の方法として、公開鍵暗号に基づくクライアント証明書を用いる方法がある。この方法では、各々の利用者に対応したクライアント証明書を事前に当該利用者に配布してその利用者が使用する端末に格納し、SSL(セキュアソケットレイヤー(secure socket layer))/TSL(トランスポートレイヤーセキュリティー(transport layer security))に代表されるセキュアなプロトコルシーケンスにしたがってネットワークサービスに提示されたクライアント証明書を検証することにより、クライアント証明書に格納されたIDに対応する利用者を認証する。この方法は、利用者を認証するものであるとともに、端末に格納されているクライアント証明書を用いていることから、利用者が利用しようとする端末も認証していることになり、端末認証方法としても考えることができる。公開鍵暗号に基づくクライアント証明書を用いる方法では、ネットワークサービスに提示されるクライアント証明書が、クライアント証明書に格納されたIDに対応する正しい利用者の所有物であるか否かの確認作業が重要であり、この確認作業は以下に示すように、例えば、PKI(公開鍵基盤:public key infrastructure)に基づいた枠組みで、あるいは、PGP(プリティグッドプライバシー:pretty good privacy)の枠組みを使用して行われている。 As a third method, there is a method using a client certificate based on public key cryptography. In this method, a client certificate corresponding to each user is distributed to the user in advance and stored in a terminal used by the user, and SSL (secure socket layer) / TSL (translator) The user corresponding to the ID stored in the client certificate is authenticated by verifying the client certificate presented to the network service according to a secure protocol sequence represented by port layer security (transport layer security). . This method authenticates the user and uses the client certificate stored in the terminal, so the terminal that the user intends to use is also authenticated. Can also be considered. In the method using the client certificate based on the public key encryption, it is necessary to confirm whether or not the client certificate presented to the network service is the property of the correct user corresponding to the ID stored in the client certificate. This confirmation is important, as shown below, for example using a framework based on PKI (public key infrastructure) or using a framework of PGP (pretty good privacy). Has been done.
(1)PKIに基づく場合には、社会的に信頼されているCA(認証局:certificate authority)が、運転免許証をはじめとする各種の公的証明書などを用いてオフラインで利用者の本人確認を実施し、本人確認を行った証として利用者の公開鍵証明書であるクライアント証明書に対してCAの秘密鍵で署名することで、確認される。PKIでの信頼モデルは、紙文書に対して利用者がその実印を捺印した際に、市区町村長が発行する印鑑証明書によってその捺印された印影が確かに当該利用者の実印によるものかを確認することと類似している。この場合、実印がその利用者の秘密鍵に対応し、印影が利用者の公開鍵に対応し、印影が示されている印鑑証明書が市区町村長の秘密鍵で署名された公開鍵証明書に対応する。実際には、PKIを運用する場合には、複数のCAを設け、最上位(第1レベル)のルートCAが第2レベルの1または複数のCAを認証し、第2レベルの各CAがそれぞれ第3レベルの1または複数のCAを認証するというように、ツリー状の階層構造に複数のCAを当てはめて認証経路(certification path)を構築することが一般的である。 (1) In the case of being based on PKI, a CA (certificate authority) that is trusted by the public uses an official certificate such as a driver's license offline, and the user's identity Confirmation is performed by signing the client certificate, which is the user's public key certificate, with the CA private key as a proof of identity verification. In the PKI trust model, when a user stamps his / her seal on a paper document, is the seal imprinted by the seal certificate issued by the mayor of the municipality surely based on the user's seal? It is similar to confirming. In this case, the real seal corresponds to the user's private key, the seal stamp corresponds to the user's public key, and the seal certificate showing the seal stamp is signed with the municipal mayor's secret key. Correspond to the letter. In practice, when operating PKI, a plurality of CAs are provided, and the highest-level (first level) root CA authenticates one or more second-level CAs, and each second-level CA It is common to construct a certification path by applying a plurality of CAs to a tree-like hierarchical structure, such as authenticating one or more CAs at the third level.
(2)PGPの枠組みを使用する場合には、「サービス提供者が本人確認した仲介者1、仲介者1が本人確認した仲介者2、…、仲介者Nが本人確認した利用者N」という、いわゆる「信頼の輪」と称される本人確認の連鎖が存在する証として、クライアント証明書に対する各々の仲介者による当該仲介者の秘密鍵による署名の連鎖がなされていることで確認される。信頼の輪は、信頼の輪への参加者の相互扶助的な信頼関係の確立に基づくものであり、特定の参加者を頂点とするような階層構造的なものとはなっていない。
(2) In the case of using the PGP framework, it is referred to as “mediator 1 confirmed by the service provider,
このように上述したクライアント証明書を用いる利用者認証においては、PKIあるいはPGPの信頼モデルに基づいて、PKIにおけるCA署名やPGPにおける仲介者の署名などクライアント証明書に対する信頼できる第三者による署名によって、クライアント証明書の正当性を検証している。具体的な実装例としては、PKIを用いるものでは、Apacheウェブサーバの拡張機能であるmod_ssl(http://www.modssl.org/を参照)とPKI暗号ツールであるopenssl(http://www.openssl.org/を参照)とを組み合わせたものがあり、PGPを用いるものでは、Apacheウェブサーバの拡張機能であるmod_gnutls( HYPERLINK "http://www.outoforder.cc/projects/apache/mod_gnutls/" を参照)とPGP暗号ツールであるgnuTLS(http://gnutls.org/を参照)とを組み合わせたものがある。PKIあるいはPGPに基づいてクライアント証明書の検証が行わなれなかったとすると、利用者が必ずしもその利用者自身のIDではない他人のIDを借用した偽造クライアント証明書を作成してネットワークサービスに提示したとしても、ネットワークサービス側ではそのクライアント証明書が真正なものか偽造のものかを確認することができず、なりすましによるサービス利用を認めてしまうことになる。したがって、クライアント証明書を用いた認証では、PKIあるいはPGPに基づいてクライアント証明書の検証を行うことが重要となる。 In the user authentication using the client certificate as described above, based on the PKI or PGP trust model, the client certificate such as the CA signature in the PKI or the intermediary signature in the PGP is used by a trusted third party. , Verifying the validity of the client certificate. As specific implementation examples, in the case of using PKI, mod_ssl (see http://www.modssl.org/) which is an extension function of the Apache web server and opensl (http: // www) which is a PKI encryption tool. In combination with PGP, mod_gnutls (HYPERLINK "http://www.outoforder.cc/projects/apache/mod_gnutls/ There is a combination of GnuTLS (see http://gnutls.org/) which is a PGP encryption tool. If the client certificate cannot be verified based on PKI or PGP, it is assumed that the user has created a forged client certificate that borrows another person's ID that is not necessarily the user's own ID and presented it to the network service. However, the network service side cannot confirm whether the client certificate is genuine or counterfeit, and the use of the service by impersonation is permitted. Therefore, in authentication using a client certificate, it is important to verify the client certificate based on PKI or PGP.
クライアント証明書による認証は、ID及びパスワードによる認証とは異なって総当たり攻撃やリスト型攻撃に強く、またメッセージサービスを用いた使い捨てパスワードによる方法とは異なって煩雑ではない。しかしながら、ネットワークサービスの提供にあたってクライアント証明書による認証を行うためには、そのネットワークサービスを利用する全ての利用者が、そのネットワークサービスで検証できるクライアント証明書を所持しなければならない、という運用上の問題がある。 Authentication using a client certificate is resistant to brute force attacks and list attacks unlike ID and password authentication, and is not complicated unlike a method using a disposable password using a message service. However, in order to authenticate with a client certificate when providing a network service, all users who use the network service must possess a client certificate that can be verified with the network service. There's a problem.
ウェブサービスなどのネットワークサービスの各々の利用者がPKIに対応した証明書を所有していても、ネットワークサービスが利用者のクライアント証明書を検証するためには、その利用者のクライアントに対して署名しているCAのルート証明書か、クライアント証明書に対して署名しているCAと相互認証関係にあるCAのルート証明書を所持する必要がある。しかしながら、実際には、数多く存在するCA間で相互認証関係を築くことは、インフラ運用コストの問題などから実現しておらず、ネットワークサービスが検証可能なクライアント証明書を利用者が保持していることを期待できない、という問題点がある。また、ネットワークサービスの各々の利用者がPGPに対応した証明書を所有している場合においても、ネットワークサービスが利用者のクライアント証明書を検証するためには、その利用者とネットワークサービスとを結ぶ信頼の輪を導き出さなければならない。この信頼の輪を確実に見つけ出すことが困難であることに鑑みて信頼の連鎖を確実に見つけられるようにCAを仲介者とした信頼関係を導入するものが上述したPKIであることからも明らかなように、PGPを用いる場合においては、PKIを用いる場合にも増して、検証可能なクライアント証明書を利用者が保持していることを期待できない、という問題がある。 Even if each user of a network service such as a web service has a certificate corresponding to PKI, the network service must sign the user's client in order to verify the client certificate of the user. It is necessary to have a CA root certificate that is in a mutual authentication relationship with the CA that has signed the client certificate or the CA that has signed the client certificate. However, in reality, building mutual authentication relationships among a large number of CAs has not been realized due to problems such as infrastructure operation costs, and the user holds a client certificate that can be verified by the network service. There is a problem that we cannot expect it. Further, even when each user of the network service has a certificate corresponding to PGP, in order for the network service to verify the client certificate of the user, the user and the network service are connected. A circle of trust must be derived. It is clear from the above-mentioned PKI that introduces a trust relationship with CA as an intermediary so that a chain of trust can be surely found in view of the difficulty in reliably finding this circle of trust. As described above, when PGP is used, there is a problem that the user cannot be expected to hold a verifiable client certificate, as compared with the case where PKI is used.
上述したようにクライアント証明書による利用者認証は、ID及びパスワードを用いる方法に比べて安全であり、かつ、メッセージサービスと使い捨てパスワードを用いる方法に比べて煩雑ではない、という利点を有する。しかしながら、クライアント証明書による利用者認証は、ネットワークサービスと相互認証可能なクライアント証明書を利用者に準備させるという、現実の社会では未だ完全には整備されていないインフラ基盤を前提としており、現段階では広範な利用者を対象としたネットワークサービスには適用することが難しい、という課題を有する。 As described above, user authentication using a client certificate has an advantage that it is safer than a method using an ID and a password and less complicated than a method using a message service and a disposable password. However, user authentication using client certificates is based on an infrastructure that is not yet fully developed in the real world, in which users are prepared with client certificates that can be mutually authenticated with network services. However, there is a problem that it is difficult to apply to network services for a wide range of users.
本発明の目的は、現実の社会でのインフラ整備を前提とせずにクライアント証明書による利用者認証を実際のネットワークサービスに適用する端末認証方法及び端末認証システムを提供することにある。 An object of the present invention is to provide a terminal authentication method and a terminal authentication system that apply user authentication using a client certificate to an actual network service without assuming infrastructure development in an actual society.
本発明の端末認証方法は、ネットワークサービスにおける端末認証方法であって、サーバが、利用者端末から、利用者の公開鍵を含むクライアント証明書と、利用者の宛先情報と、を含む利用者仮登録を受け付け、公開鍵及び宛先情報をデータベースに格納することと、利用者仮登録を受け付けたときに、サーバが、利用者仮登録に含まれる宛先情報に基づいて利用者に鍵情報を送信することと、サーバが鍵情報に基づいた利用者からの本登録を受け付け、データベースにおいてその利用者について本登録が完了したことを記録することと、データベースに本登録が完了したことが記録されている利用者がネットワークサービスを利用しようとするときに、サーバがデータベースに格納されているその利用者の公開鍵に基づいて利用者端末の認証を行うことと、を有し、利用者の宛先情報は、その利用者以外はメッセージを確認できないことが担保されたメッセージサービスの宛先の情報である。 The terminal authentication method according to the present invention is a terminal authentication method in a network service, in which a server receives a user temporary certificate including a client certificate including a user public key and user destination information from a user terminal. Accepts registration, stores public key and destination information in database, and when accepting user temporary registration, server sends key information to user based on destination information included in user temporary registration And that the server accepts the main registration from the user based on the key information, records that the main registration is completed for the user in the database, and the main registration is recorded in the database. When a user tries to use a network service, the server uses the user's public key stored in the database to Has a carrying out the testimony, the destination information of the user, the other user is information message services that are collateral can not verify the message destination.
本発明の端末認証システムは、ネットワークサービスにおいて利用者端末の認証を行う端末認証装置であって、利用者ごとにその利用者についての宛先情報と公開鍵と登録済フラグとを格納するデータベースと、利用者端末から、利用者の公開鍵を含むクライアント証明書と、利用者の宛先情報と、を含む利用者仮登録を受け付け、公開鍵及び宛先情報をデータベースに格納する仮登録受付部と、利用者仮登録を受け付けたときに、利用者仮登録に含まれる宛先情報に基づいて利用者に鍵情報を送信し、鍵情報に基づいた利用者からの本登録を受け付け、データベースにおいてその利用者について登録済フラグをセットする本登録部と、データベースに登録済フラグがセットされている利用者がネットワークサービスを利用しようとするときに、データベースに格納されているその利用者の公開鍵に基づいて利用者端末の認証を行う端末認証部と、を有し、利用者の宛先情報は、その利用者以外はメッセージを確認できないことが担保されたメッセージサービスの宛先の情報である。 The terminal authentication system of the present invention is a terminal authentication device that performs authentication of a user terminal in a network service, and stores a destination information, a public key, and a registered flag for each user for each user, A temporary registration receiving unit that receives a user temporary registration including a user certificate including a user public key and user destination information from a user terminal, and stores the public key and destination information in a database; When the temporary user registration is accepted, the key information is transmitted to the user based on the destination information included in the temporary user registration, the main registration from the user based on the key information is accepted, and the user is registered in the database. When the main registration department that sets the registered flag and a user who has the registered flag set in the database wants to use the network service A terminal authentication unit that authenticates the user terminal based on the public key of the user stored in the database, and the destination information of the user may not be able to confirm a message other than the user This is information on the destination of the secured message service.
ウェブサービスなどのネットワークサービスにおいて利用者自身の仮登録及び仮登録後の確認電子メールを用いた本登録の仕組み自体は、既存のシステムでも一般的に用いられているが、それらの既存のシステムにおける利用者の認証方法はIDとパスワードとを組み合わせる方法のみであって、総当たり攻撃がリスト型攻撃に弱い、という課題を有する。これに対して本発明は、この既知の利用者登録の仕組みにおけるIDとパスワードを用いた認証の部分に対し、クライアント証明書による認証を持ち込むことで、総当たり攻撃やリスト型攻撃に強い認証機構を実現している。 In network services such as web services, the user's own temporary registration and the main registration mechanism using the confirmation e-mail after provisional registration are generally used in existing systems. The user authentication method is only a method of combining an ID and a password, and has a problem that a brute force attack is weak against a list type attack. In contrast, the present invention provides an authentication mechanism that is strong against brute force attacks and list-type attacks by bringing in authentication using a client certificate to the authentication part using the ID and password in this known user registration mechanism Is realized.
本発明は、利用者本人以外の者はメッセージを確認できないことが担保されたメッセージサービスによる認証と、クライアント証明書による認証とを組み合わせるものである。電子メールなどのメッセージ基盤自体は世の中に十分に浸透しているので、本発明にによれば、クライアント証明書を相互認証するための社会的なインフラの整備を待つことなく、また、煩雑な手順を強いることなく、利用者が既に保持している自己署名クライアント証明書を含めた任意のクライアント証明書による端末認証が可能になるという効果が得られる。 The present invention combines authentication by a message service that ensures that a message other than the user cannot confirm the message and authentication by a client certificate. Since the message infrastructure itself such as e-mail has permeated the world sufficiently, according to the present invention, it is possible to perform complicated procedures without waiting for the development of a social infrastructure for mutual authentication of client certificates. In this case, terminal authentication can be performed using an arbitrary client certificate including a self-signed client certificate already held by the user.
次に、本発明の好ましい実施形態について図面を参照して説明する。図1は、本発明の実施の一形態における端末認証の手順を示している。ここでは、ウェブサービスなどのネットワークサービスを提供するサーバ12が設けられており、このサーバ12に対して利用者端末11がアクセスしようとするときの端末認証について説明する。
Next, preferred embodiments of the present invention will be described with reference to the drawings. FIG. 1 shows a terminal authentication procedure in an embodiment of the present invention. Here, a
利用者端末11には、1対の秘密鍵21と公開鍵22が格納されているものとし、特に公開鍵22は、クライアント証明書24に含まれているものとする。ここでクライアント証明書24は、サーバ12が提供するネットワークサービスを利用する際の認証に用いられるものであって、自己署名証明書であっても、信頼できる公開鍵基盤(PKI)における正規の認証局(CA)によって署名された証明書であっても、あるいは、PGPの枠組みにしたがって他の利用者による署名がなされた証明書であってもよい。また、利用者端末11の利用者には、その利用者以外はメッセージを確認できないことが担保されたメッセージサービスのアドレス(例えば、電子メールアドレスやソーシャルネットワークサービス(SNS)のダイレクトメールアドレスなど)がメッセージ宛先として割り当てられているものとする。図示した例では、メッセージ宛先は、foo@example.comである。
Assume that the
本実施形態の端末認証方法では、利用者端末11を用いてネットワークサービスを利用しようとする利用者は、まず、サーバ12に対して利用者仮登録を行う。利用者仮登録では、利用者端末11は、その格納しているクライアント証明書24とメッセージ宛先とをサーバ12に対して提示する。サーバ12には、利用者及び利用者端末の認証に用いる認証データベース14が設けられており、認証データベース14には、利用者ごとに、その利用者のID(図では「利用者ID」と表示)と、その利用者のメッセージ宛先と、その利用者が使用する利用者端末のクライアント証明書及び公開鍵と、本登録に用いる鍵情報(図では「本登録鍵」と表示)と、本登録が完了したことを示すフラグ(図では「本登録済フラグ」と表示)とを格納できるようになっている。サーバ12は、利用者端末11からの利用者仮登録を受け付けると、認証データベース14に、その利用者の利用者IDとメッセージ宛先とクライアント証明書及び公開鍵とを格納し、また、次の本登録処理で使用する本登録鍵23を設定する。本登録鍵23は利用者のみが知り得る鍵情報であって、例えば、本登録に用いる秘密のネットワークアドレス(具体的にはURL(Uniform Resource Locator))や本登録に用いる秘密パスコードである。
In the terminal authentication method of the present embodiment, a user who intends to use a network service using the
サーバ12は、利用者仮登録を受け付けてメッセージ宛先やクライアント証明書などを認証データベース14に登録した後、利用者による本登録を促すために、利用者以外はメッセージを確認できないことが担保されたメッセージサービスを提供するメッセージ送付システム13(具体的には、例えば、電子メールサーバによって実現される電子メールシステム)を介し、そのメッセージ送付システム13において利用者が利用するアドレスである上述したメッセージ宛先に対し、本登録鍵23を含んだ登録確認メッセージ25を送付する。この登録確認メッセージ25を受け取った利用者は、その利用者のみが知り得る鍵情報である本登録鍵23を用いてサーバ12にアクセスし、利用者本登録を行い、認証データベース14において利用者IDで特定されるその利用者のアカウントを有効化させる。利用者本登録が完了すると、サーバ12は、認証データベース14において、その利用者についての本登録済フラグをセットする。この本登録済フラグのセットは、サーバ12において、利用者端末11のクライアント証明書に対してメッセージアドレスの本人性確認と同レベルでの本人確認を行ったことを記録したことに相当する。これにより、利用者端末11のクライアント証明書24は、PKIにおけるCA署名あるいはPGPにおける仲介者の署名確認と同等の確認が実施されたクライアント証明書としてサーバ12において利用者端末の認証に用いることができるようになる。
After receiving the user temporary registration and registering the message destination, client certificate, and the like in the
本登録を行った後は、利用者端末11がサーバ12にアクセスしてネットワークサービスを利用しようとするたびに、サーバ12は、公開鍵を用いる一般的な端末認証を行う。例えば、サーバ12が提示するチャレンジに対して、利用者端末11がその秘密鍵21による署名をしたもの(レスポンス)と秘密鍵21に対応する事前登録に用いたクライアント証明書24とを返送し、サーバ12は、クライアント証明書の署名を検証する代わりに、送られてきたクライアント証明書24がその利用者に関して既に認証データベース14に登録されているクライアント証明書に合致するかを確認し、その後、クライアント証明書24内の公開鍵22でレスポンスの署名を検証するなどの認証方法がある。
After the main registration, whenever the
端末認証に使用するクライアント証明書を導入するにあたり、クライアント証明書をネットワークサービスのサービス提供者が検証できる必要がある。従来の方法では、クライアント証明書に署名したCA署名(PKIの場合)や個人署名(PGPの場合)とサービス提供者側が保持するCA署名や個人署名との間の相互認証が確実に導き出せるようなインフラ整備が必要であるところ、現時点では運用コストなどの問題によりそのようなインフラ整備の実現が困難であるという課題があった。これに対して本実施形態の方法は、従来のクライアント認証の仕組みにおいて「クライアント証明書の署名の検証」を「メッセージ基盤を用いた事前の本人確認が済んでいるかの登録の有無の確認」に入れ替えるものである。これによって本実施形態では、CA署名や個人署名の相互認証のインフラ整備を待つことなく、容易に実装可能な方法によって、自己署名クライアント証明書を含めて利用者が既に所有するがネットワークサービスの提供者が所有する署名とは相互認証できない任意のクライアント証明書を用いて、総当たり攻撃やリスト型攻撃に強い認証機構を構築される。本実施形態の方法では、利用者本人以外の者はメッセージを確認できないことが担保されたメッセージサービスのアドレスを使用するが、そのようなメッセージサービスの使用は本登録時の1回だけであり、メッセージサービスと使い捨てパスワードとを用いる認証方法のような煩雑さはない。 When introducing a client certificate to be used for terminal authentication, the service provider of the network service needs to be able to verify the client certificate. In the conventional method, mutual authentication between the CA signature (in the case of PKI) or personal signature (in the case of PGP) signed in the client certificate and the CA signature or personal signature held by the service provider side can be reliably derived. Where infrastructure development is necessary, there is a problem that it is difficult to realize such infrastructure development at present due to problems such as operation costs. On the other hand, in the conventional client authentication mechanism, the method of this embodiment changes “verification of signature of client certificate” to “confirmation of presence / absence of registration using message base”. It is to be replaced. As a result, in this embodiment, the network service is provided by the user, including the self-signed client certificate, by a method that can be easily implemented without waiting for the infrastructure for mutual authentication of CA signatures and personal signatures. By using an arbitrary client certificate that cannot be mutually authenticated with the signature owned by the user, an authentication mechanism that is strong against brute force attacks and list attacks is constructed. In the method of the present embodiment, an address of a message service in which it is ensured that a message other than the user cannot confirm the message is used, but such message service is used only once at the time of the main registration, There is no complication like the authentication method using the message service and the disposable password.
さらに本実施形態の認証方法の場合、利用者に関してサーバ12に格納される情報は、公開鍵とメッセージアドレスだけであっていずれも、公開されて利用されることが想定される情報である。すなわち本実施形態では、ユーザIDとパスワードとを用いる認証とは異なり、サービス提供者側では、個人に括り付けられた秘密情報を持つ必要がない。これもサーバ12の運用上などで利点となる。
Furthermore, in the case of the authentication method of the present embodiment, the information stored in the
図2は、図1に示した端末認証方法を実施することが可能な端末認証装置の構成を示している。この端末認証装置30は、ウェブサービスなどのネットワークサービスを提供するサーバの一部として構成されてもよいし、あるいは、ネットワークサービスの提供に当たり、そのネットワークサービスの提供自体を行うサーバとは別個に設けられる認証サーバとして構成されてもよいものである。端末認証装置30は、ネットワーク10を介して利用者端末11に接続している。またネットワーク10には、電子メールシステムなどのメッセージ送付システム13を設けられている。利用者端末11には、図1に示すものと同様に、1対の秘密鍵21と公開鍵22が格納され、特に公開鍵22は、クライアント証明書24に含まれている。
FIG. 2 shows a configuration of a terminal authentication apparatus capable of implementing the terminal authentication method shown in FIG. The
端末認証装置30は、上述した認証データベース14を保持する記憶部31と、仮登録処理を行う仮登録受付部32と、本登録処理を行う本登録部33と、本登録が完了した利用者に関しネットワークサービスの利用時に利用者端末11の認証を行う端末認証部34と、を備えている。仮登録受付部32は、利用者端末11から利用者の公開鍵22を含むクライアント証明書24と、利用者のメッセージ宛先と、を含む利用者仮登録を受け付け、その公開鍵22及びメッセージ宛先を認証データベース14に格納する。本登録部33は、仮登録受付部32から利用者仮登録を受け付けたことを通知され、そのような通知を受けたときに、メッセージ送付システム13を介してメッセージ宛先に対し、本登録鍵を含む登録確認メッセージを送信し、その本登録鍵に基づいた利用者からの本登録を受け付け、認証データベース14においてその利用者について本登録済フラグをセットする。端末認証部34は、認証データベース14において本登録済フラグがセットされている利用者がネットワークサービスを利用しようとするときに、認証データベース14に格納されているその利用者の公開鍵22に基づいて、一般的な公開鍵認証の手順により、利用者端末11の認証を行う。
The
ところで、今後、PKI基盤が整備されることが予想される。そのような整備の過程においては、本発明に基づく認証方法とPKI基盤を用いる認証方法とが共存できることが好ましい。図3は、本発明の別の実施形態の端末認証方法であって、PKI基盤による認証と共存できるようにしたものを示している。ここでは、サーバ12との間で相互認証関係にあるPKI基盤、言い換えればサーバ12が信頼することができるPKI基盤における正規のCAによって発行されたクライアント証明書には、図1に示した例において説明したメッセージ宛先が含まれているものとする。
By the way, it is expected that a PKI infrastructure will be established in the future. In such a maintenance process, it is preferable that the authentication method based on the present invention and the authentication method using the PKI infrastructure can coexist. FIG. 3 shows a terminal authentication method according to another embodiment of the present invention, which can coexist with authentication based on PKI. Here, in the example shown in FIG. 1, the client certificate issued by a regular CA in the PKI infrastructure that is in mutual authentication relationship with the
利用者仮登録において利用者端末11がその格納しているクライアント証明書24とメッセージ宛先とをサーバ12に対して提示したとき、サーバ12は、まず、そのクライアント証明書24が、そのサーバ12が信頼することができるPKI基盤の正規のCA署名によって検証できるものかできないものかを判別する。検証できないものである場合には、図1に示した例と同様に、その利用者の利用者IDとメッセージ宛先とクライアント証明書及び公開鍵とを格納し、本登録鍵23を設定し、本登録処理を実行する。
When the
一方、提示されたクライアント証明書24が検証できるものであるときは、そのクライアント証明書24から取得されるメッセージ宛先と、そのクライアント証明書及び公開鍵を認証データベース14に格納する。クライアント証明書24が既にPKI基盤によって検証されているので、サーバ12は、仮登録によって本登録も完了したものとして本登録処理を省略する。したがって、本登録鍵を設定せず(図では「n/a」で表示)に、即座に本登録済フラグをセットする(図では「レ」で表示)。この場合、利用者は、登録確認メッセージによる本登録を行うことなく、直ちに、ネットワークサービスを利用することが可能となる。
On the other hand, when the presented
図4は、図3に示した端末認証方法を実施することが可能な端末認証装置の構成を示している。この端末認証装置30は、図2に示した端末認証装置に対し、利用者端末11から提示されたクライアント証明書24が、信頼することができるPKI基盤における正規のCAの署名によって検証されているクライアント証明書であるかを判定する証明書判定部35をさらに設けたものである。証明書判定部35は、仮登録受付部32から利用者仮登録を受け付けたことを通知され、そのような通知を受けたときに、仮登録されたクライアント証明書が正規のCAの署名によって検証されているものかを判定し、正規のCAの署名によって検証されているときは、提示されたクライアント証明書からメッセージ宛先を取り出して認証データベース14に格納するとともに、本登録済フラグをセットする。この場合は、本登録部33による本登録処理は実行されない。クライアント証明書が正規のCAの署名で検証されていないときは、証明書判定部35は、仮登録を受け付けたことを本登録部33に通知し、この通知を受けて本登録部33は本登録の処理を実行する。端末認証部34は、図2に示したものと同様に動作する。
FIG. 4 shows the configuration of a terminal authentication apparatus capable of implementing the terminal authentication method shown in FIG. In the
図2及び図4に示す端末認証装置30は、いずれも専用ハードウェアとして構成することもできるが、マイクロプロセッサやメモリ、通信インタフェースなどを備える汎用のコンピュータを利用し、端末認証装置30の機能を実行するコンピュータプログラムをこのコンピュータ上で実行させることによっても実現できる。コンピュータ上でプログラムを実行することによって端末認証装置30を実現する場合、認証データベース14は、そのコンピュータを構成するメモリ内に記憶され格納される。
The
10 ネットワーク
11 利用者端末
12 サーバ
13 メッセージ送付システム
14 認証データベース
21 秘密鍵
22 公開鍵
23 本登録鍵
24 クライアント証明書
25 登録確認メッセージ
30 端末認証装置
31 記憶部
32 仮登録受付部
33 本登録部
34 端末認証部
35 証明書判定部
DESCRIPTION OF
Claims (6)
サーバが、利用者端末から、利用者の公開鍵を含むクライアント証明書と、前記利用者の宛先情報と、を含む利用者仮登録を受け付け、前記公開鍵及び前記宛先情報をデータベースに格納することと、
前記利用者仮登録を受け付けたときに、前記サーバが、前記利用者仮登録に含まれる前記宛先情報に基づいて前記利用者に鍵情報を送信することと、
前記サーバが前記鍵情報に基づいた前記利用者からの本登録を受け付け、前記データベースにおいて当該利用者について本登録が完了したことを記録することと、
前記データベースに前記本登録が完了したことが記録されている利用者が前記ネットワークサービスを利用しようとするときに、前記サーバが前記データベースに格納されている当該利用者の前記公開鍵に基づいて前記利用者端末の認証を行うことと、
を有し、前記利用者の宛先情報は、当該利用者以外はメッセージを確認できないことが担保されたメッセージサービスの宛先の情報である、端末認証方法。 A terminal authentication method in a network service,
The server accepts a user temporary registration including a user certificate including the user's public key and the user's destination information from the user terminal, and stores the public key and the destination information in a database. When,
When receiving the user temporary registration, the server transmits key information to the user based on the destination information included in the user temporary registration; and
The server accepts a main registration from the user based on the key information, and records that the main registration is completed for the user in the database;
When a user who records that the main registration is completed in the database tries to use the network service, the server is based on the public key of the user stored in the database. Authenticating user devices,
The terminal authentication method, wherein the destination information of the user is information on a destination of a message service in which it is ensured that messages other than the user cannot confirm the message.
利用者ごとに当該利用者についての宛先情報と公開鍵と登録済フラグとを格納するデータベースと、
利用者端末から、利用者の公開鍵を含むクライアント証明書と、前記利用者の宛先情報と、を含む利用者仮登録を受け付け、前記公開鍵及び前記宛先情報をデータベースに格納する仮登録受付部と、
前記利用者仮登録を受け付けたときに、該利用者仮登録に含まれる前記宛先情報に基づいて前記利用者に鍵情報を送信し、該鍵情報に基づいた前記利用者からの本登録を受け付け、前記データベースにおいて当該利用者について前記登録済フラグをセットする本登録部と、
前記データベースに前記登録済フラグがセットされている利用者が前記ネットワークサービスを利用しようとするときに、前記データベースに格納されている当該利用者の前記公開鍵に基づいて前記利用者端末の認証を行う端末認証部と、
を有し、前記利用者の宛先情報は、当該利用者以外はメッセージを確認できないことが担保されたメッセージサービスの宛先の情報である、端末認証装置。 A terminal authentication device for authenticating a user terminal in a network service,
A database storing destination information, public key, and registered flag for each user,
A temporary registration accepting unit that accepts a user temporary registration including a client certificate including a public key of the user and the destination information of the user from a user terminal, and stores the public key and the destination information in a database. When,
When the user temporary registration is accepted, the key information is transmitted to the user based on the destination information included in the user temporary registration, and the main registration from the user based on the key information is accepted. A main registration unit for setting the registered flag for the user in the database;
When a user whose registered flag is set in the database intends to use the network service, the user terminal is authenticated based on the public key of the user stored in the database. A terminal authentication unit to perform,
And the destination information of the user is information on a destination of a message service in which it is ensured that a message cannot be confirmed by anyone other than the user.
前記利用者のクライアント証明書が前記正規の認証局の署名によって検証されているときは、前記本登録部に前記鍵情報の送信と前記本登録の受け付けとを行うことなく、前記証明書判定部が当該利用者に関して前記登録済フラグをセットする、請求項3に記載の端末認証装置。 A certificate determination unit for determining whether the client certificate of the user received from the user terminal is a client certificate verified by a signature of a regular certificate authority in a public key infrastructure that can be trusted In addition,
When the client certificate of the user is verified by the signature of the regular certificate authority, the certificate determination unit does not transmit the key information to the main registration unit and accept the main registration. The terminal authentication apparatus according to claim 3, wherein the registered flag is set for the user.
利用者端末から、利用者の公開鍵を含むクライアント証明書と、前記利用者の宛先情報と、を含む利用者仮登録を受け付け、前記公開鍵及び前記宛先情報をデータベースに格納する処理と、
前記利用者仮登録を受け付けたときに、前記利用者仮登録に含まれる前記宛先情報に基づいて前記利用者に鍵情報を送信する処理と、
前記鍵情報に基づいた前記利用者からの本登録を受け付け、前記データベースにおいて当該利用者について本登録が完了したことを記録する処理と、
前記データベースに前記本登録が完了したことが記録されている利用者が前記ネットワークサービスを利用しようとするときに、当該利用者の前記公開鍵に基づいて前記利用者端末の認証を行う処理と、
を実行させ、前記利用者の宛先情報は、当該利用者以外はメッセージを確認できないことが担保されたメッセージサービスの宛先の情報である、プログラム。 In a computer used for user terminal authentication in network services,
A process of accepting a user temporary registration including a user certificate including a user public key and the user destination information from a user terminal, and storing the public key and the destination information in a database;
A process of transmitting key information to the user based on the destination information included in the user temporary registration when the user temporary registration is received;
A process of accepting a main registration from the user based on the key information and recording the completion of the main registration for the user in the database;
A process of authenticating the user terminal based on the public key of the user when a user whose completion of the main registration is recorded in the database intends to use the network service;
And the destination information of the user is information on a destination of a message service in which it is ensured that a message cannot be confirmed by anyone other than the user.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014108990A JP6122399B2 (en) | 2014-05-27 | 2014-05-27 | Terminal authentication method using client certificate, terminal authentication system, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014108990A JP6122399B2 (en) | 2014-05-27 | 2014-05-27 | Terminal authentication method using client certificate, terminal authentication system, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015226137A true JP2015226137A (en) | 2015-12-14 |
JP6122399B2 JP6122399B2 (en) | 2017-04-26 |
Family
ID=54842636
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014108990A Active JP6122399B2 (en) | 2014-05-27 | 2014-05-27 | Terminal authentication method using client certificate, terminal authentication system, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6122399B2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2022077449A (en) * | 2020-11-11 | 2022-05-23 | 株式会社We will | Authentication system using location information |
JP7408486B2 (en) | 2020-05-27 | 2024-01-05 | 株式会社日立製作所 | Evidence preservation method |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000148845A (en) * | 1998-11-04 | 2000-05-30 | Ntt Data Corp | Data registering method and device utilizing electronic mail |
JP2005084747A (en) * | 2003-09-04 | 2005-03-31 | Toshiba Corp | Online individual identification system and program |
JP2007141135A (en) * | 2005-11-22 | 2007-06-07 | Ntt Communications Kk | Information processor, retrieval method and program |
WO2009050924A1 (en) * | 2007-10-19 | 2009-04-23 | Nippon Telegraph And Telephone Corporation | User authentication system and its method |
JP2010108116A (en) * | 2008-10-29 | 2010-05-13 | Hitachi Ltd | Computer, information system, information system transfer method, program, and storage medium |
JP2014090372A (en) * | 2012-10-31 | 2014-05-15 | Sony Corp | Information processing device, information processing system, information processing method, and computer program |
-
2014
- 2014-05-27 JP JP2014108990A patent/JP6122399B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000148845A (en) * | 1998-11-04 | 2000-05-30 | Ntt Data Corp | Data registering method and device utilizing electronic mail |
JP2005084747A (en) * | 2003-09-04 | 2005-03-31 | Toshiba Corp | Online individual identification system and program |
JP2007141135A (en) * | 2005-11-22 | 2007-06-07 | Ntt Communications Kk | Information processor, retrieval method and program |
WO2009050924A1 (en) * | 2007-10-19 | 2009-04-23 | Nippon Telegraph And Telephone Corporation | User authentication system and its method |
JP2010108116A (en) * | 2008-10-29 | 2010-05-13 | Hitachi Ltd | Computer, information system, information system transfer method, program, and storage medium |
JP2014090372A (en) * | 2012-10-31 | 2014-05-15 | Sony Corp | Information processing device, information processing system, information processing method, and computer program |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7408486B2 (en) | 2020-05-27 | 2024-01-05 | 株式会社日立製作所 | Evidence preservation method |
JP2022077449A (en) * | 2020-11-11 | 2022-05-23 | 株式会社We will | Authentication system using location information |
JP7323191B2 (en) | 2020-11-11 | 2023-08-08 | 株式会社We will | Authentication system using location information |
Also Published As
Publication number | Publication date |
---|---|
JP6122399B2 (en) | 2017-04-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10742426B2 (en) | Public key infrastructure and method of distribution | |
JP5468137B2 (en) | Entity two-way authentication method introducing online third party device | |
US8868909B2 (en) | Method for authenticating a communication channel between a client and a server | |
JP5464794B2 (en) | Network management method and network management system | |
WO2016177052A1 (en) | User authentication method and apparatus | |
CN104753881B (en) | A kind of WebService safety certification access control method based on software digital certificate and timestamp | |
EP2770662A1 (en) | Centralized security management method and system for third party application and corresponding communication system | |
US20180241740A1 (en) | Certificate authority | |
CN102984127A (en) | User-centered mobile internet identity managing and identifying method | |
US8966263B2 (en) | System and method of network equipment remote access authentication in a communications network | |
CN102932149A (en) | Integrated identity based encryption (IBE) data encryption system | |
JP5468138B2 (en) | Entity authentication method for introducing online third-party devices | |
US9398024B2 (en) | System and method for reliably authenticating an appliance | |
WO2012166299A1 (en) | Method and system for registering a drm client | |
WO2011038559A1 (en) | Method and system for entity public key acquiring, certificate validation and authentication by introducing an online credible third party | |
US20220116230A1 (en) | Method for securely providing a personalized electronic identity on a terminal | |
WO2014069985A1 (en) | System and method for identity-based entity authentication for client-server communications | |
JP2001186122A (en) | Authentication system and authentication method | |
JP6122399B2 (en) | Terminal authentication method using client certificate, terminal authentication system, and program | |
KR100750214B1 (en) | Log-in Method Using Certificate | |
CN103986724A (en) | Real-name authentication method and system for e-mail | |
US9882891B2 (en) | Identity verification | |
CN113169953B (en) | Method and apparatus for authenticating a device or user | |
Basin et al. | Certificates and Public Key Cryptography |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20151001 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20151005 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160720 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170131 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170207 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170310 |
|
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: 20170328 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170331 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6122399 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |