JP6479724B2 - Secret key synchronization system, user terminal, and secret key synchronization method - Google Patents

Secret key synchronization system, user terminal, and secret key synchronization method Download PDF

Info

Publication number
JP6479724B2
JP6479724B2 JP2016171925A JP2016171925A JP6479724B2 JP 6479724 B2 JP6479724 B2 JP 6479724B2 JP 2016171925 A JP2016171925 A JP 2016171925A JP 2016171925 A JP2016171925 A JP 2016171925A JP 6479724 B2 JP6479724 B2 JP 6479724B2
Authority
JP
Japan
Prior art keywords
signature
user terminal
key
terminal
primary
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
JP2016171925A
Other languages
Japanese (ja)
Other versions
JP2018037988A (en
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2016171925A priority Critical patent/JP6479724B2/en
Publication of JP2018037988A publication Critical patent/JP2018037988A/en
Application granted granted Critical
Publication of JP6479724B2 publication Critical patent/JP6479724B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、公開鍵暗号を用いてユーザ認証するWEBサービスを利用する端末の間でのユーザ認証の秘密鍵同期システム、ユーザ端末及び秘密鍵同期方法に関する。   The present invention relates to a secret key synchronization system, a user terminal, and a secret key synchronization method for user authentication between terminals using a WEB service for user authentication using public key cryptography.

インターネットの利用者は、パソコンやスマートフォン、タブレット端末等の複数の端末を使って、オンラインバンキングやネットショッピング等の各種WEBサービスを利用している。WEBサービスを利用するには、ユーザ認証が必要である。ユーザ認証の方法としては、ユーザID(Identifier、識別子)とパスワードを用いるのが一般的である。
ブラウザにはユーザIDとパスワードの自動入力機能があるが、複数の端末それぞれにユーザIDとパスワードを設定する必要があり、面倒であった。この問題を解消するために、WEBサービスと該WEBサービスのユーザIDとパスワードとの組であるアカウントを、端末間で同期するパスワード同期サービスが普及している。
Internet users use various web services such as online banking and online shopping using a plurality of terminals such as personal computers, smartphones, and tablet terminals. User authentication is required to use the WEB service. As a user authentication method, a user ID (identifier) and a password are generally used.
The browser has an automatic input function of a user ID and a password, but it is troublesome because it is necessary to set a user ID and a password for each of a plurality of terminals. In order to solve this problem, a password synchronization service that synchronizes an account, which is a set of a WEB service and a user ID and password of the WEB service, between terminals is widely used.

図24は、異なる端末上のブラウザ間のパスワードを同期するサービスの概要を示す図である。
パスワード同期サービスは、ユーザが保有する端末上のブラウザ間で、WEBサービスのユーザIDとパスワードとを、パスワード同期サーバを介して、自動共有するサービスである。パスワード同期サービス自体にもユーザIDとパスワードがあり、このユーザIDとパスワードを用いて、ブラウザはパスワード同期サーバにアクセスする。ブラウザは、パスワード同期サーバに自身が記憶していないアカウントがあれば、それをダウンロードし、逆にパスワード同期サーバにないアカウントがあれば、それをアップロードする。こうすることで、ユーザが保有する全ての端末で、WEBサービスのユーザIDとパスワードとが共有され、どの端末からでもWEBサービスのユーザIDとパスワードとが自動入力されるようになる。
FIG. 24 is a diagram showing an overview of a service for synchronizing passwords between browsers on different terminals.
The password synchronization service is a service that automatically shares the user ID and password of the WEB service between the browsers on the terminal owned by the user via the password synchronization server. The password synchronization service itself also has a user ID and password, and the browser accesses the password synchronization server using the user ID and password. If there is an account that is not stored in the password synchronization server, the browser downloads it, and if there is an account that is not in the password synchronization server, uploads it. By doing so, the WEB service user ID and password are shared by all terminals owned by the user, and the WEB service user ID and password are automatically input from any terminal.

しかしながら、パスワード同期サービスには、パスワード同期サーバが攻撃され、アカウントが盗まれてしまうという問題がある。攻撃されると、パスワード同期サービスを利用している全てのユーザの全てのWEBサービスのユーザIDとパスワードとが盗まれて、悪用されてしまう。これは、パスワード同期サーバ上に、ユーザIDとパスワードとが保管されていることに起因している。
この問題を解決する一つの技術として、非特許文献1に記載のFIDO(Fast IDentity Online)という、公開鍵暗号を用いたWEBサービスのユーザ認証技術がある。
However, the password synchronization service has a problem that the password synchronization server is attacked and the account is stolen. When attacked, the user IDs and passwords of all WEB services of all users who use the password synchronization service are stolen and misused. This is because the user ID and the password are stored on the password synchronization server.
As one technique for solving this problem, there is a web service user authentication technique using public key cryptography called FIDO (Fast IDentity Online) described in Non-Patent Document 1.

図25は、公開鍵暗号を用いたユーザ認証技術であるFIDOの概要を示す図である。
図25のWEBサービスBに注目して説明する。FIDOにおけるユーザ認証は、WEBサービスBが直接にユーザXを認証するものではなく、端末P上にある認証モジュールを介した認証である。即ち、認証モジュールがユーザXを認証し、WEBサービスBが、ユーザの代理としての認証モジュールを認証するという、二段階になっている。認証モジュールは、パスワードや生体認証を用いてユーザXが本人であることを確認する。この確認が成功することで、認証モジュール内は、公開鍵暗号の秘密鍵XBを用いることができるようになる。認証モジュールは、WEBサービスBが送信した乱数に、WEBサービスBに対応した秘密鍵XBを用いて署名してWEBサービスBに送信し、WEBサービスBはユーザの公開鍵XBを用いて署名を検証する。この検証に成功することで、WEBサービスBは認証モジュールを介して、ユーザXを認証したことになる。
FIG. 25 is a diagram showing an overview of FIDO, which is a user authentication technique using public key cryptography.
Description will be made by paying attention to the WEB service B in FIG. The user authentication in the FIDO is not performed by the WEB service B directly authenticating the user X but is performed through an authentication module on the terminal P. That is, the authentication module authenticates the user X, and the WEB service B authenticates the authentication module as the user's proxy. The authentication module confirms that the user X is the user using a password or biometric authentication. When this confirmation is successful, the private key XB of public key cryptography can be used in the authentication module. The authentication module signs the random number sent by the WEB service B using the secret key XB corresponding to the WEB service B and sends it to the WEB service B. The WEB service B verifies the signature using the user's public key XB. To do. By succeeding in this verification, the WEB service B authenticates the user X via the authentication module.

“FIDO Alliance”、[online]、[平成28年8月10日検索]、インターネット<URL:https://fidoalliance.org/>“FIDO Alliance”, [online], [searched on August 10, 2016], Internet <URL: https://fidoalliance.org/>

FIDOのユーザ認証では秘密鍵XBの機密性が重要であり、秘密鍵XBは認証モジュール内に閉じ込められており、外部に取り出すことができない。このため、普段、WEBサービスBを使っている端末Pとは別の端末Qから当該WEBサービスBにアクセスしようとしても、当該WEBサービスBに対応した秘密鍵XBが端末Qにはないので、アクセスできない。   In the user authentication of FIDO, the confidentiality of the secret key XB is important, and the secret key XB is confined in the authentication module and cannot be taken out to the outside. For this reason, even if an attempt is made to access the WEB service B from a terminal Q different from the terminal P that normally uses the WEB service B, the terminal Q does not have a secret key XB corresponding to the WEB service B. Can not.

認証モジュールによっては、外部に取り出せるようにしたものもあるが、取り出した秘密鍵XBを保護するためのパスワードが必要であり、手間がかかる。また、秘密鍵XBを更新した際には、端末の数の分だけ操作が必要である。また、端末Pに複数の秘密鍵があり、これらを端末Qに複製しようとする場合には、秘密鍵の数の分だけの操作が必要であり、手間がかかる。   Some authentication modules can be taken out to the outside, but a password for protecting the taken out private key XB is required, which is troublesome. Further, when the secret key XB is updated, the operation is required for the number of terminals. Further, when there are a plurality of secret keys in the terminal P and these are to be copied to the terminal Q, an operation corresponding to the number of secret keys is required, which is troublesome.

本発明は、上記の問題を解決するものであり、事前に登録しておいた、2つのユーザ端末を接続することで、ユーザの操作なしに秘密鍵を複製し合うことが可能となる秘密鍵同期システム、ユーザ端末及び秘密鍵同期方法を提供することを課題とする。   The present invention solves the above-described problem, and by connecting two user terminals that have been registered in advance, a secret key that can be duplicated without any user operation is provided. It is an object to provide a synchronization system, a user terminal, and a secret key synchronization method.

上記課題を解決するための手段として、請求項1に係る発明は、サービスを利用する際の認証に用いる秘密鍵であるサービス秘密鍵を保持するユーザ端末と、前記ユーザ端末に係る情報を保有する端末管理サーバとが、通信ネットワークを介して接続され、2つの前記ユーザ端末の間で前記サービス秘密鍵の複製を行う秘密鍵同期システムであって、前記ユーザ端末は、前記ユーザ端末を認証するための一次署名関係情報の秘密鍵と公開鍵のペアを生成し、自身のユーザ端末識別子と、前記一次署名関係情報の公開鍵と、前記一次署名関係情報の秘密鍵を用いた署名と、を含んだ前記一次署名関係情報を生成し、前記一次署名関係情報を前記端末管理サーバに送信して、自身を一次ユーザ端末とする、端末初期登録部と、自身が前記一次ユーザ端末でない場合に、前記ユーザ端末を認証するための二次署名関係情報の秘密鍵と公開鍵のペアを生成し、自身のユーザ端末識別子と、前記二次署名関係情報の公開鍵と、前記二次署名関係情報の秘密鍵を用いた署名と、を含んだ前記二次署名関係情報を生成し、前記二次署名関係情報を前記一次ユーザ端末に、前記通信ネットワークを介さずに直接通信により送信して、自身を二次ユーザ端末とする、端末登録要求部と、自身が前記一次ユーザ端末である場合に、前記二次ユーザ端末から前記二次署名関係情報を受信し、前記二次署名関係情報の署名の検証に成功した後に、署名の検証に成功した前記二次署名関係情報のユーザ端末識別子と、該ユーザ端末識別子を含んだ前記二次署名関係情報の公開鍵と、前記一次署名関係情報のユーザ端末識別子と、前記一次署名関係情報の公開鍵とを含むデータに、前記一次署名関係情報の秘密鍵で生成した署名を付与して、新たな一次署名関係情報を示す新規一次署名関係情報を生成し、前記新規一次署名関係情報を含んだ情報を前記端末管理サーバに送信する端末登録応答部と、前記複製を行う前記一次ユーザ端末又は前記二次ユーザ端末である2つのユーザ端末の間で、前記複製に用いる暗号化用公開鍵と、前記複製に用いる署名用公開鍵と、前記一次署名関係情報の秘密鍵又は前記二次署名関係情報の秘密鍵を用いて生成した署名とを交換し合うペアリングを実行するペアリング制御部と、前記ペアリングで交換し合った前記暗号化用公開鍵と前記署名用公開鍵とを用いて、前記サービス秘密鍵の前記複製を実行する同期制御部とを備え、前記端末管理サーバは、前記通信ネットワークを介して、前記一次ユーザ端末から前記一次署名関係情報を受信して記憶し、前記新規一次署名関係情報を受信した場合には、前記一次署名関係情報の公開鍵を用いた、前記新規一次署名関係情報の署名の検証成功の後に、前記一次署名関係情報にかえて前記新規一次署名関係情報を記憶する署名関係情報管理部を備えることを特徴とする秘密鍵同期システムである。   As means for solving the above-mentioned problem, the invention according to claim 1 holds a user terminal holding a service secret key, which is a secret key used for authentication when using a service, and information related to the user terminal. A secret key synchronization system that is connected to a terminal management server via a communication network and replicates the service secret key between two user terminals, the user terminal authenticating the user terminal Generating a pair of a private key and a public key of the primary signature relationship information, and including a user terminal identifier of the device, a public key of the primary signature relationship information, and a signature using the secret key of the primary signature relationship information. The primary signature relation information is generated, the primary signature relation information is transmitted to the terminal management server, and the terminal initial registration unit is used as the primary user terminal. If not a terminal, a pair of a private key and public key of secondary signature relation information for authenticating the user terminal is generated, and its own user terminal identifier, a public key of the secondary signature relation information, and the second key The secondary signature relationship information including the signature using the secret key of the next signature relationship information is generated, and the secondary signature relationship information is transmitted to the primary user terminal by direct communication without going through the communication network. Then, when the terminal registration request unit is a secondary user terminal and the terminal registration request unit itself is the primary user terminal, the secondary signature relationship information is received from the secondary user terminal, and the secondary signature relationship is received. After successfully verifying the signature of the information, the user terminal identifier of the secondary signature relationship information that has been successfully verified, the public key of the secondary signature relationship information including the user terminal identifier, and the primary signature relationship Information user A signature generated with the private key of the primary signature relationship information is added to data including a terminal identifier and a public key of the primary signature relationship information, and new primary signature relationship information indicating new primary signature relationship information is generated. A terminal registration response unit that transmits information including the new primary signature relation information to the terminal management server and two user terminals that are the primary user terminal or the secondary user terminal that performs the duplication, Exchange the public key for encryption used for the duplication, the public key for signature used for the duplication, and the signature generated using the private key of the primary signature relation information or the secret key of the secondary signature relation information A pairing control unit that performs pairing, and a synchronization control unit that performs the duplication of the service secret key using the encryption public key and the signature public key exchanged in the pairing; The terminal management server receives and stores the primary signature relationship information from the primary user terminal via the communication network, and when receiving the new primary signature relationship information, the primary signature relationship A signature relation information management unit for storing the new primary signature relation information instead of the primary signature relation information after successful verification of the signature of the new primary signature relation information using a public key of the information, It is a secret key synchronization system.

上記課題を解決するための手段として、請求項6に係る発明は、サービスを利用する際の認証に用いる秘密鍵であるサービス秘密鍵を保持するユーザ端末と、前記ユーザ端末に係る情報を保有する端末管理サーバとが、通信ネットワークを介して接続され、2つの前記ユーザ端末の間で前記サービス秘密鍵の複製を行う秘密鍵同期システムの前記ユーザ端末であって、前記ユーザ端末を認証するための一次署名関係情報の秘密鍵と公開鍵のペアを生成し、自身のユーザ端末識別子と、前記一次署名関係情報の公開鍵と、前記一次署名関係情報の秘密鍵を用いた署名と、を含んだ前記一次署名関係情報を生成し、前記一次署名関係情報を前記端末管理サーバに送信して、自身を一次ユーザ端末とする、端末初期登録部と、自身が前記一次ユーザ端末でない場合に、前記ユーザ端末を認証するための二次署名関係情報の秘密鍵と公開鍵のペアを生成し、自身のユーザ端末識別子と、前記二次署名関係情報の公開鍵と、前記二次署名関係情報の秘密鍵を用いた署名と、を含んだ前記二次署名関係情報を生成し、前記二次署名関係情報を前記一次ユーザ端末に、前記通信ネットワークを介さずに直接通信により送信して、自身を二次ユーザ端末とする、端末登録要求部と、自身が前記一次ユーザ端末である場合に、前記二次ユーザ端末から前記二次署名関係情報を受信し、前記二次署名関係情報の署名の検証に成功した後に、署名の検証に成功した前記二次署名関係情報のユーザ端末識別子と、該ユーザ端末識別子を含んだ前記二次署名関係情報の公開鍵と、前記一次署名関係情報のユーザ端末識別子と、前記一次署名関係情報の公開鍵とを含むデータに、前記一次署名関係情報の秘密鍵で生成した署名を付与して、新たな一次署名関係情報を示す新規一次署名関係情報を生成し、前記新規一次署名関係情報を含んだ情報を前記端末管理サーバに送信する端末登録応答部と、前記複製を行う前記一次ユーザ端末又は前記二次ユーザ端末である2つのユーザ端末の間で、前記複製に用いる暗号化用公開鍵と、前記複製に用いる署名用公開鍵と、前記一次署名関係情報の秘密鍵又は前記二次署名関係情報の秘密鍵を用いて生成した署名とを交換し合うペアリングを実行するペアリング制御部と、前記ペアリングで交換し合った前記暗号化用公開鍵と前記署名用公開鍵とを用いて、前記サービス秘密鍵の前記複製を実行する同期制御部とを備えることを特徴とするユーザ端末である。   As means for solving the above-mentioned problems, the invention according to claim 6 holds a user terminal holding a service secret key, which is a secret key used for authentication when using a service, and information related to the user terminal. A user terminal of a secret key synchronization system connected to a terminal management server via a communication network and replicating the service secret key between the two user terminals, for authenticating the user terminal Generating a pair of a private key and a public key of the primary signature relationship information, including its own user terminal identifier, a public key of the primary signature relationship information, and a signature using the secret key of the primary signature relationship information A terminal initial registration unit that generates the primary signature relation information, transmits the primary signature relation information to the terminal management server, and makes itself a primary user terminal; If it is not the terminal, a pair of a private key and public key of secondary signature relation information for authenticating the user terminal is generated, and its own user terminal identifier, a public key of the secondary signature relation information, and the second key The secondary signature relationship information including the signature using the secret key of the next signature relationship information is generated, and the secondary signature relationship information is transmitted to the primary user terminal by direct communication without going through the communication network. Then, when the terminal registration request unit is a secondary user terminal and the terminal registration request unit itself is the primary user terminal, the secondary signature relationship information is received from the secondary user terminal, and the secondary signature relationship is received. After successfully verifying the signature of the information, the user terminal identifier of the secondary signature relationship information that has been successfully verified, the public key of the secondary signature relationship information including the user terminal identifier, and the primary signature relationship Information user A new primary signature relationship information indicating new primary signature relationship information is generated by adding a signature generated with a secret key of the primary signature relationship information to data including a terminal identifier and a public key of the primary signature relationship information A terminal registration response unit that transmits information including the new primary signature relation information to the terminal management server and two user terminals that are the primary user terminal or the secondary user terminal that performs the duplication, Exchange the public key for encryption used for the duplication, the public key for signature used for the duplication, and the signature generated using the private key of the primary signature relation information or the secret key of the secondary signature relation information A pairing control unit that performs pairing, and a synchronization control unit that performs the duplication of the service secret key using the encryption public key and the signature public key exchanged in the pairing; The It is a user terminal characterized by providing.

上記課題を解決するための手段として、請求項7に係る発明は、サービスを利用する際の認証に用いる秘密鍵であるサービス秘密鍵を保持するユーザ端末と、前記ユーザ端末に係る情報を保有する端末管理サーバとが、通信ネットワークを介して接続され、2つの前記ユーザ端末の間で前記サービス秘密鍵の複製を行う秘密鍵同期システムの秘密鍵同期方法であって、前記ユーザ端末は、前記ユーザ端末を認証するための一次署名関係情報の秘密鍵と公開鍵のペアを生成し、自身のユーザ端末識別子と、前記一次署名関係情報の公開鍵と、前記一次署名関係情報の秘密鍵を用いた署名と、を含んだ前記一次署名関係情報を生成し、前記一次署名関係情報を前記端末管理サーバに送信して、自身を一次ユーザ端末とするステップと、自身が前記一次ユーザ端末でない場合に、前記ユーザ端末を認証するための二次署名関係情報の秘密鍵と公開鍵のペアを生成し、自身のユーザ端末識別子と、前記二次署名関係情報の公開鍵と、前記二次署名関係情報の秘密鍵を用いた署名と、を含んだ前記二次署名関係情報を生成し、前記二次署名関係情報を前記一次ユーザ端末に、前記通信ネットワークを介さずに直接通信により送信して、自身を二次ユーザ端末とするステップと、自身が前記一次ユーザ端末である場合に、前記二次ユーザ端末から前記二次署名関係情報を受信し、前記二次署名関係情報の署名の検証に成功した後に、署名の検証に成功した前記二次署名関係情報のユーザ端末識別子と、該ユーザ端末識別子を含んだ前記二次署名関係情報の公開鍵と、前記一次署名関係情報のユーザ端末識別子と、前記一次署名関係情報の公開鍵とを含むデータに、前記一次署名関係情報の秘密鍵で生成した署名を付与して、新たな一次署名関係情報を示す新規一次署名関係情報を生成し、前記新規一次署名関係情報を含んだ情報を前記端末管理サーバに送信するステップと、前記複製を行う前記一次ユーザ端末又は前記二次ユーザ端末である2つのユーザ端末の間で、前記複製に用いる暗号化用公開鍵と、前記複製に用いる署名用公開鍵と、前記一次署名関係情報の秘密鍵又は前記二次署名関係情報の秘密鍵を用いて生成した署名とを交換し合うペアリングを実行するステップと、前記ペアリングで交換し合った前記暗号化用公開鍵と前記署名用公開鍵とを用いて、前記サービス秘密鍵の前記複製を実行するステップとを実行し、前記端末管理サーバは、前記通信ネットワークを介して、前記一次ユーザ端末から前記一次署名関係情報を受信して記憶し、前記新規一次署名関係情報を受信した場合には、前記一次署名関係情報の公開鍵を用いた、前記新規一次署名関係情報の署名の検証成功の後に、前記一次署名関係情報にかえて前記新規一次署名関係情報を記憶するステップを実行することを特徴とする秘密鍵同期方法である。   As means for solving the above problem, the invention according to claim 7 holds a user terminal holding a service secret key, which is a secret key used for authentication when using a service, and information related to the user terminal. A secret key synchronization method of a secret key synchronization system, which is connected to a terminal management server via a communication network and duplicates the service secret key between two user terminals, wherein the user terminal is the user Generate a pair of a private key and public key of primary signature relationship information for authenticating a terminal, and use its own user terminal identifier, a public key of the primary signature relationship information, and a secret key of the primary signature relationship information Generating the primary signature relationship information including a signature, transmitting the primary signature relationship information to the terminal management server, and making itself a primary user terminal; If it is not the next user terminal, it generates a pair of the private key and public key of the secondary signature relation information for authenticating the user terminal, its own user terminal identifier, the public key of the secondary signature relation information, Generating the secondary signature relationship information including a signature using a secret key of the secondary signature relationship information, and directly communicating the secondary signature relationship information to the primary user terminal without passing through the communication network. And when the mobile terminal is a primary user terminal, the mobile terminal receives the secondary signature related information from the secondary user terminal when the mobile terminal is the primary user terminal. After successfully verifying the signature, the user terminal identifier of the secondary signature related information that has been successfully verified, the public key of the secondary signature related information including the user terminal identifier, and the primary signature related information You A signature generated with the private key of the primary signature relationship information is added to data including a terminal identifier and a public key of the primary signature relationship information, and new primary signature relationship information indicating new primary signature relationship information is generated. And transmitting the information including the new primary signature relation information to the terminal management server and the duplication between the two user terminals that are the primary user terminal or the secondary user terminal performing the duplication. Pairing for exchanging the encryption public key used, the signature public key used for the duplication, and the signature generated using the private key of the primary signature relation information or the secret key of the secondary signature relation information And executing the duplication of the service secret key using the encryption public key and the signature public key exchanged by the pairing, and The terminal management server receives and stores the primary signature related information from the primary user terminal via the communication network, and when receiving the new primary signature related information, the public key of the primary signature related information And a step of storing the new primary signature relationship information in place of the primary signature relationship information after a successful verification of the signature of the new primary signature relationship information using the secret key synchronization method .

かかる構成によれば、ユーザが所有するユーザ端末として最初に登録される(一次署名関係情報の対象である)一次ユーザ端末か、一次ユーザ端末と直接通信を介して、ユーザが所有する2つ目以降のユーザ端末として登録される(二次署名関係情報の対象である)二次ユーザ端末かのいずれかのユーザ端末の間でのみサービス秘密鍵の複製(同期)ができる。登録されていない不正なユーザ端末との間で同期が行われることはなく、サービス秘密鍵の漏洩を防止することができる。   According to such a configuration, the first user terminal registered as the user terminal owned by the user (the target of the primary signature related information) or the second user owned by the user through direct communication with the primary user terminal The service secret key can be duplicated (synchronized) only between any of the secondary user terminals (subject to secondary signature related information) registered as subsequent user terminals. There is no synchronization with an unregistered unauthorized user terminal, and leakage of the service secret key can be prevented.

上記課題を解決するための手段として、請求項2に係る発明は、前記端末登録応答部は、前記新規一次署名関係情報の署名を生成する前に、ユーザ認証を行い、前記ペアリング制御部は、前記ペアリングの前に、ユーザ認証を行うことを特徴とする請求項1に記載の秘密鍵同期システムである。   As a means for solving the above-mentioned problem, in the invention according to claim 2, the terminal registration response unit performs user authentication before generating a signature of the new primary signature related information, and the pairing control unit includes: 2. The secret key synchronization system according to claim 1, wherein user authentication is performed before the pairing.

かかる構成によれば、ユーザ端末の所有者以外のユーザによる、該ユーザ端末を使ってのユーザ端末の登録やペアリング、同期を防止することができる。   According to such a configuration, it is possible to prevent registration, pairing, and synchronization of a user terminal using the user terminal by a user other than the owner of the user terminal.

上記課題を解決するための手段として、請求項3に係る発明は、前記端末管理サーバは、前記ユーザ端末ごとに当該ユーザ端末が利用停止状態であるか否かを記憶し、前記ペアリング制御部は、前記ペアリングの前に、自身が前記利用停止状態であるか否かを、前記端末管理サーバに問合せを行い、前記利用停止状態であるなら前記ペアリングを中止し、前記同期制御部は、前記複製の前に、自身が前記利用停止状態であるか否かを、前記端末管理サーバに問合せを行い、前記利用停止状態であるなら前記複製を中止することを特徴とする請求項1に記載の秘密鍵同期システムである。   As means for solving the above-mentioned problem, the invention according to claim 3 is characterized in that the terminal management server stores, for each user terminal, whether or not the user terminal is in a suspended state, and the pairing control unit. Before the pairing, inquires to the terminal management server whether or not it is in the use suspension state, if the use suspension state, the pairing is stopped, the synchronization control unit Before the duplication, an inquiry is made to the terminal management server as to whether or not it is in the use suspension state, and if the use is in the use suspension state, the duplication is stopped. It is the private key synchronization system described.

かかる構成によれば、紛失したユーザ端末を利用停止状態にしておくことで、該ユーザ端末を使ったペアリングや同期を防止することができる。   According to such a configuration, it is possible to prevent pairing and synchronization using the user terminal by keeping the lost user terminal in a use suspended state.

上記課題を解決するための手段として、請求項4に係る発明は、前記秘密鍵同期システムは、前記ユーザ端末の、鍵の保護能力、ユーザ認証方法、ユーザ認証の強度、セキュア領域の有無、のうちの少なくとも1つを含み安全性のレベルを示す端末能力情報を記憶する端末検証サーバを、さらに備えており、前記ペアリング制御部は、前記ペアリングの前に、ペアリング対象となるユーザ端末の前記端末能力情報を前記端末検証サーバから入手し、前記端末能力情報が示す前記ユーザ端末の前記安全性のレベルが所定の基準を満たさない場合には、前記ペアリングを中止することを特徴とする請求項1に記載の秘密鍵同期システムである。   As a means for solving the above-mentioned problems, the invention according to claim 4 is characterized in that the secret key synchronization system includes: a key protection capability, a user authentication method, a strength of user authentication, and a presence / absence of a secure area of the user terminal. A terminal verification server for storing terminal capability information including at least one of them and indicating a safety level, wherein the pairing control unit is a user terminal to be paired before the pairing The terminal capability information is obtained from the terminal verification server, and the pairing is stopped when the security level of the user terminal indicated by the terminal capability information does not satisfy a predetermined criterion. The secret key synchronization system according to claim 1.

かかる構成によれば、ユーザ認証方法やサービス秘密鍵の保護方法(保護能力)が所定の基準に満たない、安全性のレベルが低いユーザ端末との同期を防止することができる。   According to such a configuration, it is possible to prevent synchronization with a user terminal having a low level of security in which the user authentication method and the service secret key protection method (protection capability) do not satisfy the predetermined standard.

上記課題を解決するための手段として、請求項5に係る発明は、前記秘密鍵同期システムは、前記ユーザ端末の、鍵の保護能力、ユーザ認証方法、ユーザ認証の強度、セキュア領域の有無、のうちの少なくとも1つを含み安全性のレベルを示す端末能力情報を記憶する端末検証サーバを、さらに備えており、前記サービス秘密鍵は、WEBサービスのユーザ認証に用いる秘密鍵であり、前記WEBサービスは、前記WEBサービスのユーザ認証に用いる秘密鍵の複製の可否、前記ユーザ端末の鍵の保護能力、前記ユーザ端末のユーザ認証方法、前記ユーザ端末のユーザ認証の強度、前記ユーザ端末のセキュア領域の有無、のうちの少なくとも1つを規定する認証ポリシを記憶しており、前記同期制御部は、前記WEBサービスのユーザ認証に用いる秘密鍵の複製の前に、前記複製をする先のユーザ端末の前記安全性のレベルが、前記WEBサービスの前記認証ポリシにある安全性のレベルを満たしていない場合には、前記複製を中止することを特徴とする請求項1に記載の秘密鍵同期システムである。   As a means for solving the above-mentioned problem, the invention according to claim 5 is characterized in that the secret key synchronization system includes: a key protection capability, a user authentication method, a strength of user authentication, and a presence / absence of a secure area of the user terminal. A terminal verification server that stores terminal capability information indicating at least one of them and indicating a security level, wherein the service secret key is a secret key used for user authentication of a WEB service, and the WEB service The secret key used for user authentication of the WEB service can be copied, the user terminal key protection capability, the user terminal user authentication method, the user terminal user authentication strength, the user terminal secure area An authentication policy that defines at least one of presence / absence is stored, and the synchronization control unit performs user authentication of the WEB service. If the security level of the user terminal to which the copy is made does not meet the security level in the authentication policy of the WEB service before the secret key is copied, the copy is stopped. The secret key synchronization system according to claim 1, wherein:

かかる構成によれば、FIDO等のWEBサービスのユーザ認証の秘密鍵について、WEBサービスが要求するレベルに合わない低い安全性レベルのユーザ端末へのサービス秘密鍵の複製を防止することができる。   According to such a configuration, it is possible to prevent the service secret key from being copied to a user terminal having a low security level that does not match the level required by the WEB service for the secret key for user authentication of the WEB service such as FIDO.

本発明によれば、事前に登録しておいた、2つのユーザ端末を接続することで、ユーザの操作なしに秘密鍵を複製し合うことが可能となる秘密鍵同期システム、ユーザ端末及び秘密鍵同期方法を提供することを課題とする。   According to the present invention, a secret key synchronization system, a user terminal, and a secret key that can duplicate a secret key without user operation by connecting two user terminals that have been registered in advance. It is an object to provide a synchronization method.

本実施形態に係る秘密鍵同期システムの全体構成を例示する図である。It is a figure which illustrates the whole structure of the private key synchronization system which concerns on this embodiment. 本実施形態に係るユーザ端末の構成を例示する機能ブロック図である。It is a functional block diagram which illustrates the composition of the user terminal concerning this embodiment. 本実施形態に係るユーザ端末のセキュア記憶部に記憶される認証クレデンシャルDBの構成を例示する図である。It is a figure which illustrates the structure of authentication credential DB memorize | stored in the secure memory | storage part of the user terminal which concerns on this embodiment. 本実施形態に係るユーザ端末のセキュア記憶部に記憶される署名関係鍵DBの構成を例示する図である。It is a figure which illustrates the structure of signature related key DB memorize | stored in the secure memory | storage part of the user terminal which concerns on this embodiment. 本実施形態に係るユーザ端末のセキュア記憶部に記憶される同期用鍵DBの構成を例示する図である。It is a figure which illustrates the structure of key DB for a synchronization memorize | stored in the secure memory | storage part of the user terminal which concerns on this embodiment. 本実施形態に係るユーザ端末のセキュア記憶部に記憶されるWEBサービス鍵DBの構成を例示する図である。It is a figure which illustrates the structure of WEB service key DB memorize | stored in the secure memory | storage part of the user terminal which concerns on this embodiment. 本実施形態に係る端末管理サーバの構成を例示する機能ブロック図である。It is a functional block diagram which illustrates the composition of the terminal management server concerning this embodiment. 本実施形態に係る端末管理サーバの記憶部に記憶されるユーザ情報DBの構成を例示する図である。It is a figure which illustrates the composition of user information DB memorized by the storage part of the terminal management server concerning this embodiment. 本実施形態に係る端末管理サーバの記憶部に記憶される署名関係情報DBの構成を例示する図である。It is a figure which illustrates the structure of signature relation information DB memorize | stored in the memory | storage part of the terminal management server which concerns on this embodiment. 本実施形態に係る端末管理サーバの記憶部に記憶される端末利用状況DBの構成を例示する図である。It is a figure which illustrates the structure of terminal utilization condition DB memorize | stored in the memory | storage part of the terminal management server which concerns on this embodiment. 本実施形態に係る一次ユーザ端末の登録処理全体を例示するシーケンス図である。It is a sequence diagram which illustrates the whole registration process of the primary user terminal which concerns on this embodiment. 本実施形態に係る一次ユーザ端末の新規登録を例示するシーケンス図である。It is a sequence diagram which illustrates the new registration of the primary user terminal which concerns on this embodiment. 本実施形態に係る一次ユーザ端末の更新登録処理を例示するシーケンス図である。It is a sequence diagram which illustrates the update registration process of the primary user terminal which concerns on this embodiment. 本実施形態に係る二次ユーザ端末の新規登録を例示するシーケンス図である。It is a sequence diagram which illustrates the new registration of the secondary user terminal which concerns on this embodiment. 本実施形態に係る二次ユーザ端末の新規登録時の二重署名の署名関係情報の構成例を示す図である。It is a figure which shows the structural example of the signature related information of the double signature at the time of the new registration of the secondary user terminal which concerns on this embodiment. 本実施形態に係る二次ユーザ端末の更新登録を例示するシーケンス図である。It is a sequence diagram which illustrates the update registration of the secondary user terminal which concerns on this embodiment. 本実施形態に係る二次ユーザ端末の更新登録時の二重署名の署名関係情報の構成例を示す図である。It is a figure which shows the structural example of the signature related information of the double signature at the time of the update registration of the secondary user terminal which concerns on this embodiment. 本実施形態に係る登録済みのユーザ端末間のペアリング処理を例示するシーケンス図(1)である。It is a sequence diagram (1) which illustrates the pairing process between the registered user terminals concerning this embodiment. 本実施形態に係る登録済みのユーザ端末間のペアリング処理を例示するシーケンス図(2)である。It is a sequence diagram (2) which illustrates the pairing process between the registered user terminals concerning this embodiment. 本実施形態に係る登録済みのユーザ端末間のペアリング処理を例示するシーケンス図(3)である。It is a sequence diagram (3) which illustrates the pairing process between the registered user terminals concerning this embodiment. 本実施形態に係る登録済みのユーザ端末間のペアリング処理を例示するシーケンス図(4)である。It is a sequence diagram (4) which illustrates the pairing process between the registered user terminals which concern on this embodiment. 本実施形態に係るペアリング済みのユーザ端末間の同期処理を例示するシーケンス図(1)である。It is a sequence diagram (1) which illustrates the synchronization process between the user terminals already paired according to the present embodiment. 本実施形態に係るペアリング済みのユーザ端末間の同期処理を例示するシーケンス図(2)である。It is a sequence diagram (2) which illustrates the synchronization process between the paired user terminals which concern on this embodiment. 異なる端末上のブラウザ間のパスワードを同期するサービスの概要を示す図である。It is a figure which shows the outline | summary of the service which synchronizes the password between the browsers on a different terminal. 公開鍵暗号を用いたユーザ認証技術であるFIDOの概要を示す図である。It is a figure which shows the outline | summary of FIDO which is a user authentication technique using a public key encryption.

以下、本発明の実施形態の秘密鍵同期システムを、図面を参照しつつ説明する。
≪本実施形態の秘密鍵同期システム≫
図1は、本実施形態に係る秘密鍵同期システム1の全体構成を例示する図である。
秘密鍵同期システム1は、通信ネットワーク(インターネット)を介して接続される以下の、WEBサービス400のユーザ認証用の秘密鍵を記憶してWEBサービスのユーザ認証を行うユーザ端末100と、該ユーザ端末100に関する情報を記憶する端末管理サーバ200と、ユーザ端末の安全性のレベルを確認(端末能力の検証)するための情報(端末能力情報302)を記憶する端末検証サーバ300と、自身にアクセスするユーザ端末100の安全性のレベルを含んだ認証ポリシ401を記憶するWEBサービス400とからなる。
Hereinafter, a secret key synchronization system according to an embodiment of the present invention will be described with reference to the drawings.
≪Secret key synchronization system of this embodiment≫
FIG. 1 is a diagram illustrating the overall configuration of a secret key synchronization system 1 according to the present embodiment.
The secret key synchronization system 1 includes a user terminal 100 that stores the following secret key for user authentication of the WEB service 400 and performs user authentication of the WEB service, which is connected via a communication network (Internet), and the user terminal 100, a terminal management server 200 that stores information relating to 100, a terminal verification server 300 that stores information (terminal capability information 302) for confirming the safety level of the user terminal (verification of terminal capability), and access to itself. It consists of a WEB service 400 that stores an authentication policy 401 including the security level of the user terminal 100.

ユーザ端末100には、一次ユーザ端末100−1と二次ユーザ端末100−2の2つの種類がある。一次ユーザ端末100−1は、各ユーザが最初に登録する(図1の符号1参照)ユーザ端末100である。2つ目以降のユーザ端末100は、二次ユーザ端末100−2として、一次ユーザ端末を使って登録する(図1の符号2参照)。   There are two types of user terminals 100: primary user terminals 100-1 and secondary user terminals 100-2. The primary user terminal 100-1 is a user terminal 100 that each user first registers (see reference numeral 1 in FIG. 1). The second and subsequent user terminals 100 register using the primary user terminal as the secondary user terminal 100-2 (see reference numeral 2 in FIG. 1).

この登録のとき、一次ユーザ端末100−1と二次ユーザ端末100−2とは、インターネットを介してではなく、通信ケーブル等を用いて直接接続されて通信する(以下、直接通信と記す)。他の直接通信の方法として、Bluetooth(登録商標)のような近距離無線通信やアドホックモードの無線LAN(Local Area Network)を使った直接接続を用いた方法がある。登録対象を直接通信が可能であるユーザ端末100に限定することで、一次ユーザ端末100−1を持たない攻撃者の、遠隔からの不正なユーザ端末100の登録を防ぐことができる。
以下、一次ユーザ端末100−1と二次ユーザ端末100−2とを併せて、登録ユーザ端末と記す。また、登録済みであることが明らかな場合には、登録ユーザ端末を単にユーザ端末と記す。
At the time of registration, the primary user terminal 100-1 and the secondary user terminal 100-2 communicate by being directly connected using a communication cable or the like, not via the Internet (hereinafter referred to as direct communication). Other direct communication methods include short-range wireless communication such as Bluetooth (registered trademark) and direct connection using an ad hoc mode wireless LAN (Local Area Network). By limiting the registration target to the user terminal 100 capable of direct communication, it is possible to prevent an unauthorized user terminal 100 from being remotely registered by an attacker who does not have the primary user terminal 100-1.
Hereinafter, the primary user terminal 100-1 and the secondary user terminal 100-2 are collectively referred to as a registered user terminal. If it is clear that the user has been registered, the registered user terminal is simply referred to as a user terminal.

2つの登録ユーザ端末100は、直接通信が可能であるように接続されてペアリングする(図1の符号3参照)ことで、お互いの暗号用と署名用の公開鍵を交換し合う。WEBサービス400の秘密鍵を同期(複製し合う)する(図1の符号4参照)ときには、このペアリングで入手した署名用(認証用)の公開鍵を用いて同期相手のユーザ端末100を認証し、暗号用の公開鍵を用いて秘密鍵を暗号化して複製する。一度ペアリングした2つのユーザ端末100は、以後は繰返し同期することができる。   The two registered user terminals 100 are connected and paired so that direct communication is possible (see reference numeral 3 in FIG. 1), thereby exchanging public keys for encryption and signature. When synchronizing (duplicating) the private key of the WEB service 400 (see reference numeral 4 in FIG. 1), the user terminal 100 of the synchronization partner is authenticated using the public key for signature (for authentication) obtained by this pairing. Then, the private key is encrypted and copied using the public key for encryption. The two user terminals 100 once paired can be repeatedly synchronized thereafter.

一次ユーザ端末100−1を登録すると、ユーザが一次ユーザ端末100−1を所有していることを示す署名関係情報(後述する図12のD100)を一次ユーザ端末100−1が生成して、端末管理サーバ200に送信し、端末管理サーバ200が署名関係情報DB232(後述する図9)に格納する。後述するように、この署名関係情報(請求項の一次署名関係情報)には、一次ユーザ端末100−1の認証に用いられる公開鍵が含まれている。   When the primary user terminal 100-1 is registered, the primary user terminal 100-1 generates signature relation information (D100 in FIG. 12 described later) indicating that the user owns the primary user terminal 100-1, and the terminal The data is transmitted to the management server 200, and the terminal management server 200 stores the signature relation information DB 232 (FIG. 9 described later). As will be described later, this signature related information (primary signature related information in claims) includes a public key used for authentication of the primary user terminal 100-1.

二次ユーザ端末100−2を登録すると、ユーザが一次ユーザ端末100−1と二次ユーザ端末100−2を所有していることを示す署名関係情報(後述する図15のD170)を一次ユーザ端末100−1が生成して、端末管理サーバ200に送信し、端末管理サーバ200が署名関係情報DB232(後述する図9)に格納する。後述するように、この署名関係情報(請求項の新規一次署名関係情報)には、一次ユーザ端末100−1と二次ユーザ端末100−2の認証に用いられる公開鍵が含まれている。ユーザ端末100は、端末管理サーバ200に署名関係情報を要求することで、最新の登録済みのユーザ端末100の情報を得ることができる。   When the secondary user terminal 100-2 is registered, signature related information (D170 in FIG. 15 to be described later) indicating that the user owns the primary user terminal 100-1 and the secondary user terminal 100-2 is transmitted to the primary user terminal. 100-1 is generated and transmitted to the terminal management server 200, and the terminal management server 200 stores the signature relation information DB 232 (FIG. 9 described later). As will be described later, this signature-related information (new primary signature-related information in the claims) includes public keys used for authentication of the primary user terminal 100-1 and the secondary user terminal 100-2. The user terminal 100 can obtain the latest registered user terminal 100 information by requesting the terminal management server 200 for signature-related information.

ペアリングでは、端末管理サーバ200に相手のユーザ端末100の利用状態の確認(図1の符号3a参照)や端末検証サーバ300にユーザ端末100の能力検証(図1の符号3b参照)を行う。
ユーザ端末100を紛失した場合には、端末管理サーバ200が記憶する該ユーザ端末100の利用状態を停止中にしておく。ペアリングの処理で相手のユーザ端末100の利用状態を確認する(図1の符号3a参照)ことで、紛失したユーザ端末100ではペアリングができなくなる。これは、同期の処理で確認する場合も同様である。
In pairing, the terminal management server 200 confirms the usage state of the partner user terminal 100 (see reference numeral 3a in FIG. 1) and the terminal verification server 300 performs capacity verification of the user terminal 100 (see reference numeral 3b in FIG. 1).
When the user terminal 100 is lost, the usage state of the user terminal 100 stored in the terminal management server 200 is kept stopped. By confirming the usage state of the partner user terminal 100 in the pairing process (see reference numeral 3a in FIG. 1), the lost user terminal 100 cannot perform pairing. The same applies to the case of confirmation in the synchronization process.

また、ペアリングのときに相手のユーザ端末100の端末能力情報302を入手し、能力検証を行う(図1の符号3b参照)ことで、秘密鍵を盗もうとする攻撃に対する対抗力(鍵の保護能力)やユーザ認証の確かさのレベル(ユーザ認証方法やその強度)、セキュア領域の有無等、相手のユーザ端末100が所定の安全性のレベルを確保しているかを確認する。確認できなければ、ユーザ端末100への秘密鍵同期(複製)を中止することで、低い安全レベルのユーザ端末100からの秘密鍵の漏洩を防止することができる。   In addition, the terminal capability information 302 of the partner user terminal 100 is obtained at the time of pairing, and capability verification is performed (see reference numeral 3b in FIG. 1), so that a countermeasure against an attack that attempts to steal the secret key (key Protection capability), certainty level of user authentication (user authentication method and its strength), presence / absence of a secure area, etc., and confirms whether the other user terminal 100 has a predetermined level of safety. If it cannot be confirmed, leakage of the private key from the user terminal 100 with a low security level can be prevented by canceling the private key synchronization (duplication) to the user terminal 100.

WEBサービス400のユーザ認証に用いる秘密鍵の同期を行うときには、相手のユーザ端末100の端末能力情報302に示される安全性のレベルと、WEBサービス400の認証ポリシ401とを照合する(図1の符号4a参照)。照合した結果、WEBサービス400の認証ポリシ401に合わない場合には同期を中止する。認証ポリシ401に合わない低い安全性のレベルのユーザ端末100への秘密鍵同期(複製)を禁止することで、低い安全レベルのユーザ端末100からの秘密鍵の漏洩を防止することができる。   When synchronizing the secret key used for user authentication of the WEB service 400, the security level indicated in the terminal capability information 302 of the partner user terminal 100 is compared with the authentication policy 401 of the WEB service 400 (FIG. 1). Reference 4a). As a result of the collation, if the authentication policy 401 of the WEB service 400 is not met, the synchronization is stopped. By prohibiting secret key synchronization (duplication) to the user terminal 100 with a low security level that does not meet the authentication policy 401, leakage of the secret key from the user terminal 100 with a low security level can be prevented.

図25に示したパスワードで秘密鍵を暗号化し、ユーザ端末100の間で複製する方法では、ユーザ端末100の数とWEBサービス400のユーザ認証用秘密鍵の数との積に比例する操作が必要であった。本実施形態の同期処理では、2つのユーザ端末100を直接接続すれば、ユーザ操作は不要である。   In the method of encrypting the secret key with the password shown in FIG. 25 and copying it between the user terminals 100, an operation proportional to the product of the number of user terminals 100 and the number of user authentication secret keys of the WEB service 400 is required. Met. In the synchronization process of the present embodiment, if two user terminals 100 are directly connected, no user operation is required.

以下、秘密鍵同期システム1を構成する各装置について、図面を参照しながら詳細に説明する。
≪ユーザ端末の構成≫
図2は、本実施形態に係るユーザ端末100の構成を例示する機能ブロック図である。
ユーザ端末100は、ワークステーションやパソコン、スマートフォン等の汎用コンピュータで実現され、制御部110と、記憶部150と、入出力部140とを備える。装置内部のCPU(Central Processing Unit)等の演算処理装置がメモリに記憶された制御プログラムを実行することによって、制御部110として機能する。制御部110は、鍵管理セキュアアプリ120と、鍵管理ノンセキュアアプリ130とを備える。
Hereinafter, each device constituting the secret key synchronization system 1 will be described in detail with reference to the drawings.
<< User terminal configuration >>
FIG. 2 is a functional block diagram illustrating the configuration of the user terminal 100 according to this embodiment.
The user terminal 100 is realized by a general-purpose computer such as a workstation, a personal computer, or a smartphone, and includes a control unit 110, a storage unit 150, and an input / output unit 140. An arithmetic processing device such as a CPU (Central Processing Unit) inside the device functions as the control unit 110 by executing a control program stored in the memory. The control unit 110 includes a key management secure application 120 and a key management non-secure application 130.

また、ユーザ端末100は、RAM(Random Access Memory)、フラッシュメモリ等の半導体メモリ素子、又は、ハードディスク、光ディスク等の記憶装置によって実現される記憶部150を備え、さらに記憶部150はセキュア記憶部160を備える。セキュア記憶部160は、ユーザ端末100のOS(Operating System)の機能により、鍵管理セキュアアプリ120だけがアクセス可能になっている。OSの機能によらず、鍵管理セキュアアプリ120がもつ鍵で暗号化しておくことで、鍵管理セキュアアプリ120以外のプログラムがアクセスできないようにしておくこともできる。
セキュア記憶部160は、認証クレデンシャルDB161と、署名関係鍵DB162と、WEBサービス鍵DB163と、同期用鍵DB164と、端末検証用秘密鍵165とを記憶する。
In addition, the user terminal 100 includes a storage unit 150 realized by a semiconductor memory device such as a RAM (Random Access Memory) or a flash memory, or a storage device such as a hard disk or an optical disk, and the storage unit 150 further includes a secure storage unit 160. Is provided. The secure storage unit 160 can be accessed only by the key management secure application 120 by the function of the OS (Operating System) of the user terminal 100. Regardless of the function of the OS, by encrypting with the key of the key management secure application 120, it is possible to prevent access to programs other than the key management secure application 120.
The secure storage unit 160 stores an authentication credential DB 161, a signature relation key DB 162, a WEB service key DB 163, a synchronization key DB 164, and a terminal verification secret key 165.

入出力部140は、端末管理サーバ200や他のユーザ端末100等の他の装置とのデータの入出力を行う。入出力部140は、鍵管理セキュアアプリ120がユーザ認証する際に用いる認証デバイス141と、他のユーザ端末100との直接通信を行う直接通信用インタフェース142と、ネットワークを介して情報の送受信を行う通信インタフェース(図の記載なし)と、キーボードやモニタ等の入出力インタフェース(図の記載なし)とから構成される。認証デバイス141の例として、指紋や静脈などの生体情報を読み取る装置や顔を撮影するカメラ等がある。直接通信用インタフェース142は、2つのユーザ端末100の直接通信に利用され、Bluetooth等の近距離無線通信のインタフェースがある。
以下、制御部110とセキュア記憶部160に含まれる構成について説明する。
The input / output unit 140 inputs / outputs data to / from other devices such as the terminal management server 200 and other user terminals 100. The input / output unit 140 transmits / receives information via the network, the authentication device 141 used when the key management secure application 120 performs user authentication, the direct communication interface 142 that performs direct communication with other user terminals 100, and the network. It is composed of a communication interface (not shown) and an input / output interface (not shown) such as a keyboard and a monitor. Examples of the authentication device 141 include a device that reads biometric information such as a fingerprint and a vein, a camera that captures a face, and the like. The direct communication interface 142 is used for direct communication between the two user terminals 100 and includes a short-range wireless communication interface such as Bluetooth.
Hereinafter, configurations included in the control unit 110 and the secure storage unit 160 will be described.

制御部110に備わる鍵管理セキュアアプリ120は、鍵管理ノンセキュアアプリ130からの指示を受け、秘密鍵同期を可能とするユーザ端末100の登録を行う。また、鍵管理セキュアアプリ120は、登録されたユーザ端末100の間で、セキュア記憶部160のWEBサービス鍵DB163(後述する図6)に記憶された秘密鍵の同期を行う。さらに、鍵管理セキュアアプリ120は、WEBサービス400にアクセスするプログラムからの指示を受け、WEBサービス400のユーザ認証に必要な秘密鍵を用いた署名等の処理を行う。   The key management secure application 120 provided in the control unit 110 receives an instruction from the key management non-secure application 130 and registers the user terminal 100 that enables private key synchronization. Further, the key management secure application 120 synchronizes secret keys stored in the WEB service key DB 163 (FIG. 6 described later) of the secure storage unit 160 between the registered user terminals 100. Further, the key management secure application 120 receives an instruction from a program that accesses the WEB service 400, and performs processing such as signature using a secret key necessary for user authentication of the WEB service 400.

また、鍵管理セキュアアプリ120は、鍵管理ノンセキュアアプリ130と認証クレデンシャルDB161(後述する図3)と署名関係鍵DB162(後述する図4)とを監視し、改竄や削除を検知した場合に、署名関係鍵DB162と、WEBサービス鍵DB163(後述する図6)と、同期用鍵DB164(後述する図5)と、端末検証用秘密鍵165とを削除する。これにより、ユーザ認証を回避して、WEBサービス鍵に不正にアクセスする攻撃を防止することができる。   Also, the key management secure application 120 monitors the key management non-secure application 130, the authentication credential DB 161 (FIG. 3 described later), and the signature related key DB 162 (FIG. 4 described later), and detects tampering or deletion. The signature relation key DB 162, the WEB service key DB 163 (FIG. 6 described later), the synchronization key DB 164 (FIG. 5 described later), and the terminal verification secret key 165 are deleted. As a result, user authentication can be avoided, and attacks that illegally access the WEB service key can be prevented.

鍵管理セキュアアプリ120をOSの特権モード(セキュア領域)で動作させることで、一般のアプリケーションから攻撃を受けることを防ぐことができる。また、認証クレデンシャルDB161が記憶する認証データ、並びに、署名関係鍵DB162とWEBサービス鍵DB163と同期用鍵DB164と端末検証用秘密鍵165とに記憶される秘密鍵の安全性を高めることができる。又は、仮想化技術を用いて、ユーザが通常利用するOSとは別のOS(セキュア領域)上に鍵管理セキュアアプリ120とセキュア記憶部160を備えることで安全性を高めることもできる。   By operating the key management secure application 120 in the privilege mode (secure area) of the OS, it is possible to prevent an attack from a general application. Further, the security of the authentication data stored in the authentication credential DB 161 and the security of the secret key stored in the signature relation key DB 162, the WEB service key DB 163, the synchronization key DB 164, and the terminal verification secret key 165 can be improved. Alternatively, by using the virtualization technology, the security can be improved by providing the key management secure application 120 and the secure storage unit 160 on an OS (secure area) different from the OS normally used by the user.

特権モードでの動作の他に、鍵管理セキュアアプリ120は、ユーザ端末100が起動する中で、先に起動されたデバイスやソフトウェア(機能部)が後に起動されるソフトウェアが正しいか、公開鍵暗号技術を用いて署名検証し、正しい場合に起動することにより、改竄された鍵管理セキュアアプリ120の起動を防ぐことができる。
以下、鍵管理セキュアアプリ120が備える、ユーザ認証部121と、鍵管理部122と、端末初期登録部123と、端末登録要求部124と、端末登録応答部125と、ペアリング制御部126と、同期制御部127とを説明する。
In addition to the operation in the privileged mode, the key management secure application 120 checks whether the software that the device or software (functional unit) that was activated first is activated after the user terminal 100 is activated is public key encryption. By verifying the signature using a technology and starting it when it is correct, the key management secure application 120 that has been tampered with can be prevented from starting.
Hereinafter, the key management secure application 120 includes a user authentication unit 121, a key management unit 122, a terminal initial registration unit 123, a terminal registration request unit 124, a terminal registration response unit 125, a pairing control unit 126, The synchronization control unit 127 will be described.

ユーザ認証部121は、端末初期登録部123や端末登録要求部124等からの要求を受付けて、鍵管理セキュアアプリ120を利用するユーザの認証(ユーザ認証)を行う。ユーザ認証に必要なデータは、セキュア記憶部160の認証クレデンシャルDB161(後述する図3)に格納されている。ユーザ認証の一つに、顔や指紋等の生体情報を用いた認証がある。ユーザ認証部121は、入出力部140が備えるカメラや指紋スキャナ等の認証デバイス141を使って生体情報を読み取り、ユーザ認証を行う。   The user authentication unit 121 receives a request from the terminal initial registration unit 123, the terminal registration request unit 124, and the like, and performs authentication (user authentication) of a user who uses the key management secure application 120. Data necessary for user authentication is stored in an authentication credential DB 161 (FIG. 3 described later) of the secure storage unit 160. One type of user authentication is authentication using biometric information such as a face or fingerprint. The user authentication unit 121 reads the biometric information by using an authentication device 141 such as a camera or a fingerprint scanner provided in the input / output unit 140 and performs user authentication.

図3は、本実施形態に係るユーザ端末100のセキュア記憶部160に記憶される認証クレデンシャルDB161の構成を例示する図である。
認証クレデンシャルDB161は、例えば、テーブル形式のデータであり、1以上の行(以下、レコードと記す)を含む。各レコードは、1つのユーザ認証のためのデータであり、属性として、認証種別と、デバイスと、認証データとを含む。
FIG. 3 is a diagram illustrating a configuration of the authentication credential DB 161 stored in the secure storage unit 160 of the user terminal 100 according to the present embodiment.
The authentication credential DB 161 is, for example, data in a table format, and includes one or more rows (hereinafter referred to as records). Each record is data for one user authentication, and includes an authentication type, a device, and authentication data as attributes.

認証種別は、ユーザ認証の方法であり、顔や指紋といった生体情報を用いた方法やパスワードを用いた方法等がある。
デバイスは、入出力部140が備えるユーザ認証に用いる装置を示す。生体情報を用いる認証方法では、ユーザの生体情報を読み取るために認証デバイス141を用いる。パスワードの場合は、入出力部140が備えるキーボード(図の記載なし)を用いる。
認証データは、照合用のデータである。即ち、ユーザ認証部121が、認証デバイス141やキーボード(図の記載なし)を使って、生体情報やパスワードを取得し、取得したデータと認証データとを照合する。照合に成功すれば、ユーザ認証に成功したことになる。
The authentication type is a user authentication method such as a method using biometric information such as a face or a fingerprint, a method using a password, or the like.
The device indicates an apparatus used for user authentication included in the input / output unit 140. In the authentication method using biometric information, the authentication device 141 is used to read the biometric information of the user. In the case of a password, a keyboard (not shown) provided in the input / output unit 140 is used.
The authentication data is verification data. That is, the user authentication unit 121 acquires biometric information and a password using an authentication device 141 and a keyboard (not shown), and collates the acquired data with authentication data. If the verification is successful, the user authentication is successful.

認証方法が複数あった場合に、どの方法を用いるかは、WEBサービス400の認証ポリシ401や鍵管理セキュアアプリ120自体の認証ポリシに依存する。静脈認証等の詐称が困難なユーザ認証を求めるWEBサービス400がある一方、パスワードでも構わないWEBサービス400もある。また、複数の方法を用いてのユーザ認証を求めるWEBサービス400もある。鍵管理セキュアアプリ120については、後述するようにユーザ端末100の登録のときやペアリングのときにユーザ認証が必要となり、認証方法を使い分けることもできる。   Which method is used when there are a plurality of authentication methods depends on the authentication policy 401 of the WEB service 400 and the authentication policy of the key management secure application 120 itself. While there is a WEB service 400 that requires user authentication such as vein authentication that is difficult to be spoofed, there is also a WEB service 400 that may be a password. There is also a WEB service 400 that requires user authentication using a plurality of methods. As will be described later, the key management secure application 120 requires user authentication when registering or pairing with the user terminal 100, and can use different authentication methods.

鍵管理部122は、ユーザ端末100の署名関係の公開鍵暗号の鍵ペア(以下、署名関係鍵とも記す)を始めとする公開鍵暗号の鍵ペアの生成、公開鍵を用いた暗号化、秘密鍵を用いた復号、秘密鍵を用いた署名生成、公開鍵を用いた署名検証等の処理を行う。これらの処理は、端末初期登録部123やペアリング制御部126等からの要求を受けて行う。
生成した鍵ペアは、用途に応じて、セキュア記憶部160に記憶される、署名関係鍵DB162(後述する図4)、WEBサービス鍵DB163(後述する図6)又は同期用鍵DB164(後述する図5)に格納する。
The key management unit 122 generates a public key encryption key pair including the signature-related public key encryption key pair of the user terminal 100 (hereinafter also referred to as a signature related key), encryption using the public key, and secret Processing such as decryption using a key, signature generation using a private key, and signature verification using a public key is performed. These processes are performed in response to requests from the terminal initial registration unit 123, the pairing control unit 126, and the like.
The generated key pair is stored in the secure storage unit 160 in accordance with the use, such as a signature related key DB 162 (FIG. 4 to be described later), a WEB service key DB 163 (FIG. 6 to be described later), or a synchronization key DB 164 (a diagram to be described later). 5).

端末初期登録部123は、ユーザが所有するユーザ端末100を一次ユーザ端末100−1として、端末管理サーバ200に登録する処理を行う。即ち、端末初期登録部123は鍵管理部122と協働して、署名関係鍵の鍵ペアを生成し、一次ユーザ端末100−1の端末ID(Identifier)と署名関係鍵の公開鍵(以下、署名関係公開鍵とも記す)を含む署名関係情報(請求項の一次署名関係情報)を生成して、端末管理サーバ200に送信する。なお、署名関係公開鍵に対応する秘密鍵を署名関係秘密鍵とも記す。生成した鍵は、セキュア記憶部160の署名関係鍵DB162(後述する図4参照)に格納される。詳細は図11を参照して後述する。   The terminal initial registration unit 123 performs processing for registering the user terminal 100 owned by the user in the terminal management server 200 as the primary user terminal 100-1. In other words, the terminal initial registration unit 123 cooperates with the key management unit 122 to generate a key pair of the signature related key, and the terminal ID (Identifier) of the primary user terminal 100-1 and the public key of the signature related key (hereinafter, referred to as the key) Signature relation information (also referred to as a signature relation public key) is generated and transmitted to the terminal management server 200. A private key corresponding to the signature related public key is also referred to as a signature related private key. The generated key is stored in a signature related key DB 162 (see FIG. 4 described later) in the secure storage unit 160. Details will be described later with reference to FIG.

図4は、本実施形態に係るユーザ端末100のセキュア記憶部160に記憶される署名関係鍵DB162の構成を例示する図である。
署名関係鍵DB162は、例えば、テーブル形式のデータであり、1以上のレコードを含む。各レコードは、ユーザが所有する1つのユーザ端末100を表し、属性として、端末IDと、起点と、秘密鍵と、公開鍵とを含む。
FIG. 4 is a diagram illustrating a configuration of the signature relation key DB 162 stored in the secure storage unit 160 of the user terminal 100 according to the present embodiment.
The signature related key DB 162 is, for example, data in a table format, and includes one or more records. Each record represents one user terminal 100 owned by the user, and includes a terminal ID, a starting point, a secret key, and a public key as attributes.

端末IDは、レコードが表すユーザ端末100の識別情報である。
起点は、レコードが表すユーザ端末100が一次ユーザ端末100−1であるか、即ち最初に登録され、以後のユーザ端末100の登録の際に使われるユーザ端末100であるか否かを示す。一次ユーザ端末100−1であれば「Y」、そうでなければ「N」となる。
The terminal ID is identification information of the user terminal 100 represented by the record.
The starting point indicates whether or not the user terminal 100 represented by the record is the primary user terminal 100-1, that is, whether or not the user terminal 100 is registered first and is used for the subsequent registration of the user terminal 100. If it is the primary user terminal 100-1, “Y”, otherwise “N”.

秘密鍵と公開鍵は、それぞれユーザ端末100の署名関係の公開鍵暗号の鍵ペアの秘密鍵と公開鍵である。秘密鍵は鍵ペアを生成したユーザ端末100のみが保有するので、自身に相当する1つのレコードのみに秘密鍵が格納され、他のユーザ端末100に相当する他のレコードの秘密鍵は格納されておらず、「−」となる。   The secret key and the public key are a secret key and a public key of a public key encryption key pair of the user terminal 100, respectively. Since only the user terminal 100 that generated the key pair holds the secret key, the secret key is stored only in one record corresponding to itself, and the secret keys of other records corresponding to other user terminals 100 are stored. It is “−”.

一次ユーザ端末100−1の署名関係鍵DB162では、全ての登録したユーザ端末100の公開鍵が格納されている。これは、二次ユーザ端末100−2を登録には、一次ユーザ端末100−1を介して登録しており、登録処理の途中で、一次ユーザ端末100−1の端末登録応答部125が、登録対象の二次ユーザ端末100−2の署名関係公開鍵を記録するためである。   In the signature related key DB 162 of the primary user terminal 100-1, the public keys of all registered user terminals 100 are stored. This is because the secondary user terminal 100-2 is registered via the primary user terminal 100-1 for registration, and the terminal registration response unit 125 of the primary user terminal 100-1 registers during the registration process. This is because the signature related public key of the target secondary user terminal 100-2 is recorded.

図2に戻って、端末登録要求部124及び端末登録応答部125は、協働して、以下に示す手順で、ユーザが所有するユーザ端末100を二次ユーザ端末100−2として、一次ユーザ端末100−1を介して、端末管理サーバ200に登録する処理を行う。   Returning to FIG. 2, the terminal registration request unit 124 and the terminal registration response unit 125 cooperate with each other as a secondary user terminal 100-2 as a user terminal 100 owned by a user in the following procedure. A process of registering in the terminal management server 200 is performed via 100-1.

最初に、二次ユーザ端末100−2として登録するユーザ端末100(以下、本処理の説明では二次ユーザ端末100−2と記す)の端末登録要求部124は、二次ユーザ端末100−2の鍵管理部122と協働して、署名関係の鍵ペアを生成し、署名関係情報(請求項の二次署名関係情報)を生成して、一次ユーザ端末100−1の端末登録応答部125に送信する。生成した鍵は、二次ユーザ端末100−2のセキュア記憶部160の署名関係鍵DB162(図4参照)に格納される。   First, the terminal registration request unit 124 of the user terminal 100 registered as the secondary user terminal 100-2 (hereinafter referred to as the secondary user terminal 100-2 in the description of this process) In cooperation with the key management unit 122, a signature-related key pair is generated, signature-related information (secondary signature-related information in claims) is generated, and the terminal registration response unit 125 of the primary user terminal 100-1 receives Send. The generated key is stored in the signature relation key DB 162 (see FIG. 4) of the secure storage unit 160 of the secondary user terminal 100-2.

続いて、一次ユーザ端末100−1の端末登録応答部125は、一次ユーザ端末100−1の鍵管理部122と協働して、受信した二次ユーザ端末100−2の署名関係情報を検証し、自身である一次ユーザ端末100−1と二次ユーザ端末100−2の署名関係情報(請求項の新規一次署名関係情報)を生成して、端末管理サーバ200に送信する。署名関係情報には、一次ユーザ端末100−1のIDと、その署名関係公開鍵と、二次ユーザ端末100−2のIDと、その署名関係公開鍵とを含む。詳細は図14を参照して後述する。
一次ユーザ端末100−1の端末登録応答部125は、二次ユーザ端末100−2の署名関係情報に含まれていた二次ユーザ端末100−2の署名関係公開鍵を署名関係鍵DB162に格納する。
Subsequently, the terminal registration response unit 125 of the primary user terminal 100-1 collaborates with the key management unit 122 of the primary user terminal 100-1 to verify the received signature related information of the secondary user terminal 100-2. Then, it generates signature relationship information (new primary signature relationship information in claims) between the primary user terminal 100-1 and the secondary user terminal 100-2, and transmits them to the terminal management server 200. The signature related information includes the ID of the primary user terminal 100-1, the signature related public key, the ID of the secondary user terminal 100-2, and the signature related public key. Details will be described later with reference to FIG.
The terminal registration response unit 125 of the primary user terminal 100-1 stores the signature related public key of the secondary user terminal 100-2 included in the signature related information of the secondary user terminal 100-2 in the signature related key DB 162. .

二次ユーザ端末100−2以降の新規のユーザ端末100の登録も同様であり、新規のユーザ端末100の端末登録要求部124と、一次ユーザ端末100−1の端末登録応答部125とが、協働して、新規のユーザ端末100を二次ユーザ端末100−2として登録する。一次ユーザ端末100−1の端末登録応答部125が端末管理サーバ200に送信する署名関係情報には、新規のユーザ端末100を含め、既に登録済みのユーザ端末100のIDとその署名関係公開鍵が含まれる。   The registration of the new user terminal 100 after the secondary user terminal 100-2 is the same, and the terminal registration request unit 124 of the new user terminal 100 and the terminal registration response unit 125 of the primary user terminal 100-1 cooperate. The new user terminal 100 is registered as the secondary user terminal 100-2. The signature relation information transmitted to the terminal management server 200 by the terminal registration response unit 125 of the primary user terminal 100-1 includes the ID of the already registered user terminal 100 and its signature relation public key, including the new user terminal 100. included.

2つの登録ユーザ端末(一次ユーザ端末100−1,二次ユーザ端末100−2)のペアリング制御部126は、協働して、以下に示す手順でペアリングの処理を行う。なお、この2つのユーザ端末100は、一次ユーザ端末100−1と二次ユーザ端末100−2であるか、又は、2つの二次ユーザ端末100−2である。
最初に、それぞれのユーザ端末100のペアリング制御部126は、ユーザ認証部121を使って、ユーザ認証を行う。次に、端末管理サーバ200に、自身の利用状態を問合せ、利用停止状態でないことを確認する。
The pairing control unit 126 of the two registered user terminals (primary user terminal 100-1 and secondary user terminal 100-2) cooperates to perform pairing processing according to the following procedure. The two user terminals 100 are the primary user terminal 100-1 and the secondary user terminal 100-2, or the two secondary user terminals 100-2.
First, the pairing control unit 126 of each user terminal 100 performs user authentication using the user authentication unit 121. Next, the terminal management server 200 is inquired about its own usage status, and it is confirmed that the usage status is not stopped.

続いて、2つのユーザ端末100のペアリング制御部126は、安全な通信路を確保するための共有鍵を共有する。共有の方法としては、一般に用いられる、例えばDiffie-Hellman鍵交換アルゴリズムを用いて共有する他に、一方のユーザ端末100のペアリング制御部126が、他方のユーザ端末100の署名関係公開鍵を用いて共有鍵を暗号化して、他方のユーザ端末100に送信し、受信したユーザ端末100が復号して共通鍵を共有することもできる。   Subsequently, the pairing control unit 126 of the two user terminals 100 shares a shared key for securing a secure communication path. As a sharing method, in addition to commonly used, for example, sharing using a Diffie-Hellman key exchange algorithm, the pairing control unit 126 of one user terminal 100 uses the signature-related public key of the other user terminal 100. The shared key can be encrypted and transmitted to the other user terminal 100, and the received user terminal 100 can decrypt and share the common key.

次に、それぞれのユーザ端末100のペアリング制御部126は、端末検証サーバ300から入手した端末検証用公開鍵301を用いて、相手の鍵管理セキュアアプリ120の能力の検証を行う。この検証を通じて、秘密鍵を盗もうとする攻撃に対する対抗力(鍵の保護能力)やユーザ認証の確かさのレベル(ユーザ認証方法やその強度)、セキュア領域の有無等、相手の鍵管理セキュアアプリ120が所定の安全性のレベルを確保していることを確認できる。   Next, the pairing control unit 126 of each user terminal 100 verifies the capability of the partner key management secure application 120 using the terminal verification public key 301 obtained from the terminal verification server 300. Through this verification, the other party's key management secure application, such as the resistance to attacks that attempt to steal the secret key (key protection capability), the level of certainty of user authentication (user authentication method and its strength), the presence of a secure area, etc. It can be confirmed that 120 secures a predetermined level of safety.

続いて、それぞれのユーザ端末100のペアリング制御部126は、自身の鍵管理部122と協働して、WEBサービス認証用の秘密鍵の同期に用いる、暗号化用の鍵ペアと署名用の鍵ペアを生成して、その公開鍵を相手のユーザ端末100に送信する。以下、暗号化用の鍵ペアを同期用暗号化鍵、該ペアの公開鍵を同期用暗号化公開鍵(請求項の暗号化用公開鍵)、該ペアの秘密鍵を同期用暗号化秘密鍵、署名用の鍵ペアを同期用署名鍵、該ペアの公開鍵を同期用署名公開鍵(請求項の署名用公開鍵)、該ペアの秘密鍵を同期用署名秘密鍵とも記す。同期用暗号化鍵と同期用署名鍵は、セキュア記憶部160の同期用鍵DB164(後述する図5参照)に格納される。
ペアリングの詳細な処理は、図18〜図21を参照して後述する。
Subsequently, the pairing control unit 126 of each user terminal 100 cooperates with its own key management unit 122 to use a key pair for encryption and a signature used for synchronization of a secret key for WEB service authentication. A key pair is generated and the public key is transmitted to the other user terminal 100. Hereinafter, the encryption key pair is the synchronization encryption key, the public key of the pair is the synchronization encryption public key (the encryption public key of the claims), and the private key of the pair is the synchronization encryption private key The signature key pair is also referred to as a synchronization signature key, the public key of the pair is also referred to as a synchronization signature public key (signature public key in claims), and the private key of the pair is also referred to as a synchronization signature private key. The encryption key for synchronization and the signature key for synchronization are stored in a synchronization key DB 164 (see FIG. 5 described later) of the secure storage unit 160.
Detailed processing of pairing will be described later with reference to FIGS.

図5は、本実施形態に係るユーザ端末100のセキュア記憶部160に記憶される同期用鍵DB164の構成を例示する図である。
同期用鍵DB164は、例えば、テーブル形式のデータであり、1以上のレコードを含む。各レコードは、同期の相手のユーザ端末100と同期するときに用いる、同期用暗号化鍵と同期用署名鍵を含んでおり、属性として、端末IDと、送信用公開鍵と、受信用秘密鍵と、受信用公開鍵と、署名用秘密鍵と、署名用公開鍵と、検証用公開鍵と、端末能力とを含む。
FIG. 5 is a diagram illustrating a configuration of the synchronization key DB 164 stored in the secure storage unit 160 of the user terminal 100 according to the present embodiment.
The synchronization key DB 164 is, for example, data in a table format and includes one or more records. Each record includes a synchronization encryption key and a synchronization signature key that are used when synchronizing with the user terminal 100 of the synchronization partner, and as attributes, a terminal ID, a transmission public key, and a reception private key A reception public key, a signature private key, a signature public key, a verification public key, and a terminal capability.

送信用公開鍵は、同期相手のユーザ端末100の同期用暗号化公開鍵である。
受信用秘密鍵は、自身の同期用暗号化秘密鍵である。
受信用公開鍵は、自身の同期用暗号化公開鍵である。
署名用秘密鍵は、自身の同期用署名秘密鍵である。
署名用公開鍵は、自身の同期用署名公開鍵である。
検証用公開鍵は、同期相手のユーザ端末100の同期用署名公開鍵である。
端末能力は、同期相手のユーザ端末100の、後述する端末能力情報302であり、ユーザ認証部121の安全性のレベルを示すユーザの認証種別やWEBサービス鍵DB163(後述する図6)の保護方法(保護能力)等を示す。ユーザの認証種別にはパスワード・指紋等があり、WEBサービス鍵DB163の保護方法にはハードウェアによる保護、暗号化による保護などがある。
The transmission public key is an encryption public key for synchronization of the user terminal 100 of the synchronization partner.
The reception private key is its own encryption private key for synchronization.
The reception public key is its own encryption public key for synchronization.
The signature private key is its own signature private key for synchronization.
The signature public key is its own signature public key for synchronization.
The verification public key is a synchronization signature public key of the synchronization partner user terminal 100.
The terminal capability is terminal capability information 302 (to be described later) of the user terminal 100 that is the synchronization partner. (Protective ability). User authentication types include passwords and fingerprints, and WEB service key DB 163 protection methods include hardware protection and encryption protection.

図2に戻って、2つの登録ユーザ端末(一次ユーザ端末100−1,二次ユーザ端末100−2)の同期制御部127は、協働して、以下に示す手順で、2つのユーザ端末100の間のWEBサービスの秘密鍵の同期処理を行う。
最初に、それぞれのユーザ端末100の同期制御部127は、直接通信可能になったことを検知し、次に、端末管理サーバ200に、自身の利用状態を問合せ、利用停止状態でないことを確認する。
Returning to FIG. 2, the synchronization control unit 127 of the two registered user terminals (the primary user terminal 100-1 and the secondary user terminal 100-2) cooperates with the two user terminals 100 in the following procedure. WEB service secret key synchronization process is performed.
First, the synchronization control unit 127 of each user terminal 100 detects that direct communication is possible, and then inquires the terminal management server 200 about its own usage status and confirms that it is not in a usage suspension status. .

続いて、それぞれの同期制御部127は、ペアリング処理を通じて入手した、署名用(認証用)の鍵を用いて、相手を相互に認証する。次に、WEBサービス400の認証ポリシ401と照らし合わせて、該WEBサービスの秘密鍵が同期可能かを確認する。   Subsequently, each synchronization control unit 127 mutually authenticates the other party using the signature (authentication) key obtained through the pairing process. Next, it is confirmed whether or not the secret key of the WEB service can be synchronized with the authentication policy 401 of the WEB service 400.

続いて、それぞれの同期制御部127は、同期可能であるWEBサービスの秘密鍵で、相手が保有していない鍵を、同期用暗号化公開鍵を用いて暗号化して相手に送信する。
同期の詳細な処理は、図22と図23を参照して後述する。
Subsequently, each synchronization control unit 127 encrypts a key that the other party does not have with the secret key of the WEB service that can be synchronized, and transmits it to the other party using the encryption public key for synchronization.
Detailed processing of synchronization will be described later with reference to FIGS.

鍵管理ノンセキュアアプリ130は、ユーザ端末100の利用停止や利用停止解除を端末管理サーバ200に指示する。ユーザ端末100を紛失した場合には、ユーザは他のユーザ端末100の鍵管理ノンセキュアアプリ130を使って、紛失したユーザ端末100を利用停止中にする。利用停止中にすることで、紛失したユーザ端末100の不正使用を防ぐことができる。また、紛失したユーザ端末100が見つかった場合には、鍵管理ノンセキュアアプリ130を使って利用停止中を解除することができる。   The key management non-secure application 130 instructs the terminal management server 200 to stop using the user terminal 100 or release the use stop. When the user terminal 100 is lost, the user uses the key management non-secure application 130 of another user terminal 100 to put the lost user terminal 100 in a suspended state. By stopping the use, unauthorized use of the lost user terminal 100 can be prevented. When the lost user terminal 100 is found, the suspension of use can be canceled using the key management non-secure application 130.

図6は、本実施形態に係るユーザ端末100のセキュア記憶部160に記憶されるWEBサービス鍵DB163の構成を例示する図である。
WEBサービス鍵DB163は、例えば、テーブル形式のデータであり、1以上のレコードを含む。各レコードは、ユーザが保有する1つのWEBサービス400のアカウントを表し、属性として、URLと、ユーザIDと、秘密鍵と、公開鍵とを含む。
FIG. 6 is a diagram illustrating a configuration of the WEB service key DB 163 stored in the secure storage unit 160 of the user terminal 100 according to the present embodiment.
The WEB service key DB 163 is, for example, data in a table format, and includes one or more records. Each record represents an account of one WEB service 400 held by the user, and includes a URL, a user ID, a secret key, and a public key as attributes.

URLは、レコードが示すWEBサービス400のURLである。
ユーザIDは、当該WEBサービスでのユーザのアカウントのユーザIDである。
秘密鍵と公開鍵は、それぞれ、ユーザの当該WEBサービスのユーザ認証に用いられる公開鍵暗号の秘密鍵と公開鍵である。公開鍵暗号を用いたWEBサービスのユーザ認証として、非特許文献1にあげたFIDOがあるが、別のユーザ認証方法の鍵ペアでも構わない。
The URL is the URL of the WEB service 400 indicated by the record.
The user ID is a user ID of a user account in the WEB service.
The secret key and the public key are a secret key and a public key of public key encryption used for user authentication of the user's WEB service, respectively. As the user authentication of the WEB service using public key cryptography, there is FIDO listed in Non-Patent Document 1, but a key pair of another user authentication method may be used.

端末検証用秘密鍵165は、鍵管理セキュアアプリ120自身を認証するための署名の生成用の鍵であり、ペアリング処理中に用いられる。この鍵を用いて生成した署名をペアリング相手が検証することで、ペアリング相手のユーザ端末100は、鍵管理セキュアアプリ120の身元を確認でき、端末検証サーバ300に問い合わせることで鍵管理セキュアアプリ120の安全性のレベル(端末能力情報302)を確認することができる。   The terminal verification private key 165 is a key for generating a signature for authenticating the key management secure application 120 itself, and is used during the pairing process. The pairing partner verifies the signature generated using this key, so that the user terminal 100 of the pairing partner can confirm the identity of the key management secure application 120, and by inquiring the terminal verification server 300, the key management secure application 120 security levels (terminal capability information 302) can be confirmed.

ここまで、ユーザ端末100はシングルユーザであることを前提に説明してきた。マルチユーザである場合には、ユーザごとに、認証クレデンシャルDB161と、署名関係鍵DB162と、WEBサービス鍵DB163と、同期用鍵DB164とを備える。   So far, the description has been made on the assumption that the user terminal 100 is a single user. In the case of a multi-user, each user includes an authentication credential DB 161, a signature relation key DB 162, a WEB service key DB 163, and a synchronization key DB 164.

≪端末管理サーバの構成≫
図7は、本実施形態に係る端末管理サーバ200の構成を例示する機能ブロック図である。
端末管理サーバ200は、ワークステーション等の汎用コンピュータで実現され、制御部210と、入出力部220と、記憶部230とを備える。装置内部のCPU等の演算処理装置がメモリに記憶された制御プログラムを実行することによって、制御部210として機能する。制御部210は、ユーザ受付部211と、署名関係情報管理部212と、端末利用状況管理部213とを備える。
≪Terminal management server configuration≫
FIG. 7 is a functional block diagram illustrating the configuration of the terminal management server 200 according to this embodiment.
The terminal management server 200 is realized by a general-purpose computer such as a workstation, and includes a control unit 210, an input / output unit 220, and a storage unit 230. An arithmetic processing unit such as a CPU inside the apparatus functions as the control unit 210 by executing a control program stored in the memory. The control unit 210 includes a user reception unit 211, a signature relationship information management unit 212, and a terminal usage status management unit 213.

また、端末管理サーバ200は、RAM、フラッシュメモリ等の半導体メモリ素子、又は、ハードディスク、光ディスク等の記憶装置によって実現される記憶部230を備える。記憶部230は、ユーザ情報DB231と、署名関係情報DB232と、端末利用状況DB233とを記憶する。
入出力部220は、ユーザ端末100や他の装置とのデータの入出力を行う。入出力部220は、ネットワークを介して情報の送受信を行う通信インタフェース(図の記載なし)と、キーボードやモニタ等の入出力インタフェース(図の記載なし)とから構成される。
以下、制御部210と記憶部230に含まれる構成について説明する。
The terminal management server 200 includes a storage unit 230 that is realized by a semiconductor memory device such as a RAM or a flash memory, or a storage device such as a hard disk or an optical disk. The storage unit 230 stores a user information DB 231, a signature relation information DB 232, and a terminal usage status DB 233.
The input / output unit 220 inputs and outputs data with the user terminal 100 and other devices. The input / output unit 220 includes a communication interface (not shown) for transmitting and receiving information via a network, and an input / output interface (not shown) such as a keyboard and a monitor.
Hereinafter, configurations included in the control unit 210 and the storage unit 230 will be described.

制御部210が備えるユーザ受付部211は、ユーザ端末100からの通信の接続要求に対して、記憶部230に記憶されるユーザ情報DB231(後述する図8)の中の情報と照合して、ユーザの認証を行う。   The user reception unit 211 included in the control unit 210 checks the communication connection request from the user terminal 100 with the information in the user information DB 231 (FIG. 8 described later) stored in the storage unit 230, and Authenticate.

図8は、本実施形態に係る端末管理サーバ200の記憶部230に記憶されるユーザ情報DB231の構成を例示する図である。
ユーザ情報DB231は、例えば、テーブル形式のデータであり、1以上のレコードを含む。各レコードは、1人のユーザを表し、属性として、ユーザIDと、パスワードと、氏名と、所属とを含む。
ユーザIDは、ユーザの識別情報である。パスワードは、ユーザを認証するときに用いられる認証情報である。氏名はユーザの氏名であり、所属はユーザが所属する組織の名称である。これらの情報は、ユーザ端末100の登録に先立ち、端末管理サーバ200の管理者によって登録される。
FIG. 8 is a diagram illustrating a configuration of the user information DB 231 stored in the storage unit 230 of the terminal management server 200 according to the present embodiment.
The user information DB 231 is data in a table format, for example, and includes one or more records. Each record represents one user, and includes a user ID, a password, a name, and an affiliation as attributes.
The user ID is user identification information. The password is authentication information used when authenticating the user. The name is the name of the user, and the affiliation is the name of the organization to which the user belongs. These pieces of information are registered by the administrator of the terminal management server 200 prior to registration of the user terminal 100.

図7に戻り、ユーザ受付部211は、ユーザ端末100から送信されたユーザIDとパスワードとを含むユーザ認証要求を受信すると、受信したユーザIDに一致するユーザIDを含む、記憶部230に記憶されるユーザ情報DB231のレコードを探索し、そのレコードのパスワードと受信したパスワードが一致すれば、ユーザ認証成功とする。探索した結果、レコードが存在しない、または、パスワードが一致しない場合には、ユーザ認証失敗とする。   Returning to FIG. 7, when receiving the user authentication request including the user ID and password transmitted from the user terminal 100, the user reception unit 211 is stored in the storage unit 230 including the user ID that matches the received user ID. The user information DB 231 is searched for, and if the password of the record matches the received password, the user authentication is successful. If the record does not exist or the passwords do not match as a result of the search, the user authentication is failed.

制御部210に備わる署名関係情報管理部212は、ユーザ端末100が送信した署名関係情報を受信し、署名を検証して、記憶部230に記憶される署名関係情報DB232(後述する図9)を更新する。署名関係情報の受信は、ユーザ受付部211がユーザ認証した通信路を介して行う。   The signature related information management unit 212 provided in the control unit 210 receives the signature related information transmitted by the user terminal 100, verifies the signature, and stores the signature related information DB 232 (FIG. 9 described later) stored in the storage unit 230. Update. The reception of the signature related information is performed via a communication path that has been authenticated by the user reception unit 211.

図9は、本実施形態に係る端末管理サーバ200の記憶部230に記憶される署名関係情報DB232の構成を例示する図である。
署名関係情報DB232は、例えば、テーブル形式のデータであり、1以上のレコードを含む。各レコードは、1人のユーザの署名関係情報を表し、属性として、ユーザIDと、署名関係情報とを含む。
ユーザIDはユーザの識別情報である。署名関係情報は、このユーザの署名関係情報である。
FIG. 9 is a diagram illustrating a configuration of the signature relation information DB 232 stored in the storage unit 230 of the terminal management server 200 according to the present embodiment.
The signature related information DB 232 is, for example, data in a table format and includes one or more records. Each record represents the signature relationship information of one user, and includes a user ID and signature relationship information as attributes.
The user ID is user identification information. The signature relation information is the signature relation information of this user.

図7に戻り、署名関係情報管理部212は、ユーザ認証が完了した通信路を通じて、ユーザ端末100から署名関係情報を受信すると、その署名を検証し、検証に成功すれば、記憶部230に記憶される署名関係情報DB232のレコードの中で、ユーザIDが、ユーザ受付部211が認証したユーザIDに一致するレコードの署名関係情報を、受信した署名関係情報に更新する。この署名関係情報には、ユーザIDが示すユーザが保有するユーザ端末100のIDと署名関係公開鍵を含んでいる。処理内容の詳細は、図12〜図14、図16を参照して、後述する。
また、署名関係情報管理部212は、ユーザ端末100からの要求に基づいて、署名関係情報を送信する。この時、ユーザ受付部211が認証したユーザの署名関係情報を送信する。
Returning to FIG. 7, when the signature relationship information management unit 212 receives the signature relationship information from the user terminal 100 through the communication path where the user authentication is completed, the signature relationship information management unit 212 verifies the signature, and if the verification is successful, stores it in the storage unit 230. In the signature relation information DB 232, the signature relation information of the record whose user ID matches the user ID authenticated by the user reception unit 211 is updated to the received signature relation information. This signature related information includes the ID of the user terminal 100 held by the user indicated by the user ID and the signature related public key. Details of the processing contents will be described later with reference to FIGS.
In addition, the signature relationship information management unit 212 transmits signature relationship information based on a request from the user terminal 100. At this time, the signature information of the user authenticated by the user reception unit 211 is transmitted.

制御部210に備わる端末利用状況管理部213は、ユーザ端末100の利用状況の問合せや変更を受付け、記憶部230の端末利用状況DB233を更新する。また、ユーザ端末100が登録されると、その所有ユーザに対するユーザ端末100として、端末利用状況DB233に記録する。   The terminal usage status management unit 213 provided in the control unit 210 receives an inquiry or a change in the usage status of the user terminal 100 and updates the terminal usage status DB 233 in the storage unit 230. Further, when the user terminal 100 is registered, the user terminal 100 is recorded in the terminal usage status DB 233 as the user terminal 100 for the owned user.

図10は、本実施形態に係る端末管理サーバ200の記憶部230に記憶される端末利用状況DB233の構成を例示する図である。
端末利用状況DB233は、例えば、テーブル形式のデータであり、1以上のレコードを含む。各レコードは、1台のユーザ端末100を表し、属性として、端末IDと、ユーザIDと、利用状況とを含む。
端末IDはユーザ端末100の識別情報である。ユーザIDは、このユーザ端末100を所有するユーザの識別情報である。利用状況は、このユーザ端末100の利用状況であり、利用中であることを示す「利用中」、又は、紛失した可能性等により利用を停止していることを示す「停止中」である。
FIG. 10 is a diagram illustrating a configuration of the terminal usage status DB 233 stored in the storage unit 230 of the terminal management server 200 according to the present embodiment.
The terminal usage status DB 233 is, for example, data in a table format and includes one or more records. Each record represents one user terminal 100 and includes a terminal ID, a user ID, and a usage status as attributes.
The terminal ID is identification information of the user terminal 100. The user ID is identification information of a user who owns this user terminal 100. The usage status is the usage status of the user terminal 100 and is “in use” indicating that the user terminal 100 is being used, or “stopped” indicating that the usage has been stopped due to the possibility of being lost.

図7に戻り、ユーザ受付部211がユーザ認証を行った後に、端末利用状況管理部213は、そのユーザが所有するユーザ端末100の利用停止要求を受付け、記憶部230に記憶される端末利用状況DB233のレコードの中で、条件「ユーザIDが、ユーザ受付部211がユーザ認証したユーザIDに一致し、端末IDが要求にあったユーザ端末100の識別情報に一致する」を満たすレコードを探索する。一致するレコードがあれば、端末利用状況管理部213は、一致したレコードの利用状況を「停止中」に更新し、なければ、エラーをユーザ端末100に通知する。   Returning to FIG. 7, after the user reception unit 211 performs user authentication, the terminal usage status management unit 213 receives a usage stop request for the user terminal 100 owned by the user and is stored in the storage unit 230. Search the DB 233 for records that satisfy the condition “user ID matches the user ID authenticated by the user reception unit 211 and the terminal ID matches the identification information of the user terminal 100 requested”. . If there is a matching record, the terminal usage status management unit 213 updates the usage status of the matched record to “stopped”, and if not, notifies the user terminal 100 of an error.

利用停止中のユーザ端末100を利用中に変更する要求を受付けた場合も、端末利用状況管理部213は、同様の処理を行い、該当するレコードを「利用中」に更新する。ユーザ端末100の利用状況の問合わせに対しても、同様の処理を行い、「利用中」または「停止中」を送信する。   Even when a request to change while using the user terminal 100 whose use is stopped is received, the terminal usage status management unit 213 performs the same processing and updates the corresponding record to “in use”. The same processing is performed for inquiring about the usage status of the user terminal 100, and “in use” or “stopped” is transmitted.

≪端末検証サーバ≫
端末検証サーバ300は、鍵管理セキュアアプリ120の識別情報を受取り、当該鍵管理セキュアアプリ120の端末検証用公開鍵301と端末能力情報302を送信する。端末検証用公開鍵301と端末能力情報302は公開情報なので、端末検証サーバ300はユーザ認証を行わなくてもよい。
≪Terminal verification server≫
The terminal verification server 300 receives the identification information of the key management secure application 120 and transmits the terminal verification public key 301 and the terminal capability information 302 of the key management secure application 120. Since the terminal verification public key 301 and the terminal capability information 302 are public information, the terminal verification server 300 may not perform user authentication.

端末能力情報302は、秘密鍵を盗もうとする攻撃に対する対抗力(鍵の保護能力)やユーザ認証の確かさのレベル(ユーザ認証方法やその強度)、セキュア領域の有無等、鍵管理セキュアアプリ120の安全性のレベルを示す情報である。端末能力情報302は、鍵の保護能力、ユーザ認証方法、ユーザ認証の強度、セキュア領域の有無、のうちの少なくとも1つを含み、ペアリング処理で参照される。
また、同期処理の際に、端末能力情報302は、WEBサービスのユーザ認証に用いる秘密鍵の複製の可否、ユーザ端末100の鍵の保護能力、ユーザ認証方法、ユーザ認証の強度、セキュア領域の有無、のうちの少なくとも1つを規定するWEBサービス400の認証ポリシ401と照合され、ユーザ端末100への秘密鍵の複製を実行するか否かの判断に用いられる。なお、認証ポリシ401はWEBサービス400から入手できる。
The terminal capability information 302 includes a key management secure application such as a countermeasure power (key protection capability) against an attempt to steal a secret key, a certainty level of user authentication (user authentication method and strength), and presence / absence of a secure area. 120 is information indicating the safety level. The terminal capability information 302 includes at least one of key protection capability, user authentication method, user authentication strength, and presence / absence of a secure area, and is referred to in the pairing process.
Also, during the synchronization process, the terminal capability information 302 includes whether the secret key used for user authentication of the WEB service can be copied, the key protection capability of the user terminal 100, the user authentication method, the strength of user authentication, and the presence / absence of a secure area The authentication policy 401 of the WEB service 400 that defines at least one of them is used to determine whether or not the secret key is copied to the user terminal 100. The authentication policy 401 can be obtained from the WEB service 400.

≪ユーザ端末の登録処理≫
図1に戻って、WEBサービス認証用の秘密鍵の同期を行うことができるユーザ端末100は、事前に端末管理サーバ200に登録される。登録は、登録の起点となる一次ユーザ端末100−1を最初に登録し、その後に1つ目の二次ユーザ端末100−2、2つ目の二次ユーザ端末(図の記載なし)登録を行う。二次ユーザ端末100−2を登録する際には、当該ユーザ端末100は、一次ユーザ端末100−1と入出力部140の直接通信用インタフェース142を使って直接通信して、登録される。
≪User terminal registration process≫
Returning to FIG. 1, the user terminal 100 that can synchronize the secret key for WEB service authentication is registered in the terminal management server 200 in advance. Registration is performed by first registering the primary user terminal 100-1 that is the starting point of registration, and then registering the first secondary user terminal 100-2 and the second secondary user terminal (not shown). Do. When registering the secondary user terminal 100-2, the user terminal 100 is registered by directly communicating with the primary user terminal 100-1 using the direct communication interface 142 of the input / output unit 140.

なお、ユーザ端末100の登録の前に、登録される各ユーザ端末100と端末管理サーバ200には、ユーザが登録されているとする。即ち、各ユーザ端末100の認証クレデンシャルDB161(図3参照)と、端末管理サーバ200のユーザ情報DB231(図8参照)には、ユーザが登録されている。
登録した2つのユーザ端末100は、ペアリングの処理を通じて同期の処理に必要となる鍵を保有し、同期の処理を通じてWEBサービスの認証用の秘密鍵を同期することができる。
以下、図11〜図13を参照して、一次ユーザ端末100−1の登録の処理を、図14と図16とを参照して、二次ユーザ端末100−2の登録の処理を、図18〜図21とを参照してペアリングの処理を、図22と図23とを参照して、同期の処理を、詳細に説明する。
It is assumed that a user is registered in each registered user terminal 100 and terminal management server 200 before the user terminal 100 is registered. That is, the user is registered in the authentication credential DB 161 (see FIG. 3) of each user terminal 100 and the user information DB 231 (see FIG. 8) of the terminal management server 200.
The two registered user terminals 100 hold a key necessary for the synchronization process through the pairing process, and can synchronize the secret key for authentication of the WEB service through the synchronization process.
Hereinafter, the registration process of the primary user terminal 100-1 will be described with reference to FIGS. 11 to 13, and the registration process of the secondary user terminal 100-2 will be described with reference to FIGS. The pairing process will be described in detail with reference to FIG. 21, and the synchronization process will be described in detail with reference to FIGS. 22 and 23.

≪一次ユーザ端末の登録処理≫
図11は、本実施形態に係る一次ユーザ端末100−1の登録処理全体を例示するシーケンス図である。
一次ユーザ端末100−1の登録処理を開始するにあたり、一次ユーザ端末100−1の鍵管理ノンセキュアアプリ130は、安全な通信方法で端末管理サーバ200に接続する(ステップS101)。安全な接続方法としては、TLS(Transport Layer Security)等の通信データが暗号化され、通信相手であるサーバが認証可能な方法を用いる。端末管理サーバ200に接続すると、鍵管理ノンセキュアアプリ130は、ユーザIDとパスワードとを、端末管理サーバ200に送信する。
≪Primary user terminal registration process≫
FIG. 11 is a sequence diagram illustrating the entire registration process of the primary user terminal 100-1 according to the present embodiment.
In starting the registration process of the primary user terminal 100-1, the key management non-secure application 130 of the primary user terminal 100-1 connects to the terminal management server 200 by a secure communication method (step S101). As a secure connection method, a method in which communication data such as TLS (Transport Layer Security) is encrypted and a server as a communication partner can be authenticated is used. When connected to the terminal management server 200, the key management non-secure application 130 transmits the user ID and password to the terminal management server 200.

端末管理サーバ200のユーザ受付部211は、記憶部230(図7参照)に記憶されるユーザ情報DB231(図8)と照合し、照合に失敗すれば、ユーザ認証失敗を鍵管理ノンセキュアアプリ130に通知し、鍵管理ノンセキュアアプリ130は接続を切断して、登録処理を終える。以降、照合に成功し、ユーザ認証に成功したとして、説明を続ける。
続いて、鍵管理ノンセキュアアプリ130は、鍵管理セキュアアプリ120の端末初期登録部123に登録処理の開始を指示する(ステップS102)。
The user reception unit 211 of the terminal management server 200 collates with the user information DB 231 (FIG. 8) stored in the storage unit 230 (see FIG. 7), and if the collation fails, the user management failure is indicated as a key management non-secure application 130. The key management non-secure application 130 disconnects the connection and ends the registration process. Hereinafter, the description will be continued assuming that the verification is successful and the user authentication is successful.
Subsequently, the key management non-secure application 130 instructs the terminal initial registration unit 123 of the key management secure application 120 to start registration processing (step S102).

鍵管理ノンセキュアアプリ130から登録処理の開始の指示を受け、鍵管理セキュアアプリ120の端末初期登録部123は、ユーザ認証を行う(ステップS103)。即ち、端末初期登録部123は、現在、鍵管理セキュアアプリ120を使用しているユーザの認証をユーザ認証部121に依頼する。ユーザ認証に失敗すれば、本登録処理を中止する。以下、ユーザ認証に成功したとして説明を続ける。   Upon receiving an instruction to start registration processing from the key management non-secure application 130, the terminal initial registration unit 123 of the key management secure application 120 performs user authentication (step S103). That is, the terminal initial registration unit 123 requests the user authentication unit 121 to authenticate a user who is currently using the key management secure application 120. If the user authentication fails, the registration process is stopped. Hereinafter, the description will be continued assuming that the user authentication is successful.

続いて、端末初期登録部123は、自身の署名関係鍵が署名関係鍵DB162(図4参照)に存在するか判断する(ステップS104)。判断するには、署名関係鍵DB162の中に秘密鍵を含むレコードを探索する。   Subsequently, the terminal initial registration unit 123 determines whether its own signature relationship key exists in the signature relationship key DB 162 (see FIG. 4) (step S104). To make a determination, a search is made for a record including the secret key in the signature relation key DB 162.

ステップS104でNに分岐する場合、即ち、先の探索でレコードが存在しない場合には、ステップS105の新規登録に進む。ステップS105の新規登録の処理は、図12を参照して後述する。   When branching to N in step S104, that is, when there is no record in the previous search, the process proceeds to new registration in step S105. The new registration process in step S105 will be described later with reference to FIG.

ステップS104でYに分岐する場合、即ち、先の探索でレコードが存在する場合には、端末初期登録部123は、ユーザに鍵更新の可否を問合せて、その結果に応じて、署名関係鍵を更新するか否かを判断する(ステップS106)。   When branching to Y in step S104, that is, when a record exists in the previous search, the terminal initial registration unit 123 inquires of the user whether or not the key can be updated, and determines the signature-related key according to the result. It is determined whether or not to update (step S106).

ステップS106でYに分岐する場合、即ち、存在する署名関係鍵を更新する場合には、ステップS107の更新登録に進む。ステップS107の更新登録の処理は、図13を参照して後述する。   If the process branches to Y in step S106, that is, if an existing signature-related key is updated, the process proceeds to update registration in step S107. The update registration process in step S107 will be described later with reference to FIG.

ステップS106でNに分岐する場合、即ち、存在する署名関係鍵を更新しない場合には、端末初期登録部123は、ユーザに鍵削除の可否を問合せて、その結果に応じて、署名関係鍵を削除するか否かを判断する(ステップS108)。   When branching to N in step S106, that is, when the existing signature-related key is not updated, the terminal initial registration unit 123 inquires of the user whether the key can be deleted, and the signature-related key is determined according to the result. It is determined whether or not to delete (step S108).

ステップS108でNに分岐する場合、即ち、存在する署名関係鍵を削除しない場合には、端末初期登録部123は、登録処理を終え、鍵管理ノンセキュアアプリ130経由で、登録をしないまま処理を終えたことをユーザに通知する。
ステップS108でYに分岐する場合、即ち、存在する署名関係鍵を削除する場合には、端末初期登録部123は、鍵管理部122に署名関係鍵の削除を指示する(ステップS109)。
When branching to N in step S108, that is, when the existing signature-related key is not deleted, the terminal initial registration unit 123 finishes the registration process and performs the process without registration via the key management non-secure application 130. Notify the user that it has finished.
When branching to Y in step S108, that is, when deleting an existing signature-related key, the terminal initial registration unit 123 instructs the key management unit 122 to delete the signature-related key (step S109).

次に、鍵管理部122は、署名関係鍵DB162(図4)の全レコードを削除する(ステップS110)。
次に、鍵管理部122は、署名関係鍵を削除したことを端末初期登録部123に通知する(ステップS111)。
続いて、端末初期登録部123は、ステップS112の新規登録に進む。ステップS112の新規登録の処理は、図12を参照して後述する。
Next, the key management unit 122 deletes all the records in the signature related key DB 162 (FIG. 4) (step S110).
Next, the key management unit 122 notifies the terminal initial registration unit 123 that the signature-related key has been deleted (step S111).
Subsequently, the terminal initial registration unit 123 proceeds to new registration in step S112. The new registration process in step S112 will be described later with reference to FIG.

≪一次ユーザ端末の新規登録処理≫
図12は、本実施形態に係る一次ユーザ端末100−1の新規登録を例示するシーケンス図である。本処理は、図11のステップS105とS112に相当する。
端末初期登録部123は、鍵管理部122に、新規署名関係情報の生成を指示する(ステップS201)。
≪Primary user terminal new registration process≫
FIG. 12 is a sequence diagram illustrating new registration of the primary user terminal 100-1 according to the present embodiment. This process corresponds to steps S105 and S112 in FIG.
The terminal initial registration unit 123 instructs the key management unit 122 to generate new signature related information (step S201).

鍵管理部122は、新規署名関係情報の生成の指示を受け、署名関係鍵(鍵ペア)を生成する(ステップS202)。次に、鍵管理部122は、署名関係鍵DB162(図4)に生成した鍵ペアを格納する。即ち、鍵管理部122は、署名関係鍵DB162にレコードを追加して、該レコードの端末IDを自身の端末IDとし、起点を「Y」として、秘密鍵と公開鍵を、それぞれ生成した署名関係秘密鍵と署名関係公開鍵とする。   The key management unit 122 receives an instruction to generate new signature relationship information, and generates a signature relationship key (key pair) (step S202). Next, the key management unit 122 stores the generated key pair in the signature relation key DB 162 (FIG. 4). That is, the key management unit 122 adds a record to the signature relationship key DB 162, sets the terminal ID of the record as its own terminal ID, sets the starting point to “Y”, and generates the private key and the public key as signature relationships. A secret key and a signature-related public key are used.

続いて、鍵管理部122は、署名関係情報D100を生成する(ステップS203)。即ち、鍵管理部122は、自身の端末ID「T01」と署名関係公開鍵(公開鍵T01)からなるデータに対する署名データを、署名関係秘密鍵を用いて生成し、端末ID(D101)と署名関係公開鍵D102と署名データD103とからなる署名関係情報D100(請求項の一次署名関係情報)を生成する。   Subsequently, the key management unit 122 generates signature relation information D100 (step S203). That is, the key management unit 122 generates signature data for data including its own terminal ID “T01” and the signature related public key (public key T01) using the signature related secret key, and generates the terminal ID (D101) and the signature. Signature relation information D100 (primary signature relation information of claims) consisting of relation public key D102 and signature data D103 is generated.

次に、鍵管理部122は、署名関係情報D100を端末初期登録部123に送信する(ステップS204)。
端末初期登録部123は、署名関係情報D100を受信し、端末管理サーバ200に送信する(ステップS205)。この送信は、図11のステップS101で説明した、TLS等を用いた安全な通信路を使って行われる。
Next, the key management unit 122 transmits the signature relation information D100 to the terminal initial registration unit 123 (step S204).
The terminal initial registration unit 123 receives the signature relation information D100 and transmits it to the terminal management server 200 (step S205). This transmission is performed using a secure communication path using TLS or the like described in step S101 in FIG.

端末管理サーバ200の署名関係情報管理部212は、署名関係情報D100を受信すると、署名関係情報D100の検証を行う(ステップS206)。即ち、署名データD103が、端末ID(D101)と署名関係公開鍵D102からなるデータに対する署名であるか、署名関係公開鍵D102を用いて検証する。検証に失敗すれば、端末初期登録部123に、検証失敗を通知して、処理を終える。以下、検証に成功したとして説明を続ける。   When receiving the signature relationship information D100, the signature relationship information management unit 212 of the terminal management server 200 verifies the signature relationship information D100 (step S206). That is, it is verified by using the signature relation public key D102 whether the signature data D103 is a signature for data consisting of the terminal ID (D101) and the signature relation public key D102. If the verification fails, the terminal initial registration unit 123 is notified of the verification failure, and the process ends. Hereinafter, the description will be continued assuming that the verification was successful.

続いて、署名関係情報管理部212は、署名関係情報D100を署名関係情報DB232(図9参照)に格納する(ステップS207)。即ち、署名関係情報管理部212は、署名関係情報D100を署名関係情報DB232のレコードの中で、ユーザIDがステップS101で認証したユーザIDに一致するレコードを探索し、レコードが存在すれば、そのレコードの署名関係情報に格納し、レコードが存在しなければ、レコードを追加して、該レコードのユーザIDにはステップS101で認証したユーザIDを格納し、署名関係情報に受信した署名関係情報D100を格納する。   Subsequently, the signature relationship information management unit 212 stores the signature relationship information D100 in the signature relationship information DB 232 (see FIG. 9) (step S207). That is, the signature relation information management unit 212 searches the record in the signature relation information DB 232 for the signature relation information D100 for a record whose user ID matches the user ID authenticated in step S101. Stored in the signature relation information of the record. If the record does not exist, the record is added, the user ID authenticated in step S101 is stored in the user ID of the record, and the received signature relation information D100 is received in the signature relation information. Is stored.

次に、端末管理サーバ200の署名関係情報管理部212は、一次ユーザ端末100−1の端末初期登録部123に登録完了を通知する(ステップS208)。
次に、署名関係情報管理部212は、端末利用状況DB233(図10参照)に一次ユーザ端末100−1を追加する。即ち、レコードを追加して、該レコードの端末IDは「T01」D101に、ユーザIDはステップS101で認証したユーザIDに、利用状況は「利用中」に更新する。
続いて、一次ユーザ端末100−1の端末初期登録部123は、登録完了を受信して、署名関係情報D100をセキュア記憶部160に格納する(ステップS209)。
Next, the signature related information management unit 212 of the terminal management server 200 notifies the registration completion to the terminal initial registration unit 123 of the primary user terminal 100-1 (step S208).
Next, the signature related information management unit 212 adds the primary user terminal 100-1 to the terminal usage status DB 233 (see FIG. 10). That is, a record is added, and the terminal ID of the record is updated to “T01” D101, the user ID is updated to the user ID authenticated in step S101, and the usage status is updated to “in use”.
Subsequently, the terminal initial registration unit 123 of the primary user terminal 100-1 receives the registration completion, and stores the signature related information D100 in the secure storage unit 160 (step S209).

≪一次ユーザ端末の更新登録処理≫
図13は、本実施形態に係る一次ユーザ端末100−1の更新登録処理を例示するシーケンス図である。本処理は、図11のステップS107の更新登録に相当する。
端末初期登録部123は、鍵管理部122に、署名関係情報の更新を指示する(ステップS301)。
≪Primary user terminal update registration process≫
FIG. 13 is a sequence diagram illustrating the update registration process of the primary user terminal 100-1 according to this embodiment. This process corresponds to the update registration in step S107 in FIG.
The terminal initial registration unit 123 instructs the key management unit 122 to update the signature related information (step S301).

鍵管理部122は、署名関係情報の更新の指示を受け、署名関係の鍵ペアを新規に生成する(ステップS302)。次に、鍵管理部122は、署名関係鍵DB162(図4)に生成した鍵ペアを格納する。即ち、鍵管理部122は、署名関係鍵DB162のレコードの中で、起点を「Y」のレコードを探索し、該レコードの秘密鍵を旧署名関係秘密鍵として記憶し、秘密鍵と公開鍵を、それぞれ生成した署名関係秘密鍵と署名関係公開鍵に上書きする。   The key management unit 122 receives an instruction to update the signature related information, and newly generates a signature related key pair (step S302). Next, the key management unit 122 stores the generated key pair in the signature relation key DB 162 (FIG. 4). That is, the key management unit 122 searches the record of the signature relation key DB 162 for a record having a starting point of “Y”, stores the secret key of the record as the old signature relation secret key, and stores the secret key and the public key. Overwrite the generated signature-related private key and signature-related public key, respectively.

続いて、鍵管理部122は、署名関係情報D120を生成する(ステップS303)。即ち、鍵管理部122は、自身の端末ID「T01」と署名関係公開鍵(新公開鍵T01)からなるデータに対する署名データを、署名関係秘密鍵を用いて生成し、端末ID(D121)と署名関係公開鍵D122と署名データD123からなる署名関係情報D120を生成する。   Subsequently, the key management unit 122 generates signature relation information D120 (step S303). That is, the key management unit 122 generates signature data for data including its own terminal ID “T01” and the signature-related public key (new public key T01) using the signature-related secret key, and the terminal ID (D121). Signature relation information D120 including signature relation public key D122 and signature data D123 is generated.

次に、鍵管理部122は、署名関係情報D120に対する署名データD111を、旧署名関係秘密鍵を用いて生成し、署名関係情報D120に付与して、二重署名の署名関係情報D110を生成する(ステップS304)。二重署名の署名関係情報D110は、署名D123付きの署名関係情報D120に、さらに旧署名関係秘密鍵による署名データD111が付与された、二重に署名されたデータである。   Next, the key management unit 122 generates signature data D111 for the signature relationship information D120 by using the old signature relationship secret key, adds the signature data D111 to the signature relationship information D120, and generates the signature relationship information D110 of the double signature. (Step S304). The signature related information D110 of the double signature is data that is double-signed by adding the signature data D111 with the old signature related secret key to the signature related information D120 with the signature D123.

続いて、鍵管理部122は、二重署名の署名関係情報D110を端末初期登録部123に送信する(ステップS305)。
端末初期登録部123は、二重署名の署名関係情報D110を受信し、端末管理サーバ200に送信する(ステップS306)。この送信は、図11のステップS101で説明した、TLS等を用いた安全な通信路を使って行われる。
Subsequently, the key management unit 122 transmits the signature relation information D110 of the double signature to the terminal initial registration unit 123 (Step S305).
The terminal initial registration unit 123 receives the signature relation information D110 of the double signature and transmits it to the terminal management server 200 (step S306). This transmission is performed using a secure communication path using TLS or the like described in step S101 in FIG.

端末管理サーバ200の署名関係情報管理部212は、二重署名の署名関係情報D110を受信すると、署名関係情報D110の旧署名関係秘密鍵による署名データD111の検証を行う(ステップS307)。即ち、署名関係情報管理部212は、署名対象のデータである署名関係情報D120に対する正しい署名データD111であるか、旧署名関係秘密鍵とペアになる旧署名関係公開鍵を用いて検証する。旧署名関係公開鍵は記憶部230の署名関係情報DB232(図9参照)から取得する。即ち、署名関係情報管理部212は、署名関係情報DB232の中で、ユーザIDがステップS101で認証したユーザIDと一致するレコードの署名関係情報の中の端末ID(D121)に対応する公開鍵を用いて、署名データD111を検証する。   Upon receiving the signature relationship information D110 of the double signature, the signature relationship information management unit 212 of the terminal management server 200 verifies the signature data D111 using the old signature relationship secret key of the signature relationship information D110 (step S307). In other words, the signature relationship information management unit 212 verifies whether the signature data D111 is correct with respect to the signature relationship information D120, which is data to be signed, using the old signature relationship public key paired with the old signature relationship secret key. The old signature-related public key is acquired from the signature-related information DB 232 (see FIG. 9) in the storage unit 230. That is, the signature relation information management unit 212 obtains the public key corresponding to the terminal ID (D121) in the signature relation information of the record whose user ID matches the user ID authenticated in step S101 in the signature relation information DB 232. And verifying the signature data D111.

検証に失敗すれば、端末初期登録部123に、検証失敗を通知して、処理を終える。以下、検証に成功したとして説明を続ける。
なお、署名関係情報DB232に含まれる署名関係情報には、複数の端末IDと署名関係公開鍵とが含まれるものがある。一次ユーザ端末登録の署名関係情報(D100とD120)には、一次ユーザ端末100−1の署名関係公開鍵だけが含まれていたが、後述する二次ユーザ端末100−2の登録における署名関係情報には、複数の端末IDと署名関係公開鍵とが含まれるからである。
If the verification fails, the terminal initial registration unit 123 is notified of the verification failure, and the process ends. Hereinafter, the description will be continued assuming that the verification was successful.
Some of the signature relation information included in the signature relation information DB 232 includes a plurality of terminal IDs and signature relation public keys. The signature related information (D100 and D120) for primary user terminal registration includes only the signature related public key of the primary user terminal 100-1, but the signature related information for registration of the secondary user terminal 100-2 described later. This is because includes a plurality of terminal IDs and signature-related public keys.

続いて、署名関係情報管理部212は、署名関係情報D120の署名の検証を行う(ステップS308)。この処理は、ステップS206と同様である。   Subsequently, the signature relationship information management unit 212 verifies the signature of the signature relationship information D120 (step S308). This process is the same as step S206.

続いて、署名関係情報管理部212は、署名関係情報D120を署名関係情報DB232(図9参照)に格納する(ステップS309)。即ち、署名関係情報管理部212は、署名関係情報DB232の中で、ユーザIDがステップS101で認証したユーザIDと一致するレコードの署名関係情報に、署名関係情報D120を上書きする。   Subsequently, the signature relationship information management unit 212 stores the signature relationship information D120 in the signature relationship information DB 232 (see FIG. 9) (step S309). In other words, the signature relationship information management unit 212 overwrites the signature relationship information D120 in the signature relationship information DB 232 with the signature relationship information of the record whose user ID matches the user ID authenticated in step S101.

次に、署名関係情報管理部212は、一次ユーザ端末100−1の端末初期登録部123に登録完了を通知する(ステップS310)。
続いて、一次ユーザ端末100−1の端末初期登録部123は、登録完了を受信して、二重署名の署名関係情報D110の署名関係情報D120を抜出して、セキュア記憶部160に格納する(ステップS311)。
Next, the signature related information management unit 212 notifies the registration completion to the terminal initial registration unit 123 of the primary user terminal 100-1 (step S310).
Subsequently, the terminal initial registration unit 123 of the primary user terminal 100-1 receives the registration completion, extracts the signature relationship information D120 of the signature relationship information D110 of the double signature, and stores it in the secure storage unit 160 (step). S311).

≪二次ユーザ端末の新規登録処理≫
図14は、本実施形態に係る二次ユーザ端末100−2の新規登録を例示するシーケンス図である。
本新規登録を始めるにあたり、一次ユーザ端末100−1と二次ユーザ端末100−2とは、通信ケーブル、Bluetooth等を用いて直接接続され、入出力部140の直接通信用インタフェース142を介して直接通信を行う。一次ユーザ端末100−1は、図11のステップS101と同様に、ユーザ認証を経て端末管理サーバ200に接続している。また、二次ユーザ端末100−2のユーザ認証部121は、ユーザ認証済みである。
図11に示した処理と同様にして、二次ユーザ端末100−2に署名関係鍵が存在しない、若しくは、署名関係鍵を削除して、新規に二次ユーザ端末100−2として登録するものとして、説明する。
≪Secondary user terminal new registration process≫
FIG. 14 is a sequence diagram illustrating new registration of the secondary user terminal 100-2 according to this embodiment.
In starting the new registration, the primary user terminal 100-1 and the secondary user terminal 100-2 are directly connected using a communication cable, Bluetooth, or the like, and directly via the direct communication interface 142 of the input / output unit 140. Communicate. The primary user terminal 100-1 is connected to the terminal management server 200 through user authentication, as in step S101 of FIG. In addition, the user authentication unit 121 of the secondary user terminal 100-2 has been authenticated.
Similarly to the processing shown in FIG. 11, it is assumed that the secondary user terminal 100-2 does not have a signature related key, or the signature related key is deleted and newly registered as the secondary user terminal 100-2. ,explain.

一次ユーザ端末100−1の端末登録応答部125と、二次ユーザ端末100−2の端末登録要求部124とは、直接通信可能な接続であることを確認する(ステップS401)。確認できなければ、処理を中断する。以下、確認できたとして説明を続ける。
二次ユーザ端末100−2の端末登録要求部124のステップS402から、ステップS405までの処理は、図12で説明した、一次ユーザ端末100−1の新規登録処理のステップS201からステップS204とほぼ同様である。異なるのは、署名関係鍵DB162(図4参照)にレコードの起点が「N」となる点である。これは、二次ユーザ端末100−2の登録処理であるからである。生成した署名関係情報をD140(請求項の二次署名関係情報)に例示する。
The terminal registration response unit 125 of the primary user terminal 100-1 and the terminal registration request unit 124 of the secondary user terminal 100-2 confirm that they are directly communicable connections (step S401). If it cannot be confirmed, the process is interrupted. Hereinafter, the description will be continued assuming that it has been confirmed.
The processing from step S402 to step S405 of the terminal registration request unit 124 of the secondary user terminal 100-2 is substantially the same as step S201 to step S204 of the new registration processing of the primary user terminal 100-1 described in FIG. It is. The difference is that the starting point of the record is “N” in the signature relation key DB 162 (see FIG. 4). This is because it is a registration process of the secondary user terminal 100-2. The generated signature related information is exemplified in D140 (secondary signature related information in claims).

続いて、二次ユーザ端末100−2の端末登録要求部124は、自身の署名関係情報D140を一次ユーザ端末100−1に、直接通信を介して送信して、自身の登録を依頼する(ステップS406)。
一次ユーザ端末100−1の端末登録応答部125は、二次ユーザ端末100−2の署名関係情報D140を受信し、登録の依頼を受付ける。次に、ユーザ認証を行う(ステップS407)。即ち、一次ユーザ端末100−1のユーザ認証部121(図2参照)に依頼してユーザ認証を行う。さらに、端末登録応答部125は、署名関係鍵DB162に起点が「Y」であり、秘密鍵を含むレコードが存在することを確認して、自身が一次ユーザ端末100−1であることを確認する。
Subsequently, the terminal registration request unit 124 of the secondary user terminal 100-2 transmits its own signature relation information D140 to the primary user terminal 100-1 via direct communication and requests its registration (step). S406).
The terminal registration response unit 125 of the primary user terminal 100-1 receives the signature related information D140 of the secondary user terminal 100-2 and accepts a registration request. Next, user authentication is performed (step S407). That is, user authentication is performed by requesting the user authentication unit 121 (see FIG. 2) of the primary user terminal 100-1. Furthermore, the terminal registration response unit 125 confirms that the origin is “Y” in the signature relation key DB 162 and that there is a record including the secret key, and confirms that it is the primary user terminal 100-1. .

端末登録応答部125は、鍵管理部122に、二次ユーザ端末100−2の署名関係情報D140を送信し、二重署名の署名関係情報の生成を依頼する(ステップS408)。
続いて、鍵管理部122は署名関係情報D140の署名データD143を検証する(ステップS409)。検証方法はステップS206と同様であり、以下、検証に成功したとして説明を続ける。
The terminal registration response unit 125 transmits the signature relationship information D140 of the secondary user terminal 100-2 to the key management unit 122, and requests generation of signature relationship information of a double signature (step S408).
Subsequently, the key management unit 122 verifies the signature data D143 of the signature relation information D140 (step S409). The verification method is the same as that in step S206, and the description will be continued below assuming that the verification is successful.

次に、鍵管理部122は、図15に例示する二重署名の署名関係情報を生成する(ステップS410)。以下、この処理を説明する。自身の端末ID(D171)と、自身の署名関係公開鍵D172と、二次ユーザ端末100−2の端末ID(D173)と、二次ユーザ端末100−2の署名関係公開鍵D174とからなるデータに対して、自身の署名関係秘密鍵で署名データD175を生成し、新署名関係情報D170(請求項の新規一次署名関係情報)を生成する。この新署名関係情報D170が一次ユーザ端末100−1の所有ユーザの新しい署名関係情報となる。
続いて、二次ユーザ端末100−2の署名関係情報D140と新署名関係情報D170を併せたデータに対して、自身の署名関係秘密鍵で署名データD181を生成して、二重署名の署名関係情報D180を生成する。
Next, the key management unit 122 generates the signature related information of the double signature illustrated in FIG. 15 (Step S410). Hereinafter, this process will be described. Data comprising its own terminal ID (D171), its own signature related public key D172, the terminal ID (D173) of the secondary user terminal 100-2, and the signature related public key D174 of the secondary user terminal 100-2 On the other hand, signature data D175 is generated with its own signature relationship secret key, and new signature relationship information D170 (new primary signature relationship information in claims) is generated. This new signature relation information D170 becomes new signature relation information of the owning user of the primary user terminal 100-1.
Subsequently, signature data D181 is generated by using its own signature relationship secret key for the data including the signature relationship information D140 and the new signature relationship information D170 of the secondary user terminal 100-2, and the signature relationship of the double signature is obtained. Information D180 is generated.

次に、鍵管理部122は、端末登録応答部125に送信する(ステップS411)。
端末登録応答部125は、二重署名の署名関係情報D180を受信して、二重署名の署名関係情報D180(請求項の新規一次署名関係情報を含んだ情報)を端末管理サーバ200に送信して、登録を依頼する(ステップS412)。
Next, the key management part 122 transmits to the terminal registration response part 125 (step S411).
The terminal registration response unit 125 receives the signature relation information D180 of the double signature and transmits the signature relation information D180 of the double signature (information including the new primary signature relation information in the claims) to the terminal management server 200. Registration is requested (step S412).

端末管理サーバ200の署名関係情報管理部212は、二重署名の署名関係情報D180の署名を検証する(ステップS413)。署名データD143の検証は、署名関係公開鍵D142を用いて、署名データD175と署名データD181の検証は、署名関係情報DB232(図9参照)に格納された、ユーザ受付部211が認証したユーザの署名関係情報に含まれる一次ユーザ端末100−1の署名関係公開鍵を用いる。さらに、二次ユーザ端末100−2の2つのID(D141とD173)が一致し、2つの署名関係公開鍵(D142とD174)が一致することを確認する。   The signature relationship information management unit 212 of the terminal management server 200 verifies the signature of the signature relationship information D180 of the double signature (Step S413). The signature data D143 is verified using the signature relation public key D142, and the signature data D175 and the signature data D181 are verified by the user receiving unit 211 authenticated by the user reception unit 211 stored in the signature relation information DB 232 (see FIG. 9). The signature related public key of the primary user terminal 100-1 included in the signature related information is used. Further, it is confirmed that the two IDs (D141 and D173) of the secondary user terminal 100-2 match and the two signature-related public keys (D142 and D174) match.

続いて、署名関係情報管理部212は、新署名関係情報D170を抜取り、署名関係情報DB232に格納する(ステップS414)。
次に、署名関係情報管理部212は、図12や図13に示した一次ユーザ端末100−1の場合と同様に、端末利用状況DB233(図10参照)に二次ユーザ端末100−2を追加する。
Subsequently, the signature relationship information management unit 212 extracts the new signature relationship information D170 and stores it in the signature relationship information DB 232 (step S414).
Next, the signature relation information management unit 212 adds the secondary user terminal 100-2 to the terminal usage status DB 233 (see FIG. 10), as in the case of the primary user terminal 100-1 shown in FIGS. To do.

次に、署名関係情報管理部212は、登録を完了したことを一次ユーザ端末100−1に通知する(ステップS415)。
続いて、一次ユーザ端末100−1の端末登録応答部125は、新署名関係情報D170を二次ユーザ端末100−2に直接通信を介して送信し(ステップS416)、新署名関係情報D170をセキュア記憶部160に格納して(ステップS417)、セキュア記憶部160の署名関係鍵DB162に二次ユーザ端末100−2のレコードを追加し、該レコードの起点を「N」として、端末IDと公開鍵を格納する。
Next, the signature related information management unit 212 notifies the primary user terminal 100-1 that registration has been completed (step S415).
Subsequently, the terminal registration response unit 125 of the primary user terminal 100-1 transmits the new signature relationship information D170 to the secondary user terminal 100-2 via direct communication (step S416), and secures the new signature relationship information D170. Store in the storage unit 160 (step S417), add the record of the secondary user terminal 100-2 to the signature relation key DB 162 of the secure storage unit 160, set the starting point of the record as “N”, the terminal ID and the public key Is stored.

二次ユーザ端末100−2の端末登録要求部124は、新署名関係情報D170を受信し、セキュア記憶部160に格納する(ステップS418)。さらに、署名関係鍵DB162(図4参照)にレコードを追加し、起点は「Y」とし、端末IDは一次ユーザ端末100−1の端末ID(D171)とし、公開鍵は署名関係公開鍵D172とし、秘密鍵は「−」として、レコードを格納する。   The terminal registration request unit 124 of the secondary user terminal 100-2 receives the new signature relation information D170 and stores it in the secure storage unit 160 (step S418). Further, a record is added to the signature relation key DB 162 (see FIG. 4), the starting point is “Y”, the terminal ID is the terminal ID (D171) of the primary user terminal 100-1, and the public key is the signature relation public key D172. The record is stored with the secret key as “−”.

≪二次ユーザ端末の更新登録処理≫
図16は、本実施形態に係る二次ユーザ端末100−2の更新登録を例示するシーケンス図である。
本更新登録を始めるにあたり、一次ユーザ端末100−1と二次ユーザ端末100−2とは、通信ケーブル、Bluetooth等を用いて直接接続され、直接通信用インタフェース142を介して直接通信を行う。一次ユーザ端末100−1は、図11のステップS101と同様に、ユーザ認証を経て端末管理サーバ200に接続している。また、二次ユーザ端末100−2のユーザ認証部121は、ユーザ認証済みである。
図11に示した処理と同様にして、二次ユーザ端末100−2には、署名関係鍵があり、これを更新して二次ユーザ端末100−2として登録するものとして、説明する。
≪Secondary user terminal update registration process≫
FIG. 16 is a sequence diagram illustrating update registration of the secondary user terminal 100-2 according to this embodiment.
In starting the update registration, the primary user terminal 100-1 and the secondary user terminal 100-2 are directly connected using a communication cable, Bluetooth, or the like, and directly communicate via the direct communication interface 142. The primary user terminal 100-1 is connected to the terminal management server 200 through user authentication, as in step S101 of FIG. In addition, the user authentication unit 121 of the secondary user terminal 100-2 has been authenticated.
In the same manner as the processing shown in FIG. 11, the secondary user terminal 100-2 will be described as having a signature relationship key, which is updated and registered as the secondary user terminal 100-2.

一次ユーザ端末100−1の端末登録応答部125と、二次ユーザ端末100−2の端末登録要求部124とは、直接通信可能な接続であることを確認する(ステップS501)。確認できなければ、処理を中断する。以下、確認できたとして説明を続ける。
二次ユーザ端末100−2の端末登録要求部124のステップS502から、ステップS506までの処理は、図13で説明した、一次ユーザ端末100−1の更新登録処理のステップS301からステップS305とほぼ同様である。異なるのは、署名関係鍵DB162(図4参照)にレコードの起点が「N」となる点である。これは、二次ユーザ端末100−2の登録処理であるからである。生成した署名関係情報をD150に例示する。
The terminal registration response unit 125 of the primary user terminal 100-1 and the terminal registration request unit 124 of the secondary user terminal 100-2 confirm that they are directly communicable connections (step S501). If it cannot be confirmed, the process is interrupted. Hereinafter, the description will be continued assuming that it has been confirmed.
The processing from step S502 to step S506 of the terminal registration request unit 124 of the secondary user terminal 100-2 is almost the same as step S301 to step S305 of the update registration processing of the primary user terminal 100-1 described in FIG. It is. The difference is that the starting point of the record is “N” in the signature relation key DB 162 (see FIG. 4). This is because it is a registration process of the secondary user terminal 100-2. The generated signature related information is exemplified in D150.

二次ユーザ端末100−2の端末登録要求部124のステップS507から、一次ユーザ端末100−1の端末登録応答部125のステップS513までの処理は、図14で説明した、二次ユーザ端末100−2の端末登録要求部124のステップS406から、一次ユーザ端末100−1の端末登録応答部125のステップS412までの処理とほぼ同様である。異なるのは署名検証のステップS510である。旧署名T02(D151)の検証には、既存の二次ユーザ端末100−2の署名関係公開鍵を用いる。この鍵は、署名関係鍵DB162の二次ユーザ端末100−2のレコードから得ることができる。   The processing from step S507 of the terminal registration request unit 124 of the secondary user terminal 100-2 to step S513 of the terminal registration response unit 125 of the primary user terminal 100-1 is the secondary user terminal 100- described with reference to FIG. 2 is almost the same as the process from step S406 of the terminal registration request unit 124 to step S412 of the terminal registration response unit 125 of the primary user terminal 100-1. The difference is step S510 of signature verification. For verification of the old signature T02 (D151), the signature-related public key of the existing secondary user terminal 100-2 is used. This key can be obtained from the record of the secondary user terminal 100-2 in the signature relation key DB 162.

生成した二重署名の署名関係情報を図17に例示する。新署名関係情報D170aは、二次ユーザ端末100−2の署名関係公開鍵D174aが更新された公開鍵であることを除いては、図14に示した新署名関係情報D170と同じである。   FIG. 17 illustrates signature-related information of the generated double signature. The new signature relationship information D170a is the same as the new signature relationship information D170 shown in FIG. 14 except that the signature relationship public key D174a of the secondary user terminal 100-2 is an updated public key.

端末管理サーバ200の署名関係情報管理部212のステップS514から、二次ユーザ端末100−2の端末登録要求部124のステップS519までの処理は、図14で説明した、端末管理サーバ200の署名関係情報管理部212のステップS413から、二次ユーザ端末100−2の端末登録要求部124のステップS418までの処理とほぼ同様である。異なるのは署名検証のステップS514である。旧署名T02(D151)の検証には、既存の二次ユーザ端末100−2の署名関係公開鍵を用いる。この鍵は、署名関係情報DB232(図9参照)に格納された、ユーザ受付部211が認証したユーザの署名関係情報に含まれる二次ユーザ端末100−2の署名関係公開鍵を用いる。   The processing from step S514 of the signature relationship information management unit 212 of the terminal management server 200 to step S519 of the terminal registration request unit 124 of the secondary user terminal 100-2 is the signature relationship of the terminal management server 200 described in FIG. The processing from step S413 of the information management unit 212 to step S418 of the terminal registration request unit 124 of the secondary user terminal 100-2 is substantially the same. The difference is step S514 of signature verification. For verification of the old signature T02 (D151), the signature-related public key of the existing secondary user terminal 100-2 is used. As this key, the signature related public key of the secondary user terminal 100-2 included in the signature related information of the user authenticated by the user receiving unit 211 stored in the signature related information DB 232 (see FIG. 9) is used.

以上で説明した署名関係情報には、一次ユーザ端末100−1と1つの二次ユーザ端末100−2の署名関係公開鍵が含まれていた。二次ユーザ端末100−2の登録を繰り返せば、署名関係情報に含まれる端末IDと署名関係公開鍵とは増加し、登録済み全てのユーザ端末100の署名関係公開鍵が含まれる。これは、二重署名の署名関係情報の生成(ステップS410とS511)において、署名関係鍵DB162(図4参照)に格納される公開鍵(署名関係公開鍵)を含めて生成するためである。   The signature relation information described above includes the signature relation public keys of the primary user terminal 100-1 and one secondary user terminal 100-2. If the registration of the secondary user terminal 100-2 is repeated, the terminal ID and the signature related public key included in the signature related information increase, and the signature related public keys of all registered user terminals 100 are included. This is because, in the generation of the signature related information of the double signature (steps S410 and S511), the public key (signature related public key) stored in the signature related key DB 162 (see FIG. 4) is generated.

≪ペアリング処理≫
図18〜図21とは、本実施形態に係る、登録済みのユーザ端末100−Aとユーザ端末100−Bとの間のペアリング処理を例示するシーケンス図である。
本ペアリング処理を始めるにあたり、ユーザ端末100−Aとユーザ端末100−Bとは、通信ケーブル、Bluetooth等を用いて直接接続され、直接通信用インタフェース142を介して直接通信を行う。
以下、図18を参照して、ペアリング処理を説明する。
≪Pairing process≫
18 to 21 are sequence diagrams illustrating pairing processing between the registered user terminal 100-A and the user terminal 100-B according to the present embodiment.
In starting the pairing process, the user terminal 100 -A and the user terminal 100 -B are directly connected using a communication cable, Bluetooth, or the like, and directly communicate via the direct communication interface 142.
Hereinafter, the pairing process will be described with reference to FIG.

ユーザ端末100−Aの鍵管理ノンセキュアアプリ130から鍵管理セキュアアプリ120にペアリング要求を指示する。ペアリング要求の指示を受けると、鍵管理セキュアアプリ120のペアリング制御部126は、自身がペアリング相手であるユーザ端末100−Bと直接通信で接続されているか確認する(ステップS601−A)。
続いて、ペアリング制御部126は、ユーザ認証部121(図2参照)にユーザ認証を依頼する(ステップS602−A)。
The key management non-secure application 130 of the user terminal 100-A instructs a pairing request to the key management secure application 120. When receiving the instruction of the pairing request, the pairing control unit 126 of the key management secure application 120 confirms whether or not it is directly connected to the user terminal 100-B that is the pairing partner (step S601-A). .
Subsequently, the pairing control unit 126 requests user authentication from the user authentication unit 121 (see FIG. 2) (step S602-A).

次に、ペアリング制御部126は、端末管理サーバ200に問い合わせて、自身であるユーザ端末100−Aが利用停止中でないことを確認する(ステップS603−A)。
同様の処理を、ユーザ端末100−Bでも行う(ステップS601−BからステップS603−B)。
Next, the pairing control unit 126 makes an inquiry to the terminal management server 200 and confirms that the user terminal 100-A that is itself is not suspended (step S603-A).
Similar processing is also performed on the user terminal 100-B (from step S601-B to step S603-B).

続いて、ユーザ端末100−Aのペアリング制御部126は、ユーザ端末100−Bに鍵交換要求を送信する(ステップS604)。
鍵交換要求を送信すると、次に、ユーザ端末100−Aのペアリング制御部126は、鍵管理部122にユーザ端末100−Bと鍵交換を開始するように指示する(S605−A)。同様に、鍵交換要求を受信すると、ユーザ端末100−Bのペアリング制御部126は、鍵管理部122にユーザ端末100−Aと鍵交換を開始するように指示する(S605−B)。
Subsequently, the pairing control unit 126 of the user terminal 100-A transmits a key exchange request to the user terminal 100-B (step S604).
When the key exchange request is transmitted, next, the pairing control unit 126 of the user terminal 100-A instructs the key management unit 122 to start key exchange with the user terminal 100-B (S605-A). Similarly, when receiving the key exchange request, the pairing control unit 126 of the user terminal 100-B instructs the key management unit 122 to start key exchange with the user terminal 100-A (S605-B).

続いて、ユーザ端末100−Aの鍵管理部122と、ユーザ端末100−Bの鍵管理部122とは、鍵交換を行う(ステップS606)。
代表的な鍵交換の方法として、Diffie-Hellmanのアルゴリズムがあり、このアルゴリズムを用いて共通鍵を共有し、ユーザ端末100−Aとユーザ端末100−Bとの安全な通信路を確立することができる。
Subsequently, the key management unit 122 of the user terminal 100-A and the key management unit 122 of the user terminal 100-B perform key exchange (step S606).
As a typical key exchange method, there is a Diffie-Hellman algorithm. A common key is shared by using this algorithm, and a secure communication path between the user terminal 100-A and the user terminal 100-B is established. it can.

これとは別に、署名関係情報を用いて、以下の手順で共通鍵を得て、安全な通信路を確立することができる。即ち、それぞれのユーザ端末(100−Aと100−B)が、(1)相手端末の署名関係情報を入手して、(2)一次ユーザ端末100−1の署名関係公開鍵を用いて、該署名関係情報の署名を検証し、(3)該署名関係情報の中の相手の署名関係公開鍵を用いて、新規に生成した乱数を暗号化して、相手に送信し、(4)受信した暗号化された乱数を自身の署名関係秘密鍵で復号して相手が生成した乱数と取り出し、(5)自身が生成した乱数との排他的論理和を共通鍵とする。   Apart from this, it is possible to establish a secure communication path by using the signature-related information and obtaining a common key by the following procedure. That is, each user terminal (100-A and 100-B) (1) obtains the signature related information of the counterpart terminal, and (2) uses the signature related public key of the primary user terminal 100-1, (3) The newly generated random number is encrypted using the other party's signature related public key in the signature related information and transmitted to the other party, and (4) the received encryption The encrypted random number is decrypted with its own signature-related private key and the random number generated by the other party is extracted, and (5) the exclusive OR of the random number generated by itself is used as a common key.

相手の署名関係情報は、端末管理サーバ200に問合せて入手ことができる。又は、鍵交換(ステップS604)の開始の前に、2つのユーザ端末(100−Aと100−B)との間で、セキュア記憶部160に記憶した署名関係情報を送信し合うことでも、入手することが可能である。   The other party's signature related information can be obtained by inquiring the terminal management server 200. Alternatively, before starting the key exchange (step S604), the signature relation information stored in the secure storage unit 160 can be transmitted between the two user terminals (100-A and 100-B). Is possible.

署名関係鍵DB162に格納された一次ユーザ端末100−1の署名関係公開鍵を用いて、相手のユーザ端末から受信した署名関係情報の署名を検証した後に、相手のユーザ端末(100−A又は100−B)の署名関係公開鍵を得ることができる。セキュア記憶部160の署名関係鍵DB162(図4参照)の中に存在すれば、これを利用することもできる。なお、一次ユーザ端末100−1の署名関係公開鍵は、ステップS418ないしはS519において、セキュア記憶部160と署名関係鍵DB162に記憶している。   After verifying the signature of the signature relation information received from the counterpart user terminal using the signature relation public key of the primary user terminal 100-1 stored in the signature relation key DB 162, the counterpart user terminal (100-A or 100 -B) The signature-related public key can be obtained. If it exists in the signature related key DB 162 (see FIG. 4) of the secure storage unit 160, it can be used. Note that the signature-related public key of the primary user terminal 100-1 is stored in the secure storage unit 160 and the signature-related key DB 162 in steps S418 and S519.

ユーザ端末100−Aの鍵管理部122は、ユーザ端末100−Bとの鍵交換が完了したことをペアリング制御部126に通知する(ステップS607−A)。同様に、ユーザ端末100−Bの鍵管理部122は、ユーザ端末100−Aとの鍵交換が完了したことをペアリング制御部126に通知する(ステップS607−B)。
以下、2つのユーザ端末(100−Aと100−B)の間の通信は、この共有鍵を用いて保護された安全な通信路を通じて行う。
The key management unit 122 of the user terminal 100-A notifies the pairing control unit 126 that the key exchange with the user terminal 100-B has been completed (step S607-A). Similarly, the key management unit 122 of the user terminal 100-B notifies the pairing control unit 126 that the key exchange with the user terminal 100-A has been completed (step S607-B).
Hereinafter, communication between the two user terminals (100-A and 100-B) is performed through a secure communication path protected using this shared key.

引続き、図19を参照して、ペアリング処理の説明を続ける。
ユーザ端末100−Aのペアリング制御部126は、ペアリング認証書要求をユーザ端末100−Bに送信する(ステップS608)。この際に、新規に生成した乱数を付加的に送信することもできる。以下では、該乱数(以下、乱数T0Aと記す)が付加されたとして説明する。
The description of the pairing process will be continued with reference to FIG.
The pairing control unit 126 of the user terminal 100-A transmits a pairing certificate request to the user terminal 100-B (step S608). At this time, a newly generated random number can be additionally transmitted. In the following description, it is assumed that the random number (hereinafter referred to as random number T0A) is added.

ユーザ端末100−Bのペアリング制御部126は、鍵管理部122に、乱数T0Aを送信し、ペアリング認証書の生成を依頼する(ステップS609)。
ユーザ端末100−Bの鍵管理部122は、自身の端末IDである「T0B」と乱数T0Aとを合わせたデータに対する署名データを、自身の署名関係秘密鍵を用いて生成する。生成したデータを、D210に例示している。即ち、自身の端末ID(D211)と乱数T0A(D212)と生成された署名データD213を含むデータD210を生成する。なお、自身の署名関係秘密鍵は、署名関係鍵DB162中の端末IDが自身の「T0B」であるレコードの秘密鍵から得ることができる。
The pairing control unit 126 of the user terminal 100-B transmits the random number T0A to the key management unit 122 and requests generation of a pairing certificate (step S609).
The key management unit 122 of the user terminal 100-B generates signature data for data that is a combination of its own terminal ID “T0B” and the random number T0A, using its own signature-related secret key. The generated data is exemplified in D210. That is, data D210 including its own terminal ID (D211), random number T0A (D212) and generated signature data D213 is generated. Note that the own signature-related secret key can be obtained from the secret key of the record whose terminal ID in the signature-related key DB 162 is “T0B”.

次に、鍵管理部122は、セキュア記憶部160に記憶された端末検証用秘密鍵165(図2参照)を用いて、データD210と、鍵管理セキュアアプリ120のID(D201)とを合わせたデータに対する署名データD202を生成し、データD210と、鍵管理セキュアアプリ120のID(D201)と、署名データD202とを含むペアリング認証書D200を生成する(ステップS610)。
続いて、ペアリング認証書D200をペアリング制御部126に送信する(ステップS611)。
ペアリング制御部126は、ペアリング認証書D200を受信して、ユーザ端末100−Aにペアリング認証書D200を送信する(ステップS612)。
Next, the key management unit 122 uses the terminal verification secret key 165 (see FIG. 2) stored in the secure storage unit 160 to combine the data D210 and the ID (D201) of the key management secure application 120. Signature data D202 for the data is generated, and a pairing certificate D200 including the data D210, the ID (D201) of the key management secure application 120, and the signature data D202 is generated (step S610).
Subsequently, the pairing certificate D200 is transmitted to the pairing control unit 126 (step S611).
The pairing control unit 126 receives the pairing certificate D200 and transmits the pairing certificate D200 to the user terminal 100-A (step S612).

ユーザ端末100−Aのペアリング制御部126は、ペアリング認証書D200を受信し、ペアリング認証書D200の中の鍵管理アプリID(D201)を取出し、端末検証サーバ300に送信して、鍵管理アプリID(D201)に対応する端末検証用公開鍵301と端末能力情報302を問合せる(ステップS613)。   The pairing control unit 126 of the user terminal 100-A receives the pairing certificate D200, extracts the key management application ID (D201) in the pairing certificate D200, transmits it to the terminal verification server 300, and sends the key The terminal verification public key 301 and the terminal capability information 302 corresponding to the management application ID (D201) are inquired (step S613).

次に、ペアリング制御部126は、端末検証サーバ300から、端末検証用公開鍵301と端末能力情報302を得て、鍵管理部122に依頼して、端末検証署名T0B(D202)を検証する(ステップS614)。検証に失敗すれば、ペアリング処理を中止する。以下、検証に成功したとして説明を続ける。   Next, the pairing control unit 126 obtains the terminal verification public key 301 and the terminal capability information 302 from the terminal verification server 300 and requests the key management unit 122 to verify the terminal verification signature T0B (D202). (Step S614). If the verification fails, the pairing process is stopped. Hereinafter, the description will be continued assuming that the verification was successful.

続いて、ペアリング制御部126は、端末能力情報302を参照して、相手の鍵管理セキュアアプリ120が所定の安全性のレベルを確保していることを確認する(ステップS615)。即ち、ユーザ端末100−Bの、鍵の保護能力、ユーザ認証方法、ユーザ認証の強度、セキュア領域の有無など少なくとも1つを確認する。確認できなければ、ペアリング処理を中止する。以下、確認できたとして説明を続ける。   Subsequently, the pairing control unit 126 refers to the terminal capability information 302 and confirms that the partner key management secure application 120 secures a predetermined safety level (step S615). That is, at least one of the user terminal 100-B, such as the key protection capability, the user authentication method, the strength of user authentication, and the presence or absence of a secure area, is confirmed. If it cannot be confirmed, the pairing process is stopped. Hereinafter, the description will be continued assuming that it has been confirmed.

次に、ペアリング制御部126は、ペアリング認証書D200内の乱数T0A(D212)が、自身がステップS608で送信した乱数と一致することを確認する。さらに、ペアリング制御部126は、鍵管理部122に依頼して、署名関係署名T0B(D213)を検証する(ステップS616)。乱数の確認又は署名データの検証に失敗すれば、ペアリング処理を中止する。以下、成功したとして説明を続ける。   Next, the pairing control unit 126 confirms that the random number T0A (D212) in the pairing certificate D200 matches the random number transmitted by itself in step S608. Further, the pairing control unit 126 requests the key management unit 122 to verify the signature related signature T0B (D213) (step S616). If the confirmation of the random number or the verification of the signature data fails, the pairing process is stopped. In the following, the explanation will be continued assuming that it was successful.

ユーザ端末100−Aのペアリング制御部126は、ユーザ端末100−Bに検証が成功したことを通知する(ステップS617)。   The pairing control unit 126 of the user terminal 100-A notifies the user terminal 100-B that the verification has been successful (step S617).

図20は図19に続く処理であり、ユーザ端末100−Aとユーザ端末100−Bを入替えた処理である。よって、詳細な説明を省略する。
引続き、図21を参照してペアリング処理の説明を続ける。
ユーザ端末100−Aのペアリング制御部126は、鍵管理部122にペアリング用証明書の生成を依頼する(ステップS628)。
FIG. 20 is processing subsequent to FIG. 19 and is processing in which the user terminal 100-A and the user terminal 100-B are replaced. Therefore, detailed description is omitted.
The description of the pairing process will be continued with reference to FIG.
The pairing control unit 126 of the user terminal 100-A requests the key management unit 122 to generate a pairing certificate (step S628).

鍵管理部122は、以下の手順でペアリング用証明書D310を生成する(ステップS629)。以下、ステップS629を詳細に説明する。
同期に用いる暗号化用鍵ペアと、署名用鍵ペアとを、それぞれ生成する。生成した4つの鍵は、セキュア記憶部160の同期用鍵DB164(図5参照)に格納する。即ち、鍵管理部122は、同期用鍵DB164にレコードを追加して、該レコードの端末IDを相手のユーザ端末100−BのIDである「T0B」に、受信用秘密鍵を暗号化用鍵ペアの秘密鍵に、受信用公開鍵を暗号化用鍵ペアの公開鍵に、署名用公開鍵を署名用鍵ペアの公開鍵に、署名用秘密鍵を署名用鍵ペアの秘密鍵に更新する。送信用公開鍵と検証用公開鍵は、未定なので、両方とも「−」とする。
The key management unit 122 generates the pairing certificate D310 according to the following procedure (step S629). Hereinafter, step S629 will be described in detail.
An encryption key pair and a signature key pair used for synchronization are generated. The four generated keys are stored in the synchronization key DB 164 (see FIG. 5) of the secure storage unit 160. That is, the key management unit 122 adds a record to the synchronization key DB 164, sets the terminal ID of the record to “T0B” that is the ID of the partner user terminal 100-B, and sets the reception private key to the encryption key. Update the private key of the pair, the public key for reception to the public key of the key pair for encryption, the public key for signature to the public key of the key pair for signature, and the private key for signature to the private key of the key pair for signature . Since the transmission public key and the verification public key are undecided, both are set to “−”.

続いて、鍵管理部122は、自身の端末IDである「T0A」(D311)と、暗号化用鍵ペアの公開鍵D312(請求項の暗号化用公開鍵)と、署名用鍵ペアの公開鍵D313(請求項の署名用公開鍵)とを合わせたデータに対して、署名用鍵ペアの秘密鍵を用いて署名データD314を生成し、ペアリング用証明書D310を生成する。
次に、鍵管理部122は、生成したペアリング用証明書D310をペアリング制御部126に送信する(ステップS630)。
ペアリング制御部126は、ペアリング用証明書D310を受信し、相手のユーザ端末100−Bに送信する(ステップS631)。
Subsequently, the key management unit 122 “T0A” (D311), which is its own terminal ID, the public key D312 (encryption public key of the claims) of the encryption key pair, and the disclosure of the signature key pair For the data combined with the key D313 (the signature public key in the claims), the signature data D314 is generated using the secret key of the signature key pair, and the pairing certificate D310 is generated.
Next, the key management unit 122 transmits the generated pairing certificate D310 to the pairing control unit 126 (step S630).
The pairing control unit 126 receives the pairing certificate D310 and transmits it to the partner user terminal 100-B (step S631).

続く、ユーザ端末100−BでのステップS632からステップS635までの処理は、ユーザ端末100−AでのステップS628からステップS631までの処理と同様である。   The subsequent processing from step S632 to step S635 in the user terminal 100-B is the same as the processing from step S628 to step S631 in the user terminal 100-A.

ユーザ端末100−Bのペアリング制御部126は、ユーザ端末100−Aのペアリング用証明書D310を鍵管理部122に送信する(ステップS636)。
ユーザ端末100−Bの鍵管理部122は、ペアリング用証明書D310を受信すると、この証明書を検証する(ステップS637)。即ち、署名T0A(D314)が正しい署名か、署名用公開鍵T0A(D313)を用いて検証する。検証に失敗すれば、ペアリング処理を中止する。以下、成功したとして説明を続ける。
The pairing control unit 126 of the user terminal 100-B transmits the pairing certificate D310 of the user terminal 100-A to the key management unit 122 (step S636).
When receiving the pairing certificate D310, the key management unit 122 of the user terminal 100-B verifies this certificate (step S637). That is, it is verified by using the signature public key T0A (D313) whether the signature T0A (D314) is correct. If the verification fails, the pairing process is stopped. In the following, the explanation will be continued assuming that it was successful.

続いて、ユーザ端末100−Bの鍵管理部122は、暗号化用公開鍵T0A(D312)と署名用公開鍵T0A(D313)とを、セキュア記憶部160の同期用鍵DB164(図5参照)に格納する(ステップS638)。即ち、鍵管理部122は、同期用鍵DB164の中で、端末IDがペアリング相手のIDである「T0A」に一致するレコードの送信用公開鍵を暗号化用公開鍵T0A(D312)に、検証用公開鍵を署名用公開鍵T0A(D313)に、更新する。さらに、ペアリング制御部126は、ステップS625で確認した端末能力情報302に記載される端末の能力を、該レコードの端末能力に追加する。   Subsequently, the key management unit 122 of the user terminal 100-B sends the encryption public key T0A (D312) and the signature public key T0A (D313) to the synchronization key DB 164 of the secure storage unit 160 (see FIG. 5). (Step S638). That is, the key management unit 122 sets the transmission public key of the record whose terminal ID matches “T0A” that is the ID of the pairing partner in the synchronization key DB 164 to the encryption public key T0A (D312). The verification public key is updated to the signature public key T0A (D313). Further, the pairing control unit 126 adds the terminal capability described in the terminal capability information 302 confirmed in step S625 to the terminal capability of the record.

続く、ユーザ端末100−AでのステップS639からステップS641までの処理は、ユーザ端末100−BでのステップS636からステップS638までの処理と同様である。
ペアリング用証明書(D310とD320)の署名データ(D314とD324)は、署名用鍵ペアの秘密鍵を用いて生成していたが、署名関係秘密鍵を用いて生成することもできる。この場合には、署名関係公開鍵を用いて検証する。
The subsequent processing from step S639 to step S641 in the user terminal 100-A is the same as the processing from step S636 to step S638 in the user terminal 100-B.
The signature data (D314 and D324) of the pairing certificate (D310 and D320) is generated using the private key of the signature key pair, but can also be generated using the signature-related private key. In this case, verification is performed using the signature-related public key.

≪同期処理≫
図22と図23とは、本実施形態に係るペアリング済みのユーザ端末100−Aとユーザ端末100−Bの同期処理を例示するシーケンス図である。
同期処理を始めるにあたり、ユーザ端末100−Aとユーザ端末100−Bとは、通信ケーブル、Bluetooth等を用いて直接接続され、直接通信が可能である。さらに、ユーザ端末100−Aとユーザ端末100−Bとは、ペアリングを済ませている。
以下、図22を参照して同期処理の説明を行う。
<< Synchronization process >>
FIG. 22 and FIG. 23 are sequence diagrams illustrating a synchronization process between the paired user terminal 100-A and the user terminal 100-B according to the present embodiment.
In starting the synchronization process, the user terminal 100-A and the user terminal 100-B are directly connected using a communication cable, Bluetooth, or the like, and can directly communicate with each other. Further, the user terminal 100-A and the user terminal 100-B have been paired.
Hereinafter, the synchronization process will be described with reference to FIG.

ユーザ端末100−Aの同期制御部127は、自身がユーザ端末100−Bと直接通信で接続されていることを検出する(ステップS701−A)。この検出により、以下のユーザ端末100−Aの処理が自動的に始まる。
続いて、同期制御部127は、端末管理サーバ200に問い合わせて、自身であるユーザ端末100−Aが利用停止中でないことを確認する(ステップS702−A)。
ユーザ端末100−Bでも、同様の処理を実行する(ステップS701−BとステップS702−B)。
The synchronization control unit 127 of the user terminal 100-A detects that it is connected to the user terminal 100-B by direct communication (step S701-A). By this detection, the following processing of the user terminal 100-A automatically starts.
Subsequently, the synchronization control unit 127 makes an inquiry to the terminal management server 200 and confirms that the user terminal 100-A that is itself is not suspended (step S702-A).
The user terminal 100-B also performs the same process (steps S701-B and S702-B).

ユーザ端末100−Aの同期制御部127とユーザ端末100−Bの同期制御部127とは、それぞれの端末IDと新規に作成した乱数とを交換する(ステップS703)。即ち、ユーザ端末100−Aの同期制御部127は、自身の端末IDである「T0A」と新規に生成した乱数T0Aをユーザ端末100−Bに送信し、同様に、ユーザ端末100−Bの同期制御部127は、自身の端末IDである「T0B」と新規に生成した乱数T0Bをユーザ端末100−Aに送信する。ユーザ端末100−Aの同期制御部127は、端末IDの「T0B」と乱数T0Bを受信し、ユーザ端末100−Bの同期制御部127は、端末IDの「T0A」と乱数T0Aを受信する。   The synchronization control unit 127 of the user terminal 100-A and the synchronization control unit 127 of the user terminal 100-B exchange their terminal IDs with a newly created random number (step S703). That is, the synchronization control unit 127 of the user terminal 100-A transmits its own terminal ID “T0A” and the newly generated random number T0A to the user terminal 100-B, and similarly, the synchronization of the user terminal 100-B. The control unit 127 transmits “T0B”, which is its own terminal ID, and a newly generated random number T0B to the user terminal 100-A. The synchronization control unit 127 of the user terminal 100-A receives the terminal ID “T0B” and the random number T0B, and the synchronization control unit 127 of the user terminal 100-B receives the terminal ID “T0A” and the random number T0A.

ユーザ端末100−Aの同期制御部127は、鍵管理部122に、ステップS703で受信した端末IDの「T0B」と乱数T0Bを送信し、同期署名データの生成を依頼する(ステップS704)。
鍵管理部122は、端末IDの「T0B」と乱数T0Bを受信して、同期署名データD410を生成する(ステップS705)。以下、この処理を説明する。
The synchronization control unit 127 of the user terminal 100-A transmits the terminal ID “T0B” and the random number T0B received in step S703 to the key management unit 122, and requests generation of synchronization signature data (step S704).
The key management unit 122 receives the terminal ID “T0B” and the random number T0B, and generates synchronization signature data D410 (step S705). Hereinafter, this process will be described.

鍵管理部122は、セキュア記憶部160の同期用鍵DB164(図5参照)の中で、端末IDが受信した「T0B」に一致するレコードを探索する。相手のユーザ端末100−Bとはペアリング済みなので、当該レコードは存在し、該レコードの署名用秘密鍵を用いて、自身の端末IDである「T0A」(D411)と受信した乱数T0B(D412)とを合わせたデータに対する署名データD413を生成し、同期署名データD410を生成する。   The key management unit 122 searches the synchronization key DB 164 (see FIG. 5) of the secure storage unit 160 for a record that matches the received “T0B” with the terminal ID. Since it has already been paired with the partner user terminal 100-B, the record exists, and using the signature private key of the record, its own terminal ID “T0A” (D411) and the received random number T0B (D412) ) And signature data D413 is generated for the combined data, and synchronous signature data D410 is generated.

鍵管理部122は、生成した同期署名データD410を同期制御部127に送信する(ステップS706)。
同期制御部127は、同期署名データD410を受信して、ユーザ端末100−Bに送信する(ステップS707)。
The key management unit 122 transmits the generated synchronization signature data D410 to the synchronization control unit 127 (step S706).
The synchronization control unit 127 receives the synchronization signature data D410 and transmits it to the user terminal 100-B (step S707).

ユーザ端末100−Bの同期制御部127は、同期署名データD410を受信する。続いて同期制御部127は、ステップS703で受信した端末IDの「T0A」と自身が生成した乱数T0B、並びに、同期署名データD410を、鍵管理部122に送信して、同期署名データD410の検証を依頼する(ステップS708)。
鍵管理部122は、同期署名データD410を検証する(ステップS709)。以下、この処理を説明する。
The synchronization control unit 127 of the user terminal 100-B receives the synchronization signature data D410. Subsequently, the synchronization control unit 127 transmits the terminal ID “T0A” received in step S703, the random number T0B generated by itself, and the synchronization signature data D410 to the key management unit 122 to verify the synchronization signature data D410. Is requested (step S708).
The key management unit 122 verifies the synchronization signature data D410 (step S709). Hereinafter, this process will be described.

先ず、鍵管理部122は、同期署名データD410の中の乱数T0B(D412)とステップS708で受信した乱数T0Bが一致するか確認する。次に、同期制御部127は、同期署名データD410の中の端末IDの「T0A」(D411)とステップS708で受信した端末IDの「T0A」が一致するか確認する。いずれかの確認に失敗すれば、同期処理を中止する。以下、成功したとして説明を続ける。   First, the key management unit 122 confirms whether the random number T0B (D412) in the synchronization signature data D410 matches the random number T0B received in step S708. Next, the synchronization control unit 127 confirms whether the terminal ID “T0A” (D411) in the synchronization signature data D410 matches the terminal ID “T0A” received in step S708. If any of the confirmations fails, the synchronization process is stopped. In the following, the explanation will be continued assuming that it was successful.

続いて、鍵管理部122は、セキュア記憶部160の同期用鍵DB164(図5参照)の中で、端末IDが受信した「T0A」に一致するレコードを探索する。相手のユーザ端末100−Aとはペアリング済みなので、当該レコードは存在し、該レコードの検証用公開鍵を取出し、この鍵を用いて、署名データD413が正しいかを検証する。検証に失敗すれば、同期処理を中止する。以下、成功したとして説明を続ける。
鍵管理部122は、同期署名データD410の検証に成功したことを、同期制御部127に通知する(ステップS710)。
Subsequently, the key management unit 122 searches the synchronization key DB 164 (see FIG. 5) of the secure storage unit 160 for a record that matches the received “T0A”. Since it is paired with the counterpart user terminal 100-A, the record exists, the verification public key of the record is taken out, and the signature data D413 is verified using this key. If the verification fails, the synchronization process is stopped. In the following, the explanation will be continued assuming that it was successful.
The key management unit 122 notifies the synchronization control unit 127 that the synchronization signature data D410 has been successfully verified (step S710).

続く、ユーザ端末100−BでのステップS711からステップS714までの処理は、ユーザ端末100−AでのステップS704からステップS707までの処理と同様である。
続く、ユーザ端末100−AでのステップS715からステップS717までの処理は、ユーザ端末100−BでのステップS708からステップS710までの処理と同様である。
The subsequent processing from step S711 to step S714 in the user terminal 100-B is the same as the processing from step S704 to step S707 in the user terminal 100-A.
The subsequent processing from step S715 to step S717 at the user terminal 100-A is the same as the processing from step S708 to step S710 at the user terminal 100-B.

引き続き、図23を参照して、同期処理の説明を続ける。
ユーザ端末100−Aの同期制御部127は、鍵管理部122に、URLリストの作成を依頼する(ステップS718−A)。
鍵管理部122は、URLリストを作成する(ステップS719−A)。即ち、鍵管理部122は、セキュア記憶部160のWEBサービス鍵DB163(図6参照)のURLを収集して、リストを作成する。
次に、鍵管理部122は、ステップS719で作成したURLのリストを、同期制御部127に送信する(ステップS720−A)。
The description of the synchronization process will be continued with reference to FIG.
The synchronization control unit 127 of the user terminal 100-A requests the key management unit 122 to create a URL list (step S718-A).
The key management unit 122 creates a URL list (step S719-A). That is, the key management unit 122 collects URLs of the WEB service key DB 163 (see FIG. 6) in the secure storage unit 160 and creates a list.
Next, the key management unit 122 transmits the list of URLs created in step S719 to the synchronization control unit 127 (step S720-A).

続いて、同期制御部127は、WEBサービス400の認証ポリシ401の問合せを行う(ステップS721−A)。即ち、受信したURLのリストに含まれる個々のWEBサービス400にアクセスして、認証ポリシ401を入手する。認証ポリシ401には、パスワード・指紋・静脈・サイン等のユーザ認証方法やその強度、ソフトウェア・ハードウェア等の鍵の保護方法(鍵の保護能力)、ユーザ端末100のCPU・CPUとは異なるプロセッサ等のユーザ認証を行うハードウェア、鍵の複製の可否、セキュア領域の有無などがある。   Subsequently, the synchronization control unit 127 makes an inquiry about the authentication policy 401 of the WEB service 400 (step S721-A). That is, the individual web service 400 included in the received URL list is accessed to obtain the authentication policy 401. The authentication policy 401 includes a user authentication method such as password / fingerprint / vein / sign, its strength, a key protection method (key protection capability) such as software / hardware, and a processor different from the CPU / CPU of the user terminal 100. Hardware for performing user authentication, etc., whether or not keys can be copied, and whether or not there is a secure area.

次に、同期制御部127は、WEBサービス400の認証ポリシ401を参照して、鍵同期の可否を判断する(ステップS722−A)。即ち、鍵の複製の可否、相手のユーザ端末100−Bの鍵の保護能力、ユーザ認証方法、ユーザ認証の強度、セキュア領域の有無の少なくとも1つを確認し、WEBサービス400の認証ポリシ401を満たしているかを判断し、同期の可否を判定する。相手のユーザ端末100−Bのユーザ認証方法や秘密鍵の保護方法(保護能力)は、同期用鍵DB164(図5参照)のユーザ端末100−Bのレコードの端末能力から得ることができる。   Next, the synchronization control unit 127 refers to the authentication policy 401 of the WEB service 400 and determines whether key synchronization is possible (step S722-A). That is, at least one of whether or not the key can be copied, the key protection capability of the other user terminal 100-B, the user authentication method, the strength of the user authentication, and the presence or absence of the secure area is confirmed, and the authentication policy 401 of the WEB service 400 is It is determined whether it is satisfied, and it is determined whether synchronization is possible. The user authentication method and secret key protection method (protection capability) of the partner user terminal 100-B can be obtained from the terminal capability of the record of the user terminal 100-B in the synchronization key DB 164 (see FIG. 5).

続いて、ステップS722−Aで鍵同期が可であるWEBサービスのURLのリストを作成し、鍵管理部122に送信して、同期可能鍵リストの作成を依頼する(ステップS723−A)。
鍵管理部122は、URLのリストを受信して、WEBサービス鍵DB163に記憶される、URLに対応する公開鍵のリストを作成し、同期可能鍵リストとして同期制御部127に送信する(ステップS724−A)。
Subsequently, in step S722-A, a list of URLs of WEB services where key synchronization is possible is created and transmitted to the key management unit 122 to request creation of a synchronizable key list (step S723-A).
The key management unit 122 receives the URL list, creates a public key list corresponding to the URL stored in the WEB service key DB 163, and transmits the list to the synchronization control unit 127 as a synchronizable key list (step S724). -A).

ユーザ端末100−Aと同様に、ユーザ端末100−Bでも、ステップS718−BからステップS724−Bの処理を行う。
ユーザ端末100−Aの同期制御部127とユーザ端末100−Bの同期制御部127とは、各々の鍵管理部122から同期可能鍵リストを受信し、それぞれ相手に受信した同期可能鍵リストを送信する(ステップS725)。
Similarly to the user terminal 100-A, the user terminal 100-B performs the processing from step S718-B to step S724-B.
The synchronization control unit 127 of the user terminal 100-A and the synchronization control unit 127 of the user terminal 100-B receive the synchronizable key list from each key management unit 122 and transmit the received synchronizable key list to the other party. (Step S725).

続いて、ユーザ端末100−Aの同期制御部127とユーザ端末100−Bの同期制御部127とのそれぞれは、受信した同期可能鍵リストを鍵管理部122に送信し、同期を指示する(ステップS726)。   Subsequently, each of the synchronization control unit 127 of the user terminal 100-A and the synchronization control unit 127 of the user terminal 100-B transmits the received synchronizable key list to the key management unit 122 and instructs synchronization (step). S726).

各々の鍵管理部122は、受信した同期可能鍵リストの中から、自身が保有していない鍵を相手の鍵管理部122から入手して、同期を行う(ステップS727)。以下、この同期の処理を説明する。
先ず、ユーザ端末100−Aの鍵管理部122は、ステップS726で受信した公開鍵のリストの中で、WEBサービス鍵DB163(図6参照)に存在しない公開鍵を特定し、この特定した公開鍵のリストに署名し、署名付きの公開鍵のリストを暗号化して、相手であるユーザ端末100−Bの鍵管理部122に送信する。署名するには、同期用鍵DB164(図5参照)の相手のユーザ端末100−Bに対応するレコードの署名用秘密鍵を用い、暗号化するには、送信用公開鍵を用いる。
Each key management unit 122 obtains a key that the key management unit 122 does not own from the received key list that can be synchronized from the partner key management unit 122, and performs synchronization (step S727). Hereinafter, the synchronization process will be described.
First, the key management unit 122 of the user terminal 100-A identifies a public key that does not exist in the WEB service key DB 163 (see FIG. 6) from the list of public keys received in step S726, and identifies the identified public key. The signed public key list is encrypted and transmitted to the key management unit 122 of the user terminal 100-B as the counterpart. In order to sign, the signature private key of the record corresponding to the user terminal 100-B of the other party in the synchronization key DB 164 (see FIG. 5) is used, and in order to encrypt, the transmission public key is used.

ユーザ端末100−Bの鍵管理部122は、署名され、暗号化された公開鍵のリストを受信し、復号して、署名を検証する。復号するには、同期用鍵DB164の相手のユーザ端末100−Aに対応するレコードの受信用秘密鍵を用い、検証するには、検証用公開鍵を用いる。復号又は署名検証に失敗した場合には、同期処理を中止する。以下、成功したとして説明を続ける。   The key management unit 122 of the user terminal 100-B receives the signed and encrypted list of public keys, decrypts it, and verifies the signature. For decryption, the reception private key of the record corresponding to the counterpart user terminal 100-A in the synchronization key DB 164 is used, and for verification, the verification public key is used. If the decryption or signature verification fails, the synchronization process is stopped. In the following, the explanation will be continued assuming that it was successful.

ユーザ端末100−Bの鍵管理部122は、公開鍵のリストに含まれる、各公開鍵に対応するWEBサービス400のURLと、ユーザIDと、秘密鍵と、公開鍵とを、セキュア記憶部160に記憶されるWEBサービス鍵DB163(図6参照)から取出し、リストにして、署名し、暗号化する。署名と暗号化の方法は、先にユーザ端末100−Aの鍵管理部122が公開鍵のリストに対して行った署名と暗号化の方法と同様である。署名し、暗号化したリストをユーザ端末100−Aの鍵管理部122に送信する。   The key management unit 122 of the user terminal 100-B stores the URL of the WEB service 400 corresponding to each public key, the user ID, the secret key, and the public key included in the public key list, and the secure storage unit 160. Is taken out from the WEB service key DB 163 (see FIG. 6) stored in the list, signed, encrypted. The signature and encryption method is the same as the signature and encryption method previously performed on the public key list by the key management unit 122 of the user terminal 100-A. The signed and encrypted list is transmitted to the key management unit 122 of the user terminal 100-A.

署名され、暗号化されたリストをユーザ端末100−Aの鍵管理部122が受信すると、復号し、署名の検証を行い、得られたURLとユーザIDと秘密鍵と公開鍵とを、セキュア記憶部160に記憶されるWEBサービス鍵DB163に追加する。
以上は、ユーザ端末100−Bからユーザ端末100−Aへの方向のURLとユーザIDと秘密鍵と公開鍵の同期(複製)であったが、逆方向も同様であり、これで同期の処理が完了する。
ユーザ端末100−Aとユーザ端末100−Bの鍵管理部122は、それぞれ、同期の完了を同期制御部127に通知する(ステップS728)。
When the key management unit 122 of the user terminal 100-A receives the signed and encrypted list, it decrypts it, verifies the signature, and securely stores the obtained URL, user ID, private key, and public key. To the WEB service key DB 163 stored in the unit 160.
The above is the synchronization (duplication) of the URL, the user ID, the secret key, and the public key in the direction from the user terminal 100-B to the user terminal 100-A, but the reverse direction is the same. Is completed.
The key management units 122 of the user terminal 100-A and the user terminal 100-B respectively notify the synchronization control unit 127 of the completion of synchronization (step S728).

以上の同期処理は、直接通信可能であることを検出して(ステップS701の接続検出)開始した。即ち、ユーザ端末100−Aとユーザ端末100−Bとを直接接続することで、その後はユーザの操作なしで同期することができる。   The above synchronization processing is started by detecting that direct communication is possible (connection detection in step S701). That is, by directly connecting the user terminal 100-A and the user terminal 100-B, synchronization can be performed without any user operation thereafter.

同期する秘密鍵を識別するのに、ステップS719やステップS727に示すように、WEBサービス鍵DB163に記憶されるURLや公開鍵を利用していたが、これに限る必要はなく、例えば秘密鍵のハッシュ値を用いても構わない。
また、同期する秘密鍵は、WEBサービスのユーザ認証用の秘密鍵に限る必要はなく、WEBサービスのユーザ認証用以外の公開鍵暗号の秘密鍵でも同期可能である。同期する秘密鍵の識別にハッシュ値を用いれば、公開鍵暗号の秘密鍵に限る必要もなく、共通鍵暗号の鍵でも可能である。
As shown in step S719 and step S727, the URL and public key stored in the WEB service key DB 163 are used to identify the secret key to be synchronized. However, the present invention is not limited to this. A hash value may be used.
The secret key to be synchronized is not limited to the secret key for user authentication of the WEB service, and can be synchronized with a secret key of public key encryption other than for user authentication of the WEB service. If a hash value is used for identification of a secret key to be synchronized, it is not necessary to limit to a secret key for public key cryptography, and a key for common key cryptography is also possible.

≪秘密鍵同期システムの効果≫
従来までのWEBサービスの秘密鍵を保有したユーザ端末100の間では、鍵の複製ができない、又は複製可能であってもパスワードによる暗号化等マニュアル操作があり、秘密鍵の数とユーザ端末100の数との積に比例する手間がかかるという問題があった。
≪Effect of secret key synchronization system≫
There is manual operation such as password encryption even if the user terminal 100 having the secret key of the WEB service that has been used so far cannot be duplicated or can be duplicated. There was a problem that it took time and effort proportional to the product of the number.

本実施形態では、ユーザ端末100を端末管理サーバ200に登録し、2つのユーザ端末をペアリングした後には、その2つのユーザ端末100を直接通信可能であるように接続するだけで、マニュアル操作不要で同期(WEBサービスの秘密鍵の複製)ができる。   In the present embodiment, after the user terminal 100 is registered in the terminal management server 200 and the two user terminals are paired, it is only necessary to connect the two user terminals 100 so that they can communicate directly, and no manual operation is required. Can synchronize (copy the secret key of the WEB service).

ユーザ端末100の登録に関しては、最初に登録した一次ユーザ端末100−1を起点とし、2台目以降のユーザ端末100は二次ユーザ端末100−2として、一次ユーザ端末100−1を介して登録するようにしている。さらに、二次ユーザ端末100−2の登録には、一次ユーザ端末100−1と登録しようとする二次ユーザ端末100−2をケーブルやBluetoothなどの、インターネットではなく、直接通信を介して登録するようにし、さらに一次ユーザ端末100−1でユーザ認証を行うようにしている。こうすることで、詐称やネットワーク経由の攻撃を受けることなく、安全に二次ユーザ端末100−2を登録することができる。また、このようにして登録したユーザ端末100の間でのみペアリングや同期ができるようにしている。さらに、ペアリングや同期も直接通信を介して行っており、安全である。   Regarding registration of the user terminal 100, the primary user terminal 100-1 registered first is used as a starting point, and the second and subsequent user terminals 100 are registered as secondary user terminals 100-2 via the primary user terminal 100-1. Like to do. Furthermore, for the registration of the secondary user terminal 100-2, the primary user terminal 100-1 and the secondary user terminal 100-2 to be registered are registered through direct communication, such as cable or Bluetooth, instead of the Internet. In addition, user authentication is performed at the primary user terminal 100-1. By doing so, the secondary user terminal 100-2 can be safely registered without being subjected to fraud and attacks via the network. In addition, pairing and synchronization can be performed only between the user terminals 100 registered in this way. Furthermore, pairing and synchronization are also performed directly via communication, which is safe.

また、ユーザ端末100の紛失や盗難を想定して、ユーザ端末100の利用状況を確認できるようにしている。ユーザ端末100の紛失・盗難の可能性がある場合には、そのユーザ端末100を利用停止にすることで、ペアリングや同期を禁止することができる。   In addition, assuming that the user terminal 100 is lost or stolen, the usage status of the user terminal 100 can be confirmed. When there is a possibility that the user terminal 100 is lost or stolen, pairing and synchronization can be prohibited by stopping the use of the user terminal 100.

また、秘密鍵を盗もうとする攻撃に対する対抗力(鍵の保護能力)やユーザ認証の確かさのレベル(ユーザ認証方法やその強度)、セキュア領域の有無等、鍵管理セキュアアプリ120の安全性のレベルをペアリングの処理と同期の処理の中で確認している。これにより、安全性のレベルの低いユーザ端末100とのペアリングができなくなり、秘密鍵の漏洩を防ぐことができる。また、WEBサービスの秘密鍵ごとに、そのWEBサービスの認証ポリシ401と照らし合わせ、安全性のレベルの低いユーザ端末100との同期はできなくしているので、秘密鍵の漏洩を防ぐことができる。   In addition, the security of the key management secure application 120, such as the resistance to attacks that attempt to steal the secret key (key protection capability), the level of certainty of user authentication (user authentication method and its strength), the presence of a secure area, etc. Is checked in the pairing process and the synchronization process. Thereby, it becomes impossible to perform pairing with the user terminal 100 having a low security level, and leakage of the secret key can be prevented. Also, since each WEB service secret key is compared with the authentication policy 401 of the WEB service and cannot be synchronized with the user terminal 100 with a low level of security, leakage of the secret key can be prevented.

署名関係秘密鍵、WEBサービスのユーザ認証用の秘密鍵、同期用暗号化秘密鍵、同期用認証秘密鍵、端末検証用秘密鍵は、全てセキュア記憶部160に記憶され、鍵管理部122のみがアクセスしており、鍵管理セキュアアプリ120の外部では、常に暗号化されており、安全である。   The signature-related secret key, the WEB service user authentication secret key, the synchronization encryption secret key, the synchronization authentication secret key, and the terminal verification secret key are all stored in the secure storage unit 160, and only the key management unit 122 It is accessed and is always encrypted outside the key management secure application 120 and is safe.

ペアリングのときの相手の署名関係情報は、2つのユーザ端末(100−Aと100−B)との間で、セキュア記憶部160に記憶した署名関係情報を送信し合うことで、入手することが可能である。ユーザ端末の利用状態の確認を行わないのであれば、端末管理サーバ200をなくす構成にすることも可能である。他に、端末管理サーバ200に問合せて、署名関係情報を入手することも可能である。この場合、ユーザ端末100の間の直接通信の通信量を減らすことができる。   The partner-related signature relationship information at the time of pairing is obtained by transmitting the signature relationship information stored in the secure storage unit 160 between the two user terminals (100-A and 100-B). Is possible. If the usage status of the user terminal is not checked, the terminal management server 200 can be eliminated. In addition, the terminal management server 200 can be inquired to obtain signature related information. In this case, the amount of direct communication between the user terminals 100 can be reduced.

鍵管理セキュアアプリ120は、鍵管理ノンセキュアアプリ130と認証クレデンシャルDB161(図3参照)と署名関係鍵DB162(図4参照)とを監視し、改竄や削除を検知した場合に、署名関係鍵DB162と、WEBサービス鍵DB163(図6参照)と、同期用鍵DB164(図5参照)と、端末検証用秘密鍵165(図2参照)とを削除する。これにより、ユーザ認証を回避して、WEBサービス鍵に不正にアクセスする攻撃を防止することができる。   The key management secure application 120 monitors the key management non-secure application 130, the authentication credential DB 161 (see FIG. 3), and the signature related key DB 162 (see FIG. 4), and when detecting falsification or deletion, the key management secure application 120 Then, the WEB service key DB 163 (see FIG. 6), the synchronization key DB 164 (see FIG. 5), and the terminal verification secret key 165 (see FIG. 2) are deleted. As a result, user authentication can be avoided, and attacks that illegally access the WEB service key can be prevented.

1 秘密鍵同期システム
100 ユーザ端末
110 制御部
120 鍵管理セキュアアプリ
121 ユーザ認証部
122 鍵管理部
123 端末初期登録部
124 端末登録要求部
125 端末登録応答部
126 ペアリング制御部
127 同期制御部
130 鍵管理ノンセキュアアプリ
140 入出力部
141 認証デバイス
142 直接通信用インタフェース
150 記憶部
160 セキュア記憶部
161 認証クレデンシャルDB
162 署名関係鍵DB
163 WEBサービス鍵DB
164 同期用鍵DB
165 端末検証用秘密鍵
200 端末管理サーバ
210 制御部
211 ユーザ受付部
212 署名関係情報管理部
213 端末利用状況管理部
220 入出力部
230 記憶部
231 ユーザ情報DB
232 署名関係情報DB
233 端末利用状況DB
300 端末検証サーバ
301 端末検証用公開鍵
302 端末能力情報
400 WEBサービス
401 認証ポリシ
DESCRIPTION OF SYMBOLS 1 Secret key synchronization system 100 User terminal 110 Control part 120 Key management secure application 121 User authentication part 122 Key management part 123 Terminal initial registration part 124 Terminal registration request part 125 Terminal registration response part 126 Pairing control part 127 Synchronization control part 130 Key Management non-secure application 140 Input / output unit 141 Authentication device 142 Direct communication interface 150 Storage unit 160 Secure storage unit 161 Authentication credential DB
162 Signature-related key DB
163 WEB service key DB
164 Key DB for synchronization
165 Terminal verification private key 200 Terminal management server 210 Control unit 211 User reception unit 212 Signature related information management unit 213 Terminal usage status management unit 220 Input / output unit 230 Storage unit 231 User information DB
232 Signature related information DB
233 Terminal usage status DB
300 terminal verification server 301 terminal verification public key 302 terminal capability information 400 WEB service 401 authentication policy

Claims (7)

サービスを利用する際の認証に用いる秘密鍵であるサービス秘密鍵を保持するユーザ端末と、前記ユーザ端末に係る情報を保有する端末管理サーバとが、通信ネットワークを介して接続され、2つの前記ユーザ端末の間で前記サービス秘密鍵の複製を行う秘密鍵同期システムであって、
前記ユーザ端末は、
前記ユーザ端末を認証するための一次署名関係情報の秘密鍵と公開鍵のペアを生成し、自身のユーザ端末識別子と、前記一次署名関係情報の公開鍵と、前記一次署名関係情報の秘密鍵を用いた署名と、を含んだ前記一次署名関係情報を生成し、前記一次署名関係情報を前記端末管理サーバに送信して、自身を一次ユーザ端末とする、端末初期登録部と、
自身が前記一次ユーザ端末でない場合に、前記ユーザ端末を認証するための二次署名関係情報の秘密鍵と公開鍵のペアを生成し、自身のユーザ端末識別子と、前記二次署名関係情報の公開鍵と、前記二次署名関係情報の秘密鍵を用いた署名と、を含んだ前記二次署名関係情報を生成し、前記二次署名関係情報を前記一次ユーザ端末に、前記通信ネットワークを介さずに直接通信により送信して、自身を二次ユーザ端末とする、端末登録要求部と、
自身が前記一次ユーザ端末である場合に、前記二次ユーザ端末から前記二次署名関係情報を受信し、前記二次署名関係情報の署名の検証に成功した後に、署名の検証に成功した前記二次署名関係情報のユーザ端末識別子と、該ユーザ端末識別子を含んだ前記二次署名関係情報の公開鍵と、前記一次署名関係情報のユーザ端末識別子と、前記一次署名関係情報の公開鍵とを含むデータに、前記一次署名関係情報の秘密鍵で生成した署名を付与して、新たな一次署名関係情報を示す新規一次署名関係情報を生成し、前記新規一次署名関係情報を含んだ情報を前記端末管理サーバに送信する端末登録応答部と、
前記複製を行う前記一次ユーザ端末又は前記二次ユーザ端末である2つのユーザ端末の間で、前記複製に用いる暗号化用公開鍵と、前記複製に用いる署名用公開鍵と、前記一次署名関係情報の秘密鍵又は前記二次署名関係情報の秘密鍵を用いて生成した署名とを交換し合うペアリングを実行するペアリング制御部と、
前記ペアリングで交換し合った前記暗号化用公開鍵と前記署名用公開鍵とを用いて、前記サービス秘密鍵の前記複製を実行する同期制御部とを備え、
前記端末管理サーバは、
前記通信ネットワークを介して、前記一次ユーザ端末から前記一次署名関係情報を受信して記憶し、前記新規一次署名関係情報を受信した場合には、前記一次署名関係情報の公開鍵を用いた、前記新規一次署名関係情報の署名の検証成功の後に、前記一次署名関係情報にかえて前記新規一次署名関係情報を記憶する署名関係情報管理部を備える
ことを特徴とする秘密鍵同期システム。
A user terminal holding a service secret key, which is a secret key used for authentication when using a service, and a terminal management server holding information related to the user terminal are connected via a communication network, and the two users A secret key synchronization system for replicating the service secret key between terminals,
The user terminal is
Generating a pair of a private key and a public key of primary signature relation information for authenticating the user terminal, and having a user terminal identifier of the user, a public key of the primary signature relation information, and a secret key of the primary signature relation information A terminal initial registration unit that generates the primary signature relationship information including the used signature, transmits the primary signature relationship information to the terminal management server, and makes itself a primary user terminal;
When the mobile terminal itself is not the primary user terminal, it generates a pair of the private key and public key of the secondary signature relation information for authenticating the user terminal, and publishes the user terminal identifier and the secondary signature relation information Generating the secondary signature relationship information including a key and a signature using a secret key of the secondary signature relationship information, and sending the secondary signature relationship information to the primary user terminal without passing through the communication network. A terminal registration request unit, which is transmitted by direct communication to be a secondary user terminal,
When the terminal itself is the primary user terminal, the secondary signature relation information is received from the secondary user terminal, and after the signature verification of the secondary signature relation information is successfully verified, the second signature verification succeeds. Including a user terminal identifier of the next signature related information, a public key of the secondary signature related information including the user terminal identifier, a user terminal identifier of the primary signature related information, and a public key of the primary signature related information. A signature generated with the private key of the primary signature relationship information is added to the data, new primary signature relationship information indicating new primary signature relationship information is generated, and information including the new primary signature relationship information is stored in the terminal A terminal registration response unit to be transmitted to the management server;
The encryption public key used for the replication, the signature public key used for the replication, and the primary signature relationship information between the two user terminals that are the primary user terminal or the secondary user terminal that performs the replication A pairing control unit for performing pairing for exchanging a signature generated using the secret key of the secondary signature related information or the signature generated by using the secret key of the secondary signature relation information;
Using the encryption public key and the signature public key exchanged in the pairing, and a synchronization control unit that performs the duplication of the service secret key,
The terminal management server
The primary signature related information is received and stored from the primary user terminal via the communication network, and when the new primary signature related information is received, the public key of the primary signature related information is used. A secret key synchronization system comprising: a signature relationship information management unit that stores the new primary signature relationship information in place of the primary signature relationship information after successful verification of the signature of the new primary signature relationship information.
前記端末登録応答部は、前記新規一次署名関係情報の署名を生成する前に、ユーザ認証を行い、
前記ペアリング制御部は、前記ペアリングの前に、ユーザ認証を行う
ことを特徴とする請求項1に記載の秘密鍵同期システム。
The terminal registration response unit performs user authentication before generating a signature of the new primary signature related information,
The secret key synchronization system according to claim 1, wherein the pairing control unit performs user authentication before the pairing.
前記端末管理サーバは、前記ユーザ端末ごとに当該ユーザ端末が利用停止状態であるか否かを記憶し、
前記ペアリング制御部は、前記ペアリングの前に、自身が前記利用停止状態であるか否かを、前記端末管理サーバに問合せを行い、前記利用停止状態であるなら前記ペアリングを中止し、
前記同期制御部は、前記複製の前に、自身が前記利用停止状態であるか否かを、前記端末管理サーバに問合せを行い、前記利用停止状態であるなら前記複製を中止する
ことを特徴とする請求項1に記載の秘密鍵同期システム。
The terminal management server stores, for each user terminal, whether or not the user terminal is in a suspended state,
Before the pairing, the pairing control unit inquires to the terminal management server whether or not it is in the use suspension state, and if it is in the use suspension state, stops the pairing,
The synchronization control unit inquires of the terminal management server whether or not it is in the use suspended state before the duplication, and stops the duplication if in the use suspended state. The secret key synchronization system according to claim 1.
前記秘密鍵同期システムは、前記ユーザ端末の、鍵の保護能力、ユーザ認証方法、ユーザ認証の強度、セキュア領域の有無、のうちの少なくとも1つを含み安全性のレベルを示す端末能力情報を記憶する端末検証サーバを、さらに備えており、
前記ペアリング制御部は、前記ペアリングの前に、ペアリング対象となるユーザ端末の前記端末能力情報を前記端末検証サーバから入手し、前記端末能力情報が示す前記ユーザ端末の前記安全性のレベルが所定の基準を満たさない場合には、前記ペアリングを中止する
ことを特徴とする請求項1に記載の秘密鍵同期システム。
The secret key synchronization system stores terminal capability information indicating a level of security including at least one of a key protection capability, a user authentication method, a strength of user authentication, and presence / absence of a secure area of the user terminal. A terminal verification server that
The pairing control unit obtains the terminal capability information of the user terminal to be paired from the terminal verification server before the pairing, and the safety level of the user terminal indicated by the terminal capability information The secret key synchronization system according to claim 1, wherein the pairing is stopped when the key does not satisfy a predetermined criterion.
前記秘密鍵同期システムは、前記ユーザ端末の、鍵の保護能力、ユーザ認証方法、ユーザ認証の強度、セキュア領域の有無、のうちの少なくとも1つを含み安全性のレベルを示す端末能力情報を記憶する端末検証サーバを、さらに備えており、
前記サービス秘密鍵は、WEBサービスのユーザ認証に用いる秘密鍵であり、
前記WEBサービスは、前記WEBサービスのユーザ認証に用いる秘密鍵の複製の可否、前記ユーザ端末の鍵の保護能力、前記ユーザ端末のユーザ認証方法、前記ユーザ端末のユーザ認証の強度、前記ユーザ端末のセキュア領域の有無、のうちの少なくとも1つを規定する認証ポリシを記憶しており、
前記同期制御部は、前記WEBサービスのユーザ認証に用いる秘密鍵の複製の前に、前記複製をする先のユーザ端末の前記安全性のレベルが、前記WEBサービスの前記認証ポリシにある安全性のレベルを満たしていない場合には、前記複製を中止する
ことを特徴とする請求項1に記載の秘密鍵同期システム。
The secret key synchronization system stores terminal capability information indicating a level of security including at least one of a key protection capability, a user authentication method, a strength of user authentication, and presence / absence of a secure area of the user terminal. A terminal verification server that
The service secret key is a secret key used for user authentication of the WEB service,
The WEB service includes: whether or not a secret key used for user authentication of the WEB service can be copied; key protection capability of the user terminal; user authentication method of the user terminal; strength of user authentication of the user terminal; Stores an authentication policy that defines at least one of the presence or absence of a secure area,
The synchronization control unit determines whether the security level of the user terminal to which the copy is made is in the authentication policy of the WEB service before copying the secret key used for user authentication of the WEB service. The secret key synchronization system according to claim 1, wherein the duplication is canceled when the level is not satisfied.
サービスを利用する際の認証に用いる秘密鍵であるサービス秘密鍵を保持するユーザ端末と、前記ユーザ端末に係る情報を保有する端末管理サーバとが、通信ネットワークを介して接続され、2つの前記ユーザ端末の間で前記サービス秘密鍵の複製を行う秘密鍵同期システムの前記ユーザ端末であって、
前記ユーザ端末を認証するための一次署名関係情報の秘密鍵と公開鍵のペアを生成し、自身のユーザ端末識別子と、前記一次署名関係情報の公開鍵と、前記一次署名関係情報の秘密鍵を用いた署名と、を含んだ前記一次署名関係情報を生成し、前記一次署名関係情報を前記端末管理サーバに送信して、自身を一次ユーザ端末とする、端末初期登録部と、
自身が前記一次ユーザ端末でない場合に、前記ユーザ端末を認証するための二次署名関係情報の秘密鍵と公開鍵のペアを生成し、自身のユーザ端末識別子と、前記二次署名関係情報の公開鍵と、前記二次署名関係情報の秘密鍵を用いた署名と、を含んだ前記二次署名関係情報を生成し、前記二次署名関係情報を前記一次ユーザ端末に、前記通信ネットワークを介さずに直接通信により送信して、自身を二次ユーザ端末とする、端末登録要求部と、
自身が前記一次ユーザ端末である場合に、前記二次ユーザ端末から前記二次署名関係情報を受信し、前記二次署名関係情報の署名の検証に成功した後に、署名の検証に成功した前記二次署名関係情報のユーザ端末識別子と、該ユーザ端末識別子を含んだ前記二次署名関係情報の公開鍵と、前記一次署名関係情報のユーザ端末識別子と、前記一次署名関係情報の公開鍵とを含むデータに、前記一次署名関係情報の秘密鍵で生成した署名を付与して、新たな一次署名関係情報を示す新規一次署名関係情報を生成し、前記新規一次署名関係情報を含んだ情報を前記端末管理サーバに送信する端末登録応答部と、
前記複製を行う前記一次ユーザ端末又は前記二次ユーザ端末である2つのユーザ端末の間で、前記複製に用いる暗号化用公開鍵と、前記複製に用いる署名用公開鍵と、前記一次署名関係情報の秘密鍵又は前記二次署名関係情報の秘密鍵を用いて生成した署名とを交換し合うペアリングを実行するペアリング制御部と、
前記ペアリングで交換し合った前記暗号化用公開鍵と前記署名用公開鍵とを用いて、前記サービス秘密鍵の前記複製を実行する同期制御部とを備える
ことを特徴とするユーザ端末。
A user terminal holding a service secret key, which is a secret key used for authentication when using a service, and a terminal management server holding information related to the user terminal are connected via a communication network, and the two users The user terminal of the secret key synchronization system for copying the service secret key between the terminals,
Generating a pair of a private key and a public key of primary signature relation information for authenticating the user terminal, and having a user terminal identifier of the user, a public key of the primary signature relation information, and a secret key of the primary signature relation information A terminal initial registration unit that generates the primary signature relationship information including the used signature, transmits the primary signature relationship information to the terminal management server, and makes itself a primary user terminal;
When the mobile terminal itself is not the primary user terminal, it generates a pair of the private key and public key of the secondary signature relation information for authenticating the user terminal, and publishes the user terminal identifier and the secondary signature relation information Generating the secondary signature relationship information including a key and a signature using a secret key of the secondary signature relationship information, and sending the secondary signature relationship information to the primary user terminal without passing through the communication network. A terminal registration request unit, which is transmitted by direct communication to be a secondary user terminal,
When the terminal itself is the primary user terminal, the secondary signature relation information is received from the secondary user terminal, and after the signature verification of the secondary signature relation information is successfully verified, the second signature verification succeeds. Including a user terminal identifier of the next signature related information, a public key of the secondary signature related information including the user terminal identifier, a user terminal identifier of the primary signature related information, and a public key of the primary signature related information. A signature generated with the private key of the primary signature relationship information is added to the data, new primary signature relationship information indicating new primary signature relationship information is generated, and information including the new primary signature relationship information is stored in the terminal A terminal registration response unit to be transmitted to the management server;
The encryption public key used for the replication, the signature public key used for the replication, and the primary signature relationship information between the two user terminals that are the primary user terminal or the secondary user terminal that performs the replication A pairing control unit for performing pairing for exchanging a signature generated using the secret key of the secondary signature related information or the signature generated by using the secret key of the secondary signature relation information;
A user terminal comprising: a synchronization control unit that performs the duplication of the service secret key using the encryption public key and the signature public key exchanged by the pairing.
サービスを利用する際の認証に用いる秘密鍵であるサービス秘密鍵を保持するユーザ端末と、前記ユーザ端末に係る情報を保有する端末管理サーバとが、通信ネットワークを介して接続され、2つの前記ユーザ端末の間で前記サービス秘密鍵の複製を行う秘密鍵同期システムの秘密鍵同期方法であって、
前記ユーザ端末は、
前記ユーザ端末を認証するための一次署名関係情報の秘密鍵と公開鍵のペアを生成し、自身のユーザ端末識別子と、前記一次署名関係情報の公開鍵と、前記一次署名関係情報の秘密鍵を用いた署名と、を含んだ前記一次署名関係情報を生成し、前記一次署名関係情報を前記端末管理サーバに送信して、自身を一次ユーザ端末とするステップと、
自身が前記一次ユーザ端末でない場合に、前記ユーザ端末を認証するための二次署名関係情報の秘密鍵と公開鍵のペアを生成し、自身のユーザ端末識別子と、前記二次署名関係情報の公開鍵と、前記二次署名関係情報の秘密鍵を用いた署名と、を含んだ前記二次署名関係情報を生成し、前記二次署名関係情報を前記一次ユーザ端末に、前記通信ネットワークを介さずに直接通信により送信して、自身を二次ユーザ端末とするステップと、
自身が前記一次ユーザ端末である場合に、前記二次ユーザ端末から前記二次署名関係情報を受信し、前記二次署名関係情報の署名の検証に成功した後に、署名の検証に成功した前記二次署名関係情報のユーザ端末識別子と、該ユーザ端末識別子を含んだ前記二次署名関係情報の公開鍵と、前記一次署名関係情報のユーザ端末識別子と、前記一次署名関係情報の公開鍵とを含むデータに、前記一次署名関係情報の秘密鍵で生成した署名を付与して、新たな一次署名関係情報を示す新規一次署名関係情報を生成し、前記新規一次署名関係情報を含んだ情報を前記端末管理サーバに送信するステップと、
前記複製を行う前記一次ユーザ端末又は前記二次ユーザ端末である2つのユーザ端末の間で、前記複製に用いる暗号化用公開鍵と、前記複製に用いる署名用公開鍵と、前記一次署名関係情報の秘密鍵又は前記二次署名関係情報の秘密鍵を用いて生成した署名とを交換し合うペアリングを実行するステップと、
前記ペアリングで交換し合った前記暗号化用公開鍵と前記署名用公開鍵とを用いて、前記サービス秘密鍵の前記複製を実行するステップとを実行し、
前記端末管理サーバは、
前記通信ネットワークを介して、前記一次ユーザ端末から前記一次署名関係情報を受信して記憶し、前記新規一次署名関係情報を受信した場合には、前記一次署名関係情報の公開鍵を用いた、前記新規一次署名関係情報の署名の検証成功の後に、前記一次署名関係情報にかえて前記新規一次署名関係情報を記憶するステップを実行する
ことを特徴とする秘密鍵同期方法。
A user terminal holding a service secret key, which is a secret key used for authentication when using a service, and a terminal management server holding information related to the user terminal are connected via a communication network, and the two users A secret key synchronization method of a secret key synchronization system that duplicates the service secret key between terminals,
The user terminal is
Generating a pair of a private key and a public key of primary signature relation information for authenticating the user terminal, and having a user terminal identifier of the user, a public key of the primary signature relation information, and a secret key of the primary signature relation information Generating the primary signature relationship information including the used signature, transmitting the primary signature relationship information to the terminal management server, and making itself a primary user terminal;
When the mobile terminal itself is not the primary user terminal, it generates a pair of the private key and public key of the secondary signature relation information for authenticating the user terminal, and publishes the user terminal identifier and the secondary signature relation information Generating the secondary signature relationship information including a key and a signature using a secret key of the secondary signature relationship information, and sending the secondary signature relationship information to the primary user terminal without passing through the communication network. To the mobile phone as a secondary user terminal,
When the terminal itself is the primary user terminal, the secondary signature relation information is received from the secondary user terminal, and after the signature verification of the secondary signature relation information is successfully verified, the second signature verification succeeds. Including a user terminal identifier of the next signature related information, a public key of the secondary signature related information including the user terminal identifier, a user terminal identifier of the primary signature related information, and a public key of the primary signature related information. A signature generated with the private key of the primary signature relationship information is added to the data, new primary signature relationship information indicating new primary signature relationship information is generated, and information including the new primary signature relationship information is stored in the terminal Sending to the management server;
The encryption public key used for the replication, the signature public key used for the replication, and the primary signature relationship information between the two user terminals that are the primary user terminal or the secondary user terminal that performs the replication Performing a pairing for exchanging a signature generated using a secret key of the second signature-related information or a signature generated using the secret key of the secondary signature related information;
Performing the duplication of the service secret key using the encryption public key and the signature public key exchanged in the pairing;
The terminal management server
The primary signature related information is received and stored from the primary user terminal via the communication network, and when the new primary signature related information is received, the public key of the primary signature related information is used. A secret key synchronization method comprising: storing the new primary signature relationship information instead of the primary signature relationship information after successful verification of the signature of the new primary signature relationship information.
JP2016171925A 2016-09-02 2016-09-02 Secret key synchronization system, user terminal, and secret key synchronization method Active JP6479724B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016171925A JP6479724B2 (en) 2016-09-02 2016-09-02 Secret key synchronization system, user terminal, and secret key synchronization method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016171925A JP6479724B2 (en) 2016-09-02 2016-09-02 Secret key synchronization system, user terminal, and secret key synchronization method

Publications (2)

Publication Number Publication Date
JP2018037988A JP2018037988A (en) 2018-03-08
JP6479724B2 true JP6479724B2 (en) 2019-03-06

Family

ID=61566128

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016171925A Active JP6479724B2 (en) 2016-09-02 2016-09-02 Secret key synchronization system, user terminal, and secret key synchronization method

Country Status (1)

Country Link
JP (1) JP6479724B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11218330B2 (en) * 2019-03-25 2022-01-04 Micron Technology, Inc. Generating an identity for a computing device using a physical unclonable function
CN114513316B (en) * 2020-10-27 2024-01-16 国家电网有限公司大数据中心 Anonymous authentication method based on identity, server and user terminal equipment
CN114513338B (en) * 2022-01-20 2024-05-03 维沃移动通信有限公司 Data synchronization method and electronic equipment

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000261428A (en) * 1999-03-10 2000-09-22 Oki Electric Ind Co Ltd Authentication device in decentralized processing system
JP2004303089A (en) * 2003-03-31 2004-10-28 Ntt Comware Corp License moving system and method for moving license
US9112681B2 (en) * 2007-06-22 2015-08-18 Fujitsu Limited Method and apparatus for secure information transfer to support migration
JP2009175910A (en) * 2008-01-23 2009-08-06 Nippon Telegr & Teleph Corp <Ntt> Right transfer system, right transfer method and right transfer program
JP5266322B2 (en) * 2008-06-23 2013-08-21 パナソニック株式会社 Key moving device
JP5489775B2 (en) * 2010-02-23 2014-05-14 株式会社インテック Secret key sharing system, method, data processing apparatus, management server, and program
EP3032452A1 (en) * 2014-12-11 2016-06-15 Gemalto Sa System for managing access to resources of a first electronic device's application by a second electronic device on a remote server

Also Published As

Publication number Publication date
JP2018037988A (en) 2018-03-08

Similar Documents

Publication Publication Date Title
KR101958909B1 (en) Method of using one device to unlock another device
US20170142082A1 (en) System and method for secure deposit and recovery of secret data
US11063941B2 (en) Authentication system, authentication method, and program
JP4803145B2 (en) Key sharing method and key distribution system
JP2017152880A (en) Authentication system, key processing coordination method, and key processing coordination program
JP6479724B2 (en) Secret key synchronization system, user terminal, and secret key synchronization method
JP6479723B2 (en) Secret key management system and secret key management method
JP6533542B2 (en) Secret key replication system, terminal and secret key replication method
JP2008299457A (en) Authentication system, authentication method, and authentication socket device
KR20210153419A (en) Apparatus and method for authenticating device based on certificate using physical unclonable function
JP2005275467A (en) Backup equipment, equipment to be backed-up, backup mediating device, backup system, backup method, data restoration method, program, and recording medium
KR102288444B1 (en) Firmware updating method, apparatus and program of authentication module
KR102539418B1 (en) Apparatus and method for mutual authentication based on physical unclonable function
JP6524556B2 (en) Authentication key replication system
KR20150003124A (en) Puf-based hardware device for providing one time password, and method for 2-factor authenticating using thereof
US11804969B2 (en) Establishing trust between two devices for secure peer-to-peer communication
JP4680779B2 (en) Communication apparatus and authentication method
JP2016045619A (en) Authentication control system, control server, authentication control method and program
JP5909435B2 (en) Environment authentication system, control target device, connection management device, and program
CN111368308A (en) Image acquisition device, server, control method of encryption system, and control device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180601

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190118

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: 20190206

R150 Certificate of patent or registration of utility model

Ref document number: 6479724

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150