JP5489775B2 - Secret key sharing system, method, data processing apparatus, management server, and program - Google Patents
Secret key sharing system, method, data processing apparatus, management server, and program Download PDFInfo
- Publication number
- JP5489775B2 JP5489775B2 JP2010037403A JP2010037403A JP5489775B2 JP 5489775 B2 JP5489775 B2 JP 5489775B2 JP 2010037403 A JP2010037403 A JP 2010037403A JP 2010037403 A JP2010037403 A JP 2010037403A JP 5489775 B2 JP5489775 B2 JP 5489775B2
- Authority
- JP
- Japan
- Prior art keywords
- user
- public key
- data processing
- key
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Storage Device Security (AREA)
Description
本発明は、複数の情報機器が同一の秘密鍵をネットワーク経由で共有する技術に関する。 The present invention relates to a technique in which a plurality of information devices share the same secret key via a network.
従来のコンピュータ利用は、ユーザである企業や個人等が、コンピュータのハードウェア、ソフトウェア、データ等を、自分自身で保有し、管理していたが、近年普及してきたクラウド・コンピューティングでは、ユーザは、自身の手元の機器が接続したネットワークの向こう側(データセンタ等)からサービスを受け、クラウド・サービス提供事業者に対してサービス利用料金を支払うという形態が多く採られる。 In conventional computer use, companies and individuals, who are users, own and manage computer hardware, software, data, etc. themselves, but in cloud computing that has become popular in recent years, In many cases, a service is received from the other side of the network (such as a data center) to which the device at hand is connected and a service usage fee is paid to the cloud service provider.
クラウド・サービスの利点の一つは、ネットワークへの接続環境さえあれば、USBメモリ等のメモリ媒体を持ち歩かなくても、自分の所有するデータの保存と取り出しができることにある。さらに、ユーザがデータセンタの設備を所有せず、多数のユーザが一つのデータセンタを利用する形態とすることより、各ユーザはデータセンタの持つ高い性能を低コストで利用することができる。 One of the advantages of cloud services is that you can save and retrieve your own data without having to carry a memory medium such as a USB memory as long as you have a network connection environment. Furthermore, since the user does not own the data center equipment and many users use one data center, each user can use the high performance of the data center at low cost.
クラウド・サービスのうち、ユーザのデータをネットワーク上のサーバに保存するサービスを、オンライン・ストレージ・サービスともいうが、このサービスをユーザが安心して利用するためには、ネットワークの向こうにサーバがあり、そこに自分のデータを蓄積して利用するという形態に対して、ユーザが信頼を持てるようにする必要がある。特に、インターネットという公衆回線を利用し、複数の企業でサーバを共有するような場合に、クラウドを運営する事業者が、どのようなセキュリティ対策を講じるかが問題となる。 Among the cloud services, the service that stores user data on a server on the network is also called an online storage service. In order for users to use this service with peace of mind, there is a server across the network, Users need to be able to trust the form of storing and using their own data. In particular, when a public line called the Internet is used and a server is shared by a plurality of companies, what kind of security measures are taken by the operator operating the cloud is a problem.
現在のオンライン・ストレージでは、ネットワーク上を流れるユーザのデータを第三者に盗聴されないように、機器とサーバ間の通信路を、SSL等の技術を使って暗号化した上で、データを送付している。また、ネットワーク上のサーバ側に暗号鍵を持ち、サーバ上のハードディスクにデータを保存するときに暗号化を行い、ハードディスクが盗まれてもユーザのデータが見られないようにしている。 In current online storage, data is sent after the communication path between the device and the server is encrypted using technology such as SSL so that the data of the user flowing on the network is not intercepted by a third party. ing. Also, the server on the network has an encryption key, and encryption is performed when data is stored in the hard disk on the server so that the user's data cannot be seen even if the hard disk is stolen.
しかしながら、上述した現状のオンライン・ストレージ・サービスでは、サーバ側に暗号鍵があるため、この暗号鍵を用いることで、ハードディスクに保存されたユーザのデータを見ることができてしまう。 However, since the current online storage service described above has an encryption key on the server side, the user data stored on the hard disk can be viewed by using this encryption key.
このようにユーザのデータをネットワーク上のサーバに預けた場合に発生する情報漏えいのリスクを低減するためには、ユーザ側で暗号化したデータをサーバへ送信し、サーバ側にはその暗号化を解くための鍵を持たせないことにより、ストレージ・サービスの提供業者がデータを読むことができないようにすることが望まれる。 In order to reduce the risk of information leakage that occurs when user data is deposited on a server on the network in this way, the encrypted data is transmitted to the server on the user side, and the encryption is performed on the server side. It would be desirable to prevent storage service providers from reading data by not having a key to unlock.
そのためには、データの暗号化を解くための鍵(秘密鍵)を、盗まれたり紛失したりしないよう、ユーザ側で保存し、管理する必要がある。単純な解決方法は、秘密鍵を一つの機器内部にのみ保存しそこから一切出力しないことにより、サーバから取得したデータを読むことができる機器を一つだけに限定することであるが、これではクラウド・サービスの利点を生かすことができない。 For this purpose, it is necessary to store and manage a key (secret key) for decrypting data so as not to be stolen or lost. A simple solution is to store the private key only inside one device and not output it at all, thereby limiting the number of devices that can read the data acquired from the server to one. Unable to take advantage of cloud services.
すなわち、クラウド・サービスでは、データがネットワーク上のサーバにあって、どの機器からアクセスしてもそのデータを利用できることが利点の一つであるから、この利点を生かしながら、データを読むことができる機器を限定するためには、データを読むことができる複数の機器を限定し、その複数の機器の間で秘密鍵を共有することが望まれる。 In other words, one of the advantages of cloud services is that the data is on a server on the network and can be used from any device, so you can read the data while taking advantage of this advantage. In order to limit the devices, it is desirable to limit a plurality of devices that can read data and share a secret key among the plurality of devices.
このように複数の機器で秘密鍵を共有するためには、USBメモリ等を使い、人間の手を介して秘密鍵を受け渡しするのが、従来の方法であった。特許文献1には、途中でUSBメモリを紛失しても中の情報が悪用されないよう、受け渡しする情報を渡す先の機器の公開鍵で暗号化してUSBメモリに記憶することが、開示されている。 In order to share a secret key among a plurality of devices in this way, it has been a conventional method to use a USB memory or the like and pass the secret key through a human hand. Patent Document 1 discloses that information to be transferred is encrypted with a public key of a destination device and stored in the USB memory so that the information inside the USB memory is not misused even if the USB memory is lost in the middle. .
しかし、クラウド・サービスの大きな利点は、USBメモリ等のメモリ媒体を持ち歩かなくてよいことにあるのだから、USBメモリで秘密鍵の受け渡しをすることは、ユーザの利便性を著しく損ねることになる。 However, since the great advantage of the cloud service is that it is not necessary to carry a memory medium such as a USB memory, passing the secret key with the USB memory significantly impairs the convenience for the user.
本発明は、上記の事情に鑑み、サーバ側でユーザのデータの暗号化を解くための秘密鍵を持たないオンライン・ストレージ・サービスを実現しつつ、ユーザの複数の機器の間でこの秘密鍵を安全且つ簡単にネットワーク経由で共有することを可能にする技術を、提供することを目的とする。 In view of the above circumstances, the present invention realizes an online storage service that does not have a secret key for decrypting user data on the server side, and this secret key is shared among a plurality of user devices. It is an object of the present invention to provide a technology that enables safe and easy sharing via a network.
本発明に係るデータ処理装置は、少なくとも一つのサーバとネットワーク経由で通信するための通信手段と、暗号化されてサーバに保存されているデータを、前記通信手段を介して受信し、ユーザに固有のユーザ秘密鍵を使用して、前記データを復号するためのデータ処理手段と、自装置に固有の機器秘密鍵及び機器公開鍵を保持する機器鍵保持手段と、前記ユーザ秘密鍵が自装置内に保持されていない場合に、他装置が保持している前記ユーザ秘密鍵を要求する要求メッセージに、自装置の機器公開鍵を含めて送信する要求手段と、前記ユーザ秘密鍵が自装置内に保持されている場合に、他装置による前記ユーザ秘密鍵の要求を受信し、該要求に応答する応答メッセージに、自装置の機器公開鍵を含めて送信する応答手段と、自装置が保持している機器公開鍵の確認用情報を第1の公開鍵情報として提示し、他装置から送信されてきた機器公開鍵の確認用情報を第2の公開鍵情報として提示する提示手段と、前記提示手段により自装置が提示した第1の公開鍵情報と他装置が提示した第2の公開鍵情報が一致し、且つ、自装置が提示した第2の公開鍵情報と他装置が提示した第1の公開鍵情報が一致することを条件として、前記ユーザ秘密鍵の共有を許可する許可手段と、前記ユーザ秘密鍵の共有のために、自装置が保持している前記ユーザ秘密鍵を、他装置から送信されてきた機器公開鍵で暗号化して送信する送信手段と、他装置から送信されてきた前記ユーザ秘密鍵の共有のための情報を、自装置が保持している機器秘密鍵で復号化して得た前記ユーザ秘密鍵を、自装置内に保持するユーザ鍵保持手段とを備える。 A data processing apparatus according to the present invention receives a communication means for communicating with at least one server via a network, and the encrypted data stored in the server via the communication means, and is unique to the user. A data processing means for decrypting the data using a user secret key, a device key holding means for holding a device secret key and a device public key unique to the device, and the user secret key is stored in the device A request means for transmitting the request message for requesting the user private key held by another device, including the device public key of the own device, and the user secret key in the own device. If held, the device receives a request for the user secret key from another device and sends a response message including the device public key of the device in response to the request, and the device holds Presenting means for presenting device public key confirmation information as first public key information, and presenting device public key confirmation information transmitted from another device as second public key information; The first public key information presented by the own device by the means matches the second public key information presented by the other device, and the second public key information presented by the own device matches the first public key information presented by the other device. On the condition that the public key information matches, the permission means for permitting the sharing of the user secret key, and the user secret key held by the own device for sharing the user secret key, The transmission means for encrypting and transmitting with the device public key transmitted from the device and the information for sharing the user secret key transmitted from the other device are decrypted with the device secret key held by the own device. The user secret key obtained in And a user key storage means for lifting.
上記のデータ処理装置において、前記送信手段は、送信する前記ユーザ秘密鍵の共有のための情報に、自装置が保持している機器秘密鍵で署名する手段を含み、前記ユーザ鍵保持手段は、他装置から送信されてきた前記ユーザ秘密鍵の共有のための情報に付加された署名を、該他装置から前記要求メッセージへの応答として送信されてきた該他装置の機器公開鍵に基づいて検証する手段を含むようにしてもよい。 In the data processing apparatus, the transmission means includes means for signing the information for sharing the user private key to be transmitted with a device private key held by the own apparatus, and the user key holding means includes: The signature added to the information for sharing the user private key transmitted from the other device is verified based on the device public key of the other device transmitted as a response to the request message from the other device. It is also possible to include means for
上記のデータ処理装置において、前記許可手段は、自装置が提示した第2の公開鍵情報と他装置が提示した第1の公開鍵情報が一致することを条件として、前記応答手段による応答メッセージの送信を許可し、前記応答手段が送信する応答メッセージに、前記送信手段が前記ユーザ秘密鍵の共有のために送信する情報を含ませ、前記許可手段は、自装置が提示した第1の公開鍵情報と他装置が提示した第2の公開鍵情報が一致することを条件として、前記ユーザ鍵保持手段によるユーザ秘密鍵の保持を許可するものであってもよい。 In the above data processing device, the permission means may provide a response message by the response means on condition that the second public key information presented by the own device matches the first public key information presented by the other device. The transmission is permitted, and the response message transmitted by the response unit includes information transmitted by the transmission unit for sharing the user secret key. The permission unit includes a first public key presented by the own device. The user key holding means may be allowed to hold the user secret key on condition that the information matches the second public key information presented by the other device.
上記のデータ処理装置において、他装置が提示した第1及び第2の公開鍵情報を読み込む読込手段を更に備え、前記許可手段は、自装置が提示した第1及び第2の公開鍵情報と、前記読込手段により読み込まれた第2及び第1の公開鍵情報とを、それぞれ比較する手段を含むようにしてもよい。 In the above data processing device, the data processing device further includes a reading unit that reads the first and second public key information presented by the other device, and the permission unit includes the first and second public key information presented by the device, A means for comparing the second and first public key information read by the reading means may be included.
本発明に係る秘密鍵共有システムは、少なくとも一つのサーバと、ネットワーク経由で前記少なくとも一つのサーバと通信する複数のデータ処理装置とを備え、前記複数のデータ処理装置は、暗号化されてサーバに保存されているデータを受信し、ユーザに固有のユーザ秘密鍵を使用して前記データを復号するためのデータ処理手段を有する第1及び第2のデータ処理装置を含み、前記第1及び第2のデータ処理装置は、それぞれ、自装置に固有の機器秘密鍵及び機器公開鍵を保持する機器鍵保持手段を有し、前記第2のデータ処理装置は、前記ユーザ秘密鍵を保持しており、前記第1のデータ処理装置は、他装置が保持している前記ユーザ秘密鍵を要求する要求メッセージに、自装置の機器公開鍵を含めて送信する要求手段と、前記第1のデータ処理装置が保持している機器公開鍵の確認用情報を第1の公開鍵情報として提示し、前記第2のデータ処理装置から送信されてきた機器公開鍵の確認用情報を第2の公開鍵情報として提示する提示手段と、前記第2のデータ処理装置から送信されてきた前記ユーザ秘密鍵の共有のための情報を、自装置が保持している機器秘密鍵で復号化して得た前記ユーザ秘密鍵を、保持するユーザ鍵保持手段とを備え、前記第2のデータ処理装置は、前記要求メッセージに対する応答メッセージに、自装置の機器公開鍵を含めて送信する応答手段と、前記第2のデータ処理装置が保持している機器公開鍵の確認用情報を第3の公開鍵情報として提示し、前記第1のデータ処理装置から送信されてきた機器公開鍵の確認用情報を第4の公開鍵情報として提示する提示手段と、前記ユーザ秘密鍵の共有のために、自装置が保持している前記ユーザ秘密鍵を、前記第1のデータ処理装置から送信されてきた機器公開鍵で暗号化して送信する送信手段とを備え、前記第1の公開鍵情報と前記第4の公開鍵情報が一致し、且つ、前記第2の公開鍵情報と前記第3の公開鍵情報が一致することを条件として、前記ユーザ秘密鍵の共有を許可する。 The secret key sharing system according to the present invention includes at least one server and a plurality of data processing devices communicating with the at least one server via a network, and the plurality of data processing devices are encrypted and stored in the server. Including first and second data processing devices having data processing means for receiving stored data and decrypting the data using a user private key unique to the user, Each of the data processing devices has device key holding means for holding a device secret key and a device public key unique to the device, and the second data processing device holds the user secret key, The first data processing apparatus includes request means for transmitting the request message for requesting the user private key held by another apparatus, including the device public key of the own apparatus, and the first data processing apparatus. The device public key confirmation information held by the data processing device is presented as first public key information, and the device public key confirmation information transmitted from the second data processing device is displayed as the second public key information. Obtained by decrypting the presenting means for presenting as public key information and the information for sharing the user private key transmitted from the second data processing device with the device private key held by the own device User key holding means for holding the user secret key, wherein the second data processing device transmits a response message including the device public key of its own device in a response message to the request message; The device public key confirmation information held by the second data processing device is presented as third public key information, and the device public key confirmation information transmitted from the first data processing device is the fourth public key information. As public key information In order to share the presenting means to present and the user secret key, the user secret key held by the own device is encrypted and transmitted with the device public key transmitted from the first data processing device. Transmission means, provided that the first public key information and the fourth public key information match, and the second public key information and the third public key information match, Share the user private key.
上記のシステムにおいて、前記第1及び第2のデータ処理装置は、同一ユーザが双方のデータ処理装置の提示手段による公開鍵情報の提示を受けることができる物理的距離、もしくは、一方のデータ処理装置の提示手段により提示された公開鍵情報を他方のデータ処理装置に付属する読込手段が読み込むことのできる物理的距離で、前記ネットワークに接続されたものであることが好ましい。 In the above-described system, the first and second data processing devices are configured such that the same user can receive the public key information presented by the presentation means of both data processing devices, or one of the data processing devices. It is preferable that the public key information presented by the presenting means is connected to the network at a physical distance that can be read by the reading means attached to the other data processing apparatus.
上記のシステムにおいて、前記少なくとも一つのサーバは、管理サーバを含み、この管理サーバが、前記第1及び第2のデータ処理装置からのログインの要求に基づいて認証を行い、認証に失敗した場合にログインを拒否する手段と、前記第1のデータ処理装置がログインに成功したことを条件として、ログインに成功している前記第2のデータ処理装置に対して、前記要求メッセージを転送する手段とを備えるようにしてもよい。 In the above system, the at least one server includes a management server, and the management server performs authentication based on login requests from the first and second data processing devices, and the authentication fails. Means for rejecting login; and means for transferring the request message to the second data processing apparatus that has been successfully logged in on condition that the first data processing apparatus has been successfully logged in. You may make it prepare.
本発明に係る管理サーバは、暗号化されてサーバに保存されているデータを受信し、ユーザに固有のユーザ秘密鍵を使用して前記データを復号するためのデータ処理手段を有する第1及び第2のデータ処理装置に対し、ネットワーク経由で通信するための通信手段と、前記第1及び第2のデータ処理装置からのログインの要求に基づいて認証を行い、認証に失敗した場合にログインを拒否する制御手段と、ログインに成功した前記第1のデータ処理装置から、他装置が保持している前記ユーザ秘密鍵を要求する要求メッセージを受信する受信手段と、ログインに成功しており、前記ユーザ秘密鍵を保持している前記第2のデータ処理装置に対して、前記要求メッセージを転送することにより、前記第1のデータ処理装置との間での前記ユーザ秘密鍵の共有の許否の決定及び共有のための送信を実行可能とする転送手段とを備える。 The management server according to the present invention includes first and second data processing means for receiving encrypted data stored in the server and decrypting the data using a user private key unique to the user. Authentication is performed based on login requests from the first and second data processing devices and communication means for communicating with the second data processing device via the network, and the login is rejected when the authentication fails. Control means for receiving, a receiving means for receiving a request message for requesting the user private key held by another apparatus from the first data processing apparatus that has been successfully logged in, and a user having successfully logged in, The user to / from the first data processing device by transferring the request message to the second data processing device holding a secret key And a transfer means for enabling executing the transmission for determining and sharing permission sharing Mitsukagi.
上記の管理サーバは、ユーザについての認証の成否に基づいて前記ログインの成否を判断するものであり、ログインに成功しているユーザと該ログインの要求を送信してきたデータ処理装置とを対応させて記憶する手段を更に備え、前記第1のデータ処理装置からログインしてきたユーザと対応して記憶されている他のデータ処理装置を検索し、検索されたデータ処理装置を前記第2のデータ処理装置として前記転送を行うものであってもよい。 The management server determines success or failure of the login based on success or failure of authentication for the user, and associates the user who has successfully logged in with the data processing apparatus that has transmitted the login request. Means for searching for another data processing device stored in correspondence with the user who has logged in from the first data processing device, and the searched data processing device is the second data processing device; The transfer may be performed as follows.
上記の管理サーバは、前記ユーザ秘密鍵が共有されたデータ処理装置と該データ処理装置の機器公開鍵とを対応させて記憶する手段を更に備え、前記第2のデータ処理装置は、前記ログインの要求に、自装置が保持している機器秘密鍵で署名する手段を更に備え、前記管理サーバは、前記ログインの要求に付加された署名を、記憶された前記第2のデータ処理装置の機器公開鍵に基づいて検証し、検証に失敗した場合にログインを拒否する手段とを更に備えるようにしてもよい。 The management server further includes means for storing the data processing apparatus in which the user secret key is shared and the device public key of the data processing apparatus in association with each other, wherein the second data processing apparatus The request server further includes means for signing with a device private key held by the device itself, and the management server stores the device information of the second data processing device in which the signature added to the login request is stored. It may be further provided with means for verifying based on the key and rejecting login if the verification fails.
上記のシステムにおいて、前記第1及び第2のデータ処理装置は、ログインが成功すると、前記データ処理手段で扱うデータが保存されているサーバへアクセスするための情報を前記管理サーバから取得可能となるものであってもよい。 In the above system, when the first and second data processing devices have successfully logged in, the first and second data processing devices can acquire information for accessing the server storing the data handled by the data processing means from the management server. It may be a thing.
本発明に係る秘密鍵共有方法は、暗号化されてサーバに保存されているデータをネットワーク経由で受信し、ユーザに固有のユーザ秘密鍵を使用して前記データを復号するためのデータ処理手段を有する第1及び第2のデータ処理装置を含むシステムにおいて、前記第1及び第2のデータ処理装置は、それぞれ、自装置に固有の機器秘密鍵及び機器公開鍵を保持しており、前記第2のデータ処理装置は、前記ユーザ秘密鍵を保持しており、前記第1のデータ処理装置は、他装置が保持している前記ユーザ秘密鍵を要求する要求メッセージに、自装置の機器公開鍵を含めて送信し、前記第2のデータ処理装置は、前記要求メッセージに対する応答メッセージに、自装置の機器公開鍵を含めて送信し、前記第1のデータ処理装置は、自装置が保持している機器公開鍵の確認用情報を第1の公開鍵情報として提示し、前記第2のデータ処理装置から送信されてきた機器公開鍵の確認用情報を第2の公開鍵情報として提示し、前記第2のデータ処理装置は、自装置が保持している機器公開鍵の確認用情報を第3の公開鍵情報として提示し、前記第1のデータ処理装置から送信されてきた機器公開鍵の確認用情報を第4の公開鍵情報として提示し、前記第1の公開鍵情報と前記第4の公開鍵情報が一致し、且つ、前記第2の公開鍵情報と前記第3の公開鍵情報が一致することを条件として、前記ユーザ秘密鍵の共有を許可し、前記第2のデータ処理装置は、前記ユーザ秘密鍵の共有のために、自装置が保持している前記ユーザ秘密鍵を、前記第1のデータ処理装置から送信されてきた機器公開鍵で暗号化して送信し、前記第1のデータ処理装置は、前記第2のデータ処理装置から送信されてきた前記ユーザ秘密鍵の共有のための情報を、自装置が保持している機器秘密鍵で復号化して得た前記ユーザ秘密鍵を、保持する。 The secret key sharing method according to the present invention comprises a data processing means for receiving encrypted data stored on a server via a network and decrypting the data using a user secret key unique to the user. In the system including the first and second data processing devices, the first and second data processing devices respectively hold a device secret key and a device public key unique to the device, and the second The data processing device holds the user secret key, and the first data processing device uses the device public key of its own device in a request message for requesting the user secret key held by another device. The second data processing device transmits the response message for the request message including the device public key of the own device, and the first data processing device is held by the own device. Presenting device public key confirmation information as first public key information, presenting device public key confirmation information transmitted from the second data processing device as second public key information, The second data processing device presents device public key confirmation information held by itself as third public key information, and transmits the device public key transmitted from the first data processing device. Confirmation information is presented as fourth public key information, the first public key information and the fourth public key information match, and the second public key information and the third public key information. And the second data processing device allows the user secret key held by the device to be shared for sharing the user secret key. Device disclosure transmitted from the first data processing device The first data processing apparatus encrypts and transmits the information to share the user private key transmitted from the second data processing apparatus. The user secret key obtained by decrypting with is held.
本発明に係る一つのプログラムは、暗号化されてサーバに保存されているデータをネットワーク経由で受信し、ユーザに固有のユーザ秘密鍵を使用して前記データを復号するためのデータ処理手段を有するコンピュータ装置に、前記ユーザ秘密鍵の共有を可能とさせるためのプログラムであって、自装置に固有の機器秘密鍵及び機器公開鍵を保持させるためのプログラムコードと、前記ユーザ秘密鍵が自装置内に保持されていない場合に、他装置が保持している前記ユーザ秘密鍵を要求する要求メッセージに、自装置の機器公開鍵を含めて送信させるためのプログラムコードと、前記ユーザ秘密鍵が自装置内に保持されている場合に、他装置による前記ユーザ秘密鍵の要求を受信し、該要求に応答する応答メッセージに、自装置の機器公開鍵を含めて送信させるためのプログラムコードと、自装置が保持している機器公開鍵の確認用情報を第1の公開鍵情報として提示させ、他装置から送信されてきた機器公開鍵の確認用情報を第2の公開鍵情報として提示させるためのプログラムコードと、自装置が提示した第1の公開鍵情報と他装置が提示した第2の公開鍵情報が一致し、且つ、自装置が提示した第2の公開鍵情報と他装置が提示した第1の公開鍵情報が一致することを条件として、前記ユーザ秘密鍵の共有を許可するためのプログラムコードと、前記ユーザ秘密鍵の共有のために、自装置が保持している前記ユーザ秘密鍵を、他装置から送信されてきた機器公開鍵で暗号化して送信させるためのプログラムコードと、他装置から送信されてきた前記ユーザ秘密鍵の共有のための情報を、自装置が保持している機器秘密鍵で復号化して得た前記ユーザ秘密鍵を、自装置内に保持させるためのプログラムコードとを備える。 One program according to the present invention includes data processing means for receiving encrypted data stored in a server via a network and decrypting the data using a user secret key unique to the user. A program for allowing a computer device to share the user secret key, the program code for holding the device secret key and the device public key unique to the device, and the user secret key in the device A program code for causing the request message for requesting the user secret key held by another device to include the device public key of the own device and the user secret key If the request is received by the other device, the request for the user private key is received from the other device, and the device public key of the own device is added to the response message in response to the request. Including the program code for transmission including the device public key confirmation information held by the device as the first public key information, and the device public key confirmation information transmitted from the other device. The program code to be presented as the second public key information matches the first public key information presented by the own device and the second public key information presented by the other device, and the first presented by the own device. 2 on the condition that the public key information of 2 matches the first public key information presented by the other device, and for sharing the user secret key, For sharing the user secret key held by the own device by encrypting the user secret key transmitted from the other device with the device public key and transmitting the user secret key transmitted from the other device Information, the user secret key obtained by decoding by the device secret key the device itself holds, and a program code for causing held in the own device.
本発明に係る別のプログラムは、複数のデータ処理装置とネットワーク経由で通信するための通信手段を有するコンピュータ装置を、秘密鍵共有のための管理サーバとして動作させるためのプログラムであって、暗号化されてサーバに保存されているデータを受信し、ユーザに固有のユーザ秘密鍵を使用して前記データを復号するためのデータ処理手段を有する第1及び第2のデータ処理装置から、ログインの要求を受信するためのプログラムコードと、前記ログインの要求に基づいて認証を行い、認証に失敗した場合にログインを拒否するためのプログラムコードと、ログインに成功した前記第1のデータ処理装置から、他装置が保持している前記ユーザ秘密鍵を要求する要求メッセージを受信するためのプログラムコードと、ログインに成功しており、前記ユーザ秘密鍵を保持している前記第2のデータ処理装置に対して、前記要求メッセージを転送することにより、前記第1のデータ処理装置との間での前記ユーザ秘密鍵の共有の許否の決定及び共有のための送信を実行可能とするためのプログラムコードとを備える。 Another program according to the present invention is a program for operating a computer device having communication means for communicating with a plurality of data processing devices via a network as a management server for secret key sharing. Log-in requests from the first and second data processing devices having data processing means for receiving data stored in the server and decrypting the data using a user private key unique to the user , A program code for authenticating based on the log-in request, and a program code for rejecting log-in when the authentication fails, from the first data processing apparatus that has successfully logged in, A program code for receiving a request message for requesting the user private key held by the device, and login The user secret key to and from the first data processing device is transferred by transferring the request message to the second data processing device holding the user secret key. Program code for making it possible to execute permission for sharing and transmission for sharing.
以上の発明は、同一ユーザが使用する複数の機器の間でユーザ秘密鍵を共有することを可能にするものであるが、これら複数の機器の間で、他のユーザのユーザ公開鍵も安全且つ簡単に共有できると便利である。 The above invention makes it possible to share a user secret key between a plurality of devices used by the same user. Among these devices, the user public key of another user is also secure and secure. It is convenient if it can be easily shared.
そのために、上記の管理サーバは、複数のユーザ各々のユーザ公開鍵を含む情報を記憶する手段と、各データ処理装置からの取得要求に応じて、該取得要求により特定されるユーザのユーザ公開鍵を含む情報を、該データ処理装置へ返送する手段とを更に備え、前記各データ処理装置は、データの利用を許可するユーザのユーザ公開鍵を使用して暗号化した該データを、サーバに保存させる手段を有するようにしてもよい。 For this purpose, the management server stores information including user public keys of a plurality of users, and the user public key of the user specified by the acquisition request in response to the acquisition request from each data processing device. Means for returning the information including the data processing device to the data processing device, and each data processing device stores the data encrypted using the user public key of the user who is permitted to use the data in the server. You may make it have a means to do.
加えてもしくは代わりに、前記第1及び第2のデータ処理装置の一方が、自装置のユーザ以外のユーザ公開鍵を取得して、記憶しており、前記第1及び第2のデータ処理装置の他方のユーザは、前記一方のデータ処理装置のユーザと同一である場合に、前記一方のデータ処理装置は、自装置のユーザ以外のユーザ公開鍵を、自装置のユーザのユーザ秘密鍵で署名して、送信する手段を備え、前記管理サーバは、前記一方のデータ処理装置から送信された情報を署名付きで記憶するものであり、前記他方のデータ処理装置は、前記管理サーバに保存された署名付きの情報を取得し、該署名を自装置のユーザのユーザ公開鍵に基づいて検証する手段と、前記検証の成功を条件として、取得した前記情報から前記自装置のユーザ以外のユーザ公開鍵を取り出して、記憶する手段とを備えるようにしてもよい。 In addition or alternatively, one of the first and second data processing devices acquires and stores a user public key other than the user of the device itself, and the first and second data processing devices When the other user is the same as the user of the one data processing apparatus, the one data processing apparatus signs the user public key other than the user of the own apparatus with the user secret key of the user of the own apparatus. And the management server stores information transmitted from the one data processing apparatus with a signature, and the other data processing apparatus stores a signature stored in the management server. Means for acquiring the attached information and verifying the signature based on the user public key of the user of the own device, and a user public key other than the user of the own device from the acquired information on condition that the verification is successful Removed, it may be provided with means for storing.
なお、上述したデータ処理装置、秘密鍵共有システム、管理サーバ、秘密鍵共有方法、プログラム(又はそのプログラムを記録した記録媒体)の発明はいずれも、他のカテゴリの発明としても、勿論成立するものである。 Note that the inventions of the above-described data processing apparatus, secret key sharing system, management server, secret key sharing method, and program (or a recording medium on which the program is recorded) are all valid as inventions of other categories. It is.
また、上述したユーザ秘密鍵を共有するための各発明の構成は、ユーザ公開鍵を共有するための発明に適用することができる。ユーザ公開鍵は、データがサーバに保存される前に当該データを暗号化するのに用いるが、例えば、詐称者のユーザ秘密鍵に対応するユーザ公開鍵を用いて暗号化してしまうと、情報漏えいに通じるため、真正のユーザ公開鍵を安全且つ簡便に取得することが望まれる。 Moreover, the structure of each invention for sharing a user private key mentioned above can be applied to the invention for sharing a user public key. The user public key is used to encrypt the data before it is stored on the server. For example, if the user public key corresponding to the impersonator's user private key is encrypted, information leakage will occur. Therefore, it is desirable to obtain a genuine user public key safely and easily.
ユーザ公開鍵に本発明を適用したデータ処理装置は、少なくとも一つのサーバとネットワーク経由で通信するための通信手段と、ユーザに固有のユーザ公開鍵を使用して、データを暗号化し、暗号化されたデータがサーバに保存されるように、前記通信手段を介して送信するためのデータ処理手段と、自装置に固有の機器秘密鍵及び機器公開鍵を保持する機器鍵保持手段と、前記ユーザ公開鍵が自装置内に保持されていない場合に、他装置が保持している前記ユーザ公開鍵を要求する要求メッセージに、自装置の機器公開鍵を含めて送信する要求手段と、前記ユーザ公開鍵が自装置内に保持されている場合に、他装置による前記ユーザ公開鍵の要求を受信し、該要求に応答する応答メッセージに、自装置の機器公開鍵を含めて送信する応答手段と、自装置が保持している機器公開鍵の確認用情報を第1の公開鍵情報として提示し、他装置から送信されてきた機器公開鍵の確認用情報を第2の公開鍵情報として提示する提示手段と、前記提示手段により自装置が提示した第1の公開鍵情報と他装置が提示した第2の公開鍵情報が一致し、且つ、自装置が提示した第2の公開鍵情報と他装置が提示した第1の公開鍵情報が一致することを条件として、前記ユーザ公開鍵の共有を許可する許可手段と、前記ユーザ公開鍵の共有のために、自装置が保持している前記ユーザ公開鍵を、他装置から送信されてきた機器公開鍵で暗号化して送信する送信手段と、他装置から送信されてきた前記ユーザ公開鍵の共有のための情報を、自装置が保持している機器秘密鍵で復号化して得た前記ユーザ公開鍵を、自装置内に保持するユーザ鍵保持手段とを備えるものとすることができる。 A data processing apparatus to which the present invention is applied to a user public key uses a communication means for communicating with at least one server via a network and a user public key unique to the user to encrypt the data and encrypt the data. Data processing means for transmitting via the communication means, device key holding means for holding a device private key and device public key unique to the device, and the user disclosure Requesting means for transmitting the request message for requesting the user public key held by another device including the device public key of the own device when the key is not held in the own device; and the user public key Is received in the own device, the response method of receiving the user public key request from another device and transmitting the response message including the device public key of the own device in response to the request. The device public key confirmation information held by the device is presented as first public key information, and the device public key confirmation information transmitted from another device is presented as second public key information. Presenting means, and the first public key information presented by the present apparatus by the presenting means matches the second public key information presented by the other apparatus, and the second public key information presented by the own apparatus, On condition that the first public key information presented by the other device matches, permission means for permitting sharing of the user public key, and the own device holds the user public key for sharing The own device holds information for sharing the user public key transmitted from the other device, and transmission means for encrypting and transmitting the user public key with the device public key transmitted from the other device. User public key obtained by decrypting with the device private key The key can be made and a user key holding means for holding in the own device.
本発明においては、ユーザ秘密鍵を共有するための発明として、データ処理装置だけでなく、鍵共有システム、鍵共有方法、管理サーバ、プログラム等の種々のカテゴリの発明が存在するように、ユーザ公開鍵を共有するための発明についても、同様の(ユーザ秘密鍵をユーザ公開鍵に置き換えた)種々のカテゴリの発明が存在する。 In the present invention, as an invention for sharing a user secret key, not only a data processing apparatus but also various categories of inventions such as a key sharing system, a key sharing method, a management server, and a program exist. As for the invention for sharing the key, there are various categories of inventions (in which the user secret key is replaced with the user public key).
以上のとおり、本発明によれば、サーバ側でユーザのデータの暗号化を解くための秘密鍵を持たないオンライン・ストレージ・サービスを実現しつつ、ユーザの複数の機器の間でこの秘密鍵を安全且つ簡単にネットワーク経由で共有することが可能になる。 As described above, according to the present invention, while realizing an online storage service that does not have a secret key for decrypting the user's data on the server side, the secret key is transferred between a plurality of users' devices. Sharing over a network safely and easily becomes possible.
以下、図面を参照して、本発明の一実施形態に係る秘密鍵共有システムを説明する。図1は、本システムを含む全体構成を示す図である。 Hereinafter, a secret key sharing system according to an embodiment of the present invention will be described with reference to the drawings. FIG. 1 is a diagram showing an overall configuration including the present system.
図1の例では、説明のため、ユーザ1が、機器A(101)、機器B(102)、機器C(103)の3つの機器(10*)を使用し、ユーザ2が、機器D(111)、機器E(112)の2つの機器(11*)を使用するものとする。実際のシステムでは、多数のユーザが、それぞれ任意の数の機器を使用できることは勿論である。 In the example of FIG. 1, for the sake of explanation, the user 1 uses three devices (10 *), that is, the device A (101), the device B (102), and the device C (103), and the user 2 uses the device D ( 111) and two devices (11 *) of device E (112). In an actual system, it is a matter of course that a large number of users can use any number of devices.
これらの機器は、ネットワーク200を介して、管理サーバ300及びストレージサーバ400に接続可能である。ストレージサーバ400は、ファイルもしくはメッセージ等、どのような形式のデータを扱うものでも、本実施形態が適用可能である。管理サーバ300及びストレージサーバ400は、いわゆるクラウドを形成するサーバ群であり、大規模なデータセンタであってもよいし、一つのサーバであってもよい。ここでのデータセンタは、単一地点にあってもよいし、複数拠点に分散していてもよい(管理サーバ及び/又はストレージサーバが、分散配置されていてもよい)。管理サーバ300の機能とストレージサーバ400の機能は、物理的に別々のサーバで実現してもよいし、同一のサーバに搭載してもよい。 These devices can be connected to the management server 300 and the storage server 400 via the network 200. The present embodiment can be applied to any storage server 400 that handles data in any format such as a file or a message. The management server 300 and the storage server 400 are a server group forming a so-called cloud, and may be a large-scale data center or a single server. The data center here may be at a single point or may be distributed at a plurality of locations (management servers and / or storage servers may be distributed and arranged). The function of the management server 300 and the function of the storage server 400 may be realized by physically separate servers, or may be mounted on the same server.
ネットワーク200は、パブリッククラウドの場合は典型的にはインターネットであり、プライベートクラウドの場合は企業内ネットワークでもよい。各機器で作成されたデータはストレージサーバ400に保存され、ユーザはサーバ上のデータを読み書きすることになるため、同一ユーザが複数の機器を持ち、ある機器で作成したデータを別の機器で利用することが簡単にできる。機器内にデータを残さないようにすれば、セキュリティ上も利点がある。 The network 200 is typically the Internet in the case of a public cloud, and may be a corporate network in the case of a private cloud. Since the data created by each device is stored in the storage server 400 and the user reads and writes data on the server, the same user has multiple devices, and the data created by one device is used by another device Easy to do. There is an advantage in security if data is not left in the device.
各機器がデータをネットワーク200経由でストレージサーバ400に保存するときには、暗号化したデータをサーバへ向けて送信する。一般的な暗号化では、1つの機器に1つの秘密鍵を持ち、データを暗号化するが、この方法では、機器が増減したときにサーバ上のデータの暗号化を変更しなければならず、機器の増減に対応するのが効率的ではない。つまり、新しく機器Bの使用を開始する場合、既存の機器A用に暗号化してあったデータから、機器B用に暗号化したデータを、改めて作成しなければならない。 When each device stores data in the storage server 400 via the network 200, the encrypted data is transmitted to the server. In general encryption, one device has one secret key and encrypts data. However, in this method, when the number of devices increases or decreases, the encryption of data on the server must be changed. It is not efficient to respond to the increase or decrease of equipment. In other words, when the use of the device B is newly started, the data encrypted for the device B must be newly created from the data encrypted for the existing device A.
そこで、本システムでは、同一ユーザの機器が増減したときのサーバ上での処理を少なくするため、同一ユーザの保持している複数の機器には、同一のユーザ秘密鍵を保持させるようにする。このように複数の機器で1つのユーザ秘密鍵を共有する方法は後述する。 Therefore, in this system, in order to reduce the processing on the server when the number of devices of the same user increases or decreases, a plurality of devices held by the same user hold the same user secret key. A method for sharing one user secret key among a plurality of devices will be described later.
図2には、1人のユーザでデータをサーバに保存する場合の処理の一例を示す。ユーザ1の機器10*は、平文のデータをランダムに生成したセッション鍵を用いて共通鍵暗号により暗号化する。次にセッション鍵を自身(ユーザ1)のユーザ公開鍵で暗号化する。この暗号化データと暗号化されたセッション鍵をセットにして、ストレージサーバ400に送付する。サーバはこの状態で保存する。このデータを復号するためには、ユーザ1のユーザ秘密鍵が必要であるが、サーバはこの鍵を持たないので、復号することができない。よって、機器のユーザが属する組織とは別の組織が運営するクラウドに、安心してデータを預けることが可能になる。 FIG. 2 shows an example of processing when data is stored in the server by one user. The device 10 * of the user 1 encrypts plaintext data by common key encryption using a session key generated at random. Next, the session key is encrypted with the user public key of the user (user 1). The encrypted data and the encrypted session key are sent as a set to the storage server 400. The server saves in this state. In order to decrypt this data, the user private key of user 1 is necessary, but the server does not have this key, so it cannot be decrypted. Therefore, it is possible to deposit data with confidence in a cloud operated by an organization different from the organization to which the device user belongs.
次に復号の方法を説明する。ユーザ1の機器10*(暗号化を行った機器10*と別の機器でも構わない)は、ストレージサーバ400から暗号データと暗号化されたセッション鍵を取得する。機器10*では、暗号化されたセッション鍵を自身(ユーザ1)のユーザ秘密鍵で復号する。ここで得られたセッション鍵を使って暗号データを共通鍵暗号により復号する。これによって平文のデータを取得することができる。 Next, a decoding method will be described. The device 10 * of the user 1 (which may be a device different from the encrypted device 10 *) acquires the encrypted data and the encrypted session key from the storage server 400. The device 10 * decrypts the encrypted session key with its own user secret key (user 1). Using the session key obtained here, the encrypted data is decrypted by the common key encryption. As a result, plaintext data can be acquired.
図2では、ユーザ1の機器10*を例にとって説明したが、ユーザ2の機器11*についても同様にデータの暗号化と復号化ができることは勿論である。なお、図2の例では、あるユーザ(ユーザ1)がサーバに保存したデータを別のユーザ(ユーザ2)が取得しても、復号化に必要なユーザ秘密鍵がないので、読むことはできない。 In FIG. 2, the device 10 * of the user 1 has been described as an example. However, the device 11 * of the user 2 can be similarly encrypted and decrypted. In the example of FIG. 2, even if another user (user 2) obtains data stored in the server by one user (user 1), it cannot be read because there is no user private key necessary for decryption. .
図3には、複数のユーザでデータを共有したい場合の処理の一例を示す。ユーザ1の機器10*は、自身(ユーザ1)のユーザ公開鍵でセッション鍵を暗号化するとともに、共有したい他ユーザ(ユーザ2)のユーザ公開鍵でセッション鍵を暗号化して、両方を暗号データに付けて、ストレージサーバ400に保存する。これにより、図2のように同一ユーザ(ユーザ1)の機器10*がサーバに保存したデータを利用できるだけでなく、異なるユーザ(ユーザ2)の機器11*も同じデータを利用できるようになる。つまり、機器11*は、図3のように暗号化されたセッション鍵を自身(ユーザ2)のユーザ秘密鍵で復号し、そのセッション鍵を用いて暗号データを復号する。 FIG. 3 shows an example of processing when data is to be shared among a plurality of users. The device 10 * of the user 1 encrypts the session key with the user public key of the user 1 (user 1), encrypts the session key with the user public key of the other user (user 2) to be shared, and encrypts both. And stored in the storage server 400. As a result, as shown in FIG. 2, not only the device 10 * of the same user (user 1) can use the data stored in the server, but also the device 11 * of a different user (user 2) can use the same data. That is, the device 11 * decrypts the encrypted session key as shown in FIG. 3 with its own user secret key (user 2), and decrypts the encrypted data using the session key.
以上のように、ユーザ秘密鍵があれば、ストレージサーバに保存されている暗号データを復号できてしまうため、複数の機器で1つのユーザ秘密鍵を共有するに当たっては、ユーザ秘密鍵を盗まれないようにすることが重要である。特に、ユーザ秘密鍵をネットワーク経由で送信して共有する場合、正当な要求元であると詐称する(なりすまし)装置に対してユーザ秘密鍵を送信してしまったり、暗号化して送信したユーザ秘密鍵の復号に用いられる鍵が他人に入手されてしまったりするリスクを排除することが肝要である。 As described above, since the encrypted data stored in the storage server can be decrypted if the user private key is present, the user private key is not stolen when one user private key is shared among a plurality of devices. It is important to do so. In particular, when a user secret key is transmitted via a network and shared, the user secret key transmitted to the device that is spoofed (spoofed) as a legitimate request source or transmitted after being encrypted It is important to eliminate the risk that the key used for decryption will be obtained by others.
本システムにおいては、ユーザ秘密鍵の暗号化には、各機器に固有の機器公開鍵を用い、その復号化には、各機器公開鍵に対応する機器秘密鍵を用いる。機器秘密鍵は、唯一のものであり、その機器の内部で生成されて永久に外部に出力されないようにできるため、ユーザ秘密鍵の復号に用いられる鍵が流出する可能性は最小化される。また、本システムでは、ユーザ秘密鍵を共有する機器間で、なりすましを防止する手順を実行する。さらに、本システムでは、各機器からのログインを管理するサーバを設けて、同一ユーザの機器であると認証された機器のみを、ユーザ秘密鍵を共有する機器として指定するようにする。 In this system, a device public key unique to each device is used for encrypting the user private key, and a device private key corresponding to each device public key is used for the decryption. Since the device secret key is unique and can be generated inside the device and not permanently output to the outside, the possibility that the key used for decrypting the user secret key will be minimized. Further, in this system, a procedure for preventing impersonation is executed between devices sharing a user secret key. Furthermore, in this system, a server that manages login from each device is provided so that only devices that are authenticated as devices of the same user are designated as devices that share the user secret key.
図4には、本システムにおける機器10*、11*の内部構成例を示す。機器は、一般的なクライアントコンピュータ(パソコン、PDA、スマートフォン等)で構成でき、処理部510、記憶部520、入力部530、表示部540、通信部550を備える。 FIG. 4 shows an example of the internal configuration of the devices 10 * and 11 * in this system. The device can be configured by a general client computer (a personal computer, a PDA, a smartphone, or the like), and includes a processing unit 510, a storage unit 520, an input unit 530, a display unit 540, and a communication unit 550.
処理部510は、図2〜3で説明したデータ処理を行うデータ処理部514と、図8〜13で説明する手順を行う鍵交換部512を含む。記憶部520は、この機器の機器秘密鍵を保存する機器秘密鍵保存部522と、この機器の機器公開鍵を保存するとともに図5に示すように他の機器の機器公開鍵を保存可能な機器公開鍵保存部524と、この機器のユーザのユーザ秘密鍵を保存するためのユーザ秘密鍵保存部526と、この機器のユーザのユーザ公開鍵を保存するためのユーザ公開鍵保存部528とを含む。通信部550は、ネットワーク200と接続される。 The processing unit 510 includes a data processing unit 514 that performs the data processing described with reference to FIGS. 2-3 and a key exchange unit 512 that performs the procedures described with reference to FIGS. The storage unit 520 stores a device private key storage unit 522 that stores the device private key of this device, a device that can store the device public key of this device, and can store the device public key of other devices as shown in FIG. A public key storage unit 524; a user private key storage unit 526 for storing the user private key of the user of the device; and a user public key storage unit 528 for storing the user public key of the user of the device. . Communication unit 550 is connected to network 200.
図6には、本システムにおける管理サーバ300の内部構成例を示す。管理サーバは、一般的なサーバコンピュータで構成でき、処理部310、記憶部320、通信部340を備える。 FIG. 6 shows an internal configuration example of the management server 300 in this system. The management server can be configured by a general server computer, and includes a processing unit 310, a storage unit 320, and a communication unit 340.
処理部310は、図8で説明するログイン手順と、図10と図12で説明するメッセージの転送や登録の処理とを行うユーザ管理部312を含む。記憶部320は、図7(a)に示すようなユーザ情報を保存するためのユーザ情報保存部322と、図7(b)に示すようなアクティブユーザ情報を保存するためのアクティブユーザ情報保存部324と、図7(c)に示すような機器情報を保存するための機器情報保存部326とを含む。通信部340は、ネットワーク200と接続される。 The processing unit 310 includes a user management unit 312 that performs the login procedure described in FIG. 8 and the message transfer and registration processing described in FIGS. 10 and 12. The storage unit 320 includes a user information storage unit 322 for storing user information as illustrated in FIG. 7A and an active user information storage unit for storing active user information as illustrated in FIG. 7B. 324 and a device information storage unit 326 for storing device information as shown in FIG. Communication unit 340 is connected to network 200.
ユーザ情報保存部322は、本システムの利用者として登録しているユーザのユーザID及びパスワードを記憶しており、ログイン要求を行ったユーザの認証に用いられる。加えて、そのユーザのユーザ公開鍵を登録できるようになっており、ここにユーザ公開鍵が登録してあるユーザは、既に少なくともどれか一つの機器にユーザ秘密鍵を持っているものと解釈できる。 The user information storage unit 322 stores the user ID and password of a user registered as a user of this system, and is used for authentication of the user who made the login request. In addition, the user public key of the user can be registered, and a user whose user public key is registered can be interpreted as having a user private key in at least one of the devices. .
アクティブユーザ情報保存部324は、ログインに成功してログイン中又はログイン済となっている(ログアウトしていない)ユーザのユーザIDと、そのログインの要求の送信元の機器の機器IDと、そのログインにより確立されているセッションのセッション情報とを記憶する。 The active user information storage unit 324 includes a user ID of a user who has successfully logged in and is logged in or has logged in (not logged out), a device ID of a device that has transmitted the login request, and the login And the session information of the session established by.
ユーザがログアウトすると、そのユーザとそのログアウトの要求元の機器は、アクティブユーザ情報保存部324から情報が消去されるが、機器情報保存部326は、その後もユーザIDと機器IDのセットを記憶している。さらに、機器IDに対応させて、その機器の機器公開鍵を登録できるようになっており、次にログイン要求が送られてきたときに、パスワード認証に加えて、機器秘密鍵による署名の検証もできるようになる。また、機器公開鍵が登録されている機器は、既にユーザ秘密鍵を保持(2台目以降は共有)しているものと解釈できるように、運用することも可能である。 When the user logs out, the information of the user and the requesting device of the logout is deleted from the active user information storage unit 324. However, the device information storage unit 326 stores the set of user ID and device ID thereafter. ing. Furthermore, the device public key of the device can be registered in correspondence with the device ID. When the next login request is sent, the signature verification by the device private key is performed in addition to the password authentication. become able to. In addition, it is possible to operate a device in which a device public key is registered so that it can be interpreted as having already held a user secret key (shared after the second device).
以上に説明した機器及び管理サーバの各部の機能は、汎用コンピュータにソフトウェアプログラムをインストールすることにより実装されてもよいし、機能の一部又は全部を専用ハードウェア化して実装してもよい。 The functions of the devices and the management server described above may be implemented by installing a software program in a general-purpose computer, or some or all of the functions may be implemented as dedicated hardware.
以下では、1人のユーザが複数台の機器を保有している場合に、それらの機器で安全に秘密鍵を共有する方法を、図8〜13を参照して説明する。 In the following, when a single user has a plurality of devices, a method for securely sharing a secret key between the devices will be described with reference to FIGS.
図8は、機器から管理サーバへログインする手順の一例を説明する図である。本例においては、機器の初期起動時には、機器秘密鍵保存部522、機器公開鍵保存部524、ユーザ秘密鍵保存部526、ユーザ公開鍵保存部528には、何も保存されていないものとするが、機器秘密鍵及び機器公開鍵を、機器の出荷時点で作成、保存しておいてもよいことは勿論である。 FIG. 8 is a diagram illustrating an example of a procedure for logging in from the device to the management server. In this example, it is assumed that nothing is stored in the device secret key storage unit 522, the device public key storage unit 524, the user secret key storage unit 526, and the user public key storage unit 528 when the device is initially activated. Of course, the device private key and the device public key may be created and stored at the time of shipment of the device.
本ログイン手順の起動時(800)に、機器は、機器中の機器秘密鍵保存部522に機器秘密鍵が存在するかを確認する(805)。機器秘密鍵が存在する場合には、ログイン処理(820以降)を行う。 At the start of the login procedure (800), the device checks whether the device private key exists in the device private key storage unit 522 in the device (805). If the device private key exists, a login process (820 and later) is performed.
機器秘密鍵が存在しない場合には、機器は、機器IDを生成し(810)、機器秘密鍵及び機器公開鍵を作成し(815)、それぞれ機器秘密鍵保存部522及び機器公開鍵保存部524に保存する。機器IDは、機器ごとに異なるIDをつける。例えば、RFC4122(A Universally Unique Identifier (UUID) URN Namespace)で定義されているUUID等を使うことができる。 If the device private key does not exist, the device generates a device ID (810), creates a device private key and a device public key (815), and stores a device private key storage unit 522 and a device public key storage unit 524, respectively. Save to. A different ID is assigned to each device ID. For example, a UUID defined by RFC4122 (A Universally Unique Identifier (UUID) URN Namespace) can be used.
その後、機器は、ログイン処理を行う(820)。具体的には、機器は、予め登録されている管理サーバのIPアドレスに対して、通信を行えるようにセッションを確立する。管理サーバのIPアドレスが予め登録されていてもよいし、代わりに、FQDN(Fully Qualified Domain Names;ドメインネームサーバの名前)が予め登録されていてもよく、サーバから取得するようにすれば、より汎用的である。セッションは、例えば、TCPを利用するSSL(Secure Socket Layer)やTLS(Transport Layer Security)のように暗号化されたセッションを使ってもよいし、TCPやUDPを利用して、ユーザ秘密鍵を用いて暗号化してもよい。後者の方法は、機器が既に自身のユーザのユーザ秘密鍵を保持しており、管理サーバが既に対応するユーザ公開鍵を登録している場合に採ることができる。 Thereafter, the device performs a login process (820). Specifically, the device establishes a session so that communication can be performed with the IP address of the management server registered in advance. The IP address of the management server may be registered in advance, or instead, FQDN (Fully Qualified Domain Names) may be registered in advance, and if it is obtained from the server, It is general purpose. The session may be an encrypted session such as SSL (Secure Socket Layer) or TLS (Transport Layer Security) using TCP, or a user secret key using TCP or UDP. May be encrypted. The latter method can be adopted when the device already holds the user private key of its own user and the management server has already registered the corresponding user public key.
機器は、上記の確立したセッションを用いて管理サーバに、ユーザIDとパスワードとを含むログイン要求メッセージを送信する。このログイン要求メッセージ又は機器から管理サーバに送信する情報の中に、機器IDを付加情報として含めてもよい。 The device transmits a login request message including a user ID and a password to the management server using the established session. The device ID may be included as additional information in the login request message or information transmitted from the device to the management server.
管理サーバは、ユーザ情報保存部322に保存されているユーザIDとパスワードで認証し、正しいユーザの場合には、アクティブユーザ情報保存部324にそのユーザIDと、機器IDと、セッション情報とを登録する(880)。セッション情報は、上記で確立したセッションに関する情報であり、例えば、[送信元IPアドレス、送信元ポート番号、宛先IPアドレス、宛先ポート番号]である。パスワード認証に失敗した場合は、管理サーバから機器へログイン失敗を伝える(830)。 The management server authenticates the user ID and password stored in the user information storage unit 322, and registers the user ID, device ID, and session information in the active user information storage unit 324 if the user is a correct user. (880). The session information is information related to the session established as described above, and is, for example, [source IP address, source port number, destination IP address, destination port number]. If password authentication fails, the management server notifies the device of login failure (830).
機器から管理サーバに送信する情報として、機器秘密鍵を使ってユーザIDやパスワード等に署名してもよい。この場合には、管理サーバは、機器情報保存部326を機器IDで検索し、対応する機器公開鍵が存在すれば、それを用いて署名を検証することができる(840)。署名の検証に失敗した場合は、管理サーバから機器へログイン失敗を伝え(845)、アクティブユーザ情報の登録(880)へは進まない。 As information to be transmitted from the device to the management server, a user ID or a password may be signed using a device secret key. In this case, the management server searches the device information storage unit 326 by the device ID, and can verify the signature using the device public key if it exists (840). If signature verification fails, the management server notifies the device of login failure (845), and does not proceed to registration of active user information (880).
パスワード認証に成功した後、署名の検証に成功したか、もしくは、機器情報保存部326に対応する機器公開鍵が存在しなかった場合、管理サーバは、ユーザ情報保存部322に、ログイン要求メッセージに含まれるユーザIDのユーザ公開鍵が登録されているかを確認する(850)。ユーザ公開鍵が登録されていない場合には、機器にユーザ公開鍵を要求するメッセージを送信する。 After successful password authentication, if the verification of the signature is successful, or if the device public key corresponding to the device information storage unit 326 does not exist, the management server sends a login request message to the user information storage unit 322. It is confirmed whether the user public key of the included user ID is registered (850). If the user public key is not registered, a message requesting the user public key is transmitted to the device.
ユーザ公開鍵要求メッセージを受信した機器は、ユーザ秘密鍵とユーザ公開鍵を作成して、機器中のユーザ秘密鍵保存部526及びユーザ公開鍵保存部528に保存する(855)。そして、機器は、ユーザ公開鍵をユーザ秘密鍵で署名して、ユーザ公開鍵応答メッセージとして管理サーバに送付する(860)。ここで、このユーザ公開鍵応答メッセージ又は機器から管理サーバに送信する情報の中に、機器公開鍵を付加情報として含めてもよい。 The device that has received the user public key request message creates a user private key and a user public key, and stores them in the user private key storage unit 526 and the user public key storage unit 528 in the device (855). Then, the device signs the user public key with the user private key and sends it to the management server as a user public key response message (860). Here, the device public key may be included as additional information in the user public key response message or information transmitted from the device to the management server.
ユーザ公開鍵応答メッセージを受信した管理サーバは、受信したユーザ公開鍵を用いて受信した署名を検証し、検証に成功すると、受信したユーザ公開鍵をユーザIDと対応させてユーザ情報保存部322に保存する(865)。管理サーバは、さらに、受信した機器公開鍵を機器IDと対応させて機器情報保存部326に保存する(870)。 The management server that has received the user public key response message verifies the received signature by using the received user public key, and if the verification is successful, the received user public key is associated with the user ID in the user information storage unit 322. Save (865). The management server further stores the received device public key in the device information storage unit 326 in association with the device ID (870).
ユーザ公開鍵が既に存在していた場合も、新たに機器に要求して作成させたものを上記のように保存する場合も、管理サーバは、アクティブユーザ情報保存部324に、ユーザID、機器ID、セッション情報を登録して(880)、ログイン成功メッセージを機器に送付する(885)。 Even when the user public key already exists or when a new request is generated from the device and saved as described above, the management server stores the user ID and device ID in the active user information storage unit 324. The session information is registered (880), and a login success message is sent to the device (885).
ログイン成功を通知された機器は、ログイン中(900)となり、その後、図9のように手順を進める。まず、機器のユーザ秘密鍵保存部526に、ユーザ秘密鍵が存在するか否かを確認する(910)。 The device that has been notified of the successful login is logged in (900), and then proceeds as shown in FIG. First, it is confirmed whether or not a user secret key exists in the user secret key storage unit 526 of the device (910).
ユーザ秘密鍵が存在する場合には、ログイン済としてログイン後の処理を行う(940)。ログイン後(ログアウトするまで)の処理として、例えば、図2〜3で説明したデータ処理がある。このとき、機器は、管理サーバから、ストレージサーバにアクセスするための情報(例えば、ストレージサーバが複数あるときに、機器が処理したいデータをどのストレージサーバが保存しているのかを特定する情報等)を取得するようにしてもよい。ログイン済の状態にあれば、ユーザ秘密鍵やユーザ公開鍵を使用する処理を実行することが可能である。 If the user private key exists, it is assumed that the user has logged in and processing after login is performed (940). As processing after login (until logout), for example, there is data processing described with reference to FIGS. At this time, the device has information for accessing the storage server from the management server (for example, information specifying which storage server stores data to be processed by the device when there are a plurality of storage servers). May be obtained. If it is in a logged-in state, it is possible to execute processing using the user private key or user public key.
ユーザ秘密鍵が存在しない場合には、ユーザ秘密鍵交換手順を開始し(920)、ユーザ秘密鍵を持つ機器からユーザ秘密鍵を取得する。この交換手順の詳細は、後述するように、図10の1015〜1070もしくは図12の1215〜1275に示される。 If the user secret key does not exist, the user secret key exchange procedure is started (920), and the user secret key is acquired from the device having the user secret key. The details of this replacement procedure are shown in 1015 to 1070 in FIG. 10 or 1215 to 1275 in FIG. 12, as will be described later.
ユーザ秘密鍵及びユーザ公開鍵を取得すると、機器は、ユーザ秘密鍵保存部526にユーザ秘密鍵を保存し、ユーザ公開鍵保存部528にユーザ公開鍵を保存して(930)、ログイン済となる(940)。 Upon acquiring the user private key and the user public key, the device stores the user private key in the user private key storage unit 526, stores the user public key in the user public key storage unit 528 (930), and is logged in. (940).
図10は、機器Aと機器Bとがユーザ秘密鍵を共有する手順の一例を示す。この例では、予めユーザ秘密鍵を保持している機器において1回の承認を行うことにより、ユーザ秘密鍵の共有が許可される。機器A及び機器Bは、同一ユーザ(ここではユーザ1)の所有物とする。なお、図10において、実線矢印は、機器Aと管理サーバとの間のメッセージ交換を表し、点線矢印は、機器Bと管理サーバとの間のメッセージ交換を表す。 FIG. 10 shows an example of a procedure in which the device A and the device B share the user secret key. In this example, sharing of the user secret key is permitted by performing one-time approval in a device that holds the user secret key in advance. Device A and device B are the property of the same user (here, user 1). In FIG. 10, a solid line arrow indicates message exchange between the device A and the management server, and a dotted line arrow indicates message exchange between the device B and the management server.
図10の例では、機器Bは、予めユーザ1の秘密鍵を持っているが、機器Aは、そうではない。そこで、機器Bの保持しているユーザ1の秘密鍵を、機器Aにも安全且つ確実に登録する手順(機器Aについて初期登録を行う手順)を実行する。これは、機器Aが、最初に、ログイン済としてストレージサーバを利用できるようになるまでに実行される手順(図9の920、930)であり、次回以降は、機器Aも、既にユーザ1の秘密鍵を保持しているため、機器Bと同様にログイン中(900)から直接ログイン済(940)の状態に移行することができる。 In the example of FIG. 10, the device B has the secret key of the user 1 in advance, but the device A is not. Therefore, a procedure for registering the secret key of the user 1 held by the device B in the device A safely and reliably (a procedure for performing initial registration for the device A) is executed. This is a procedure (920 and 930 in FIG. 9) that is executed until the device A is first logged in and can use the storage server. From the next time, the device A is already assigned to the user 1 as well. Since the private key is held, as in the case of the device B, it is possible to shift from being logged in (900) to the state of being logged in directly (940).
まず、機器Bは、管理サーバに対し、図8のログイン手順を行って、ユーザ1としてログインする(1005)。機器Bは、今回のログイン手順もしくは前回以前のログイン手順において、ユーザ秘密鍵及びユーザ公開鍵を作成して保存しており(855)、ユーザ1のユーザ公開鍵が管理サーバのユーザ情報保存部322に保存され(865)、機器Bの機器公開鍵が管理サーバの機器情報保存部326に保存されている(870)ものとする。 First, the device B performs the login procedure of FIG. 8 to the management server and logs in as the user 1 (1005). The device B creates and stores the user private key and the user public key in the current login procedure or the previous login procedure (855), and the user public key of the user 1 is the user information storage unit 322 of the management server. (865), and the device public key of device B is stored in the device information storage unit 326 of the management server (870).
勿論、それよりも前に、ユーザ1の機器Cが、ログイン手順においてユーザ秘密鍵及びユーザ公開鍵を作成して保存したものを、これから説明する機器A−B間での手順と同様の手順を機器B−C間で行うことにより、機器Bが共有した結果として、機器Bがユーザ秘密鍵及びユーザ公開鍵を保持しているのでも構わない。 Of course, before that, the device C of the user 1 creates and stores the user private key and the user public key in the login procedure, and performs a procedure similar to the procedure between the devices AB described below. As a result of sharing between the devices B and C, the device B may hold the user secret key and the user public key as a result of sharing.
いずれにしても、機器Bは、今回のログイン手順で、アクティブユーザとしてその情報がアクティブユーザ情報保存部324に保存され(880)、ログイン中(900)となり、機器B内にユーザ秘密鍵が存在する(910)ので、ログイン済(940)となる。 In any case, the device B stores the information as an active user in the active user information storage unit 324 in this login procedure (880), becomes logged in (900), and a user secret key exists in the device B. (910), it is already logged in (940).
次に、機器Aも、管理サーバに対し、図8のログイン手順を行って、ユーザ1としてログインする(1010)。機器Aは、ユーザ1のユーザ公開鍵が既に管理サーバのユーザ情報保存部322に登録されているので、機器Aの機器公開鍵が管理サーバの機器情報保存部326に登録されることはなく(850から直接880へ移行)、アクティブユーザとして機器Aの情報がアクティブユーザ情報保存部324に保存される。 Next, the device A performs the login procedure of FIG. 8 to the management server and logs in as the user 1 (1010). In the device A, the user public key of the user 1 is already registered in the user information storage unit 322 of the management server, so that the device public key of the device A is not registered in the device information storage unit 326 of the management server ( From 850 to 880, the information on the device A as an active user is stored in the active user information storage unit 324.
このようにログイン中(900)となった機器Aは、機器A内にユーザ秘密鍵が存在しない(910)ので、以下のように、ユーザ秘密鍵交換手順を開始することになる(920)。 The device A that has been logged in (900) does not have a user secret key in the device A (910), and thus starts a user secret key exchange procedure as follows (920).
なお、ここでは、機器B、機器Aの順番で、ログインする例を説明したが、逆に、ユーザ秘密鍵を持っていない機器Aが先にログインし、ユーザ秘密鍵を持っている機器Bが後からログイン(機器Bのログインは、2回目以降のログインである)しても、その結果としての状態は同様になり、図10のそれ以降の手順も同様に実行できる。後述するように、ユーザ1は、機器Aと機器Bの両方を、物理的に手元に置いて、ユーザ秘密鍵の共有を行わせることができるが、その際、どちらの機器を先にログインさせても構わないということである。機器Aと機器Bは、物理的には近くに置かれる場合でも、その間の情報(ユーザ秘密鍵を含む)の送受信は、ネットワーク経由で行われる。 In addition, although the example which logs in in order of the apparatus B and the apparatus A was demonstrated here, conversely, the apparatus A which does not have a user private key logs in first, and the apparatus B which has a user private key Even if the user logs in later (the login of the device B is the second and subsequent logins), the resulting state is the same, and the subsequent steps in FIG. 10 can be executed in the same manner. As will be described later, the user 1 can physically place both the device A and the device B at hand and share the user secret key. It does not matter. Even when the devices A and B are physically placed close to each other, information (including the user secret key) between them is transmitted and received via the network.
図10に示すように、機器Aがユーザ秘密鍵を持っていない場合には、管理サーバに対して、ユーザ秘密鍵取得要求メッセージを送出する(1015)。このユーザ秘密鍵取得要求メッセージに、機器Aの機器公開鍵を含ませる。 As shown in FIG. 10, when the device A does not have a user secret key, a user secret key acquisition request message is sent to the management server (1015). The device public key of device A is included in this user private key acquisition request message.
管理サーバは、アクティブユーザ情報(図7(b))を参照し、同一ユーザIDでログインしている全ての機器(ここでは、機器B)に対して、セッション情報を参照して、機器Aから受信したユーザ秘密鍵取得要求メッセージを転送する(1025)。 The management server refers to the active user information (FIG. 7 (b)), refers to the session information for all devices logged in with the same user ID (here, device B), and from the device A, The received user private key acquisition request message is transferred (1025).
なお、アクティブユーザ情報に加えて、機器情報(図7(c))を参照し、同一ユーザIDでログインしている全ての機器のうち、機器公開鍵が管理サーバに登録されている機器を選択して、選択された機器(ユーザ秘密鍵を既に保持している機器と推定される)に対して、ユーザ秘密鍵取得要求メッセージを転送するようにしてもよい。その後、ユーザ秘密鍵取得要求メッセージに含まれていた機器Aの機器公開鍵を、管理サーバの機器情報保存部326に保存する(1020)。但し、下記の手順における承認(1050)がなされなかった場合には、ユーザ秘密鍵は機器Aに共有されないので、管理サーバに保存した機器Aの機器公開鍵を削除するようにしてもよい。 In addition to active user information, refer to device information (FIG. 7C) and select a device whose device public key is registered in the management server from all devices logged in with the same user ID. Then, the user secret key acquisition request message may be transferred to the selected device (it is assumed that the device already holds the user secret key). Thereafter, the device public key of the device A included in the user private key acquisition request message is stored in the device information storage unit 326 of the management server (1020). However, if the approval (1050) in the following procedure is not made, the user private key is not shared with the device A, so the device public key of the device A stored in the management server may be deleted.
ユーザ秘密鍵取得要求メッセージを受信した機器Bは、ユーザ秘密鍵交換手順を実行してよい状況にある場合(機器Bを手元に置いているユーザ1が指示を入力してもよいし、機器Bが予め設定されたとおりに判断してもよい)には、ユーザ秘密鍵取得応答メッセージを管理サーバへ返送する(1030)。ユーザ秘密鍵取得応答メッセージには、機器Bの機器公開鍵と、送信元機器IDとして機器Bの機器IDと、宛先機器IDとして機器Aの機器IDも含まれる。 The device B that has received the user secret key acquisition request message is in a state where it can execute the user secret key exchange procedure (the user 1 who has the device B at hand may input an instruction, or the device B May be determined as set in advance), a user private key acquisition response message is returned to the management server (1030). The user private key acquisition response message includes the device public key of device B, the device ID of device B as the transmission source device ID, and the device ID of device A as the destination device ID.
ユーザ秘密鍵取得応答メッセージを受信した管理サーバは、ユーザ秘密鍵取得応答メッセージ中の宛先機器IDと一致する機器IDのエントリを、アクティブユーザ情報保存部324から検索して、そのエントリのセッション情報を利用して、機器Aにユーザ秘密鍵取得応答メッセージを転送する(1035)。 The management server that has received the user secret key acquisition response message searches the active user information storage unit 324 for an entry of the device ID that matches the destination device ID in the user secret key acquisition response message, and obtains session information of the entry. The user private key acquisition response message is transferred to the device A (1035).
この例では、取得応答メッセージが、機器Bから管理サーバを経由して機器Aへ返っているが、機器Bから直接機器Aへ送信してもよい。直接要求元へ返す場合には、機器Bへ送信されるユーザ秘密鍵取得要求メッセージの中に、機器AのIPアドレスを含めることにより、機器Bがどこへ取得応答メッセージを送信すればよいか分かるようにする。 In this example, the acquisition response message is returned from the device B to the device A via the management server, but may be transmitted directly from the device B to the device A. When returning directly to the request source, by including the IP address of the device A in the user private key acquisition request message transmitted to the device B, it is possible to know where the device B should transmit the acquisition response message. Like that.
この後、機器Bは、機器Aの公開鍵情報(ユーザ秘密鍵取得要求メッセージに含まれていた機器公開鍵)と機器Bの公開鍵情報(機器公開鍵保存部524に記憶された自身の機器公開鍵)とを表示する(1045)。また、機器Aは、機器Aの公開鍵情報(機器公開鍵保存部524に記憶された自身の機器公開鍵)と機器Bの公開鍵情報(ユーザ秘密鍵取得応答メッセージに含まれていた機器公開鍵)とを表示する(1040)。 Thereafter, the device B has the public key information of the device A (the device public key included in the user private key acquisition request message) and the public key information of the device B (the own device stored in the device public key storage unit 524). Public key) is displayed (1045). In addition, the device A has the public key information of the device A (its own device public key stored in the device public key storage unit 524) and the public key information of the device B (the device public key included in the user private key acquisition response message). Key) is displayed (1040).
機器の公開鍵情報とは、機器公開鍵の確認用情報であり、機器公開鍵のデータそのものでもよいし、機器公開鍵をハッシュ関数にかけたデータとしてもよいし、機器公開鍵にその他の変換を施したデータとしてもよい。公開鍵情報の表示は、機器公開鍵のフィンガープリントを表示してもよいし、人間が確認できる数値情報として表示してもよい。この表示は、2つの機器で表示されたものが互いに一致しているかを人間が確認できるようにするため、確認者が認識しやすい画像や動画や文字列や音声等の形式にして行ってもよい。より具体的には、2次元バーコードのような表示にしてもよい。 The device public key information is information for confirming the device public key, and may be the device public key data itself, data obtained by subjecting the device public key to a hash function, or other conversions to the device public key. The applied data may be used. The public key information may be displayed as a fingerprint of the device public key or as numerical information that can be confirmed by a human. This display can be performed in the form of images, videos, character strings, voices, etc. that are easy for the confirmer to recognize so that humans can check whether the two devices are consistent with each other. Good. More specifically, a display such as a two-dimensional barcode may be used.
また、求められるセキュリティレベルに従い、簡易設定と上級設定の2つ以上のモードを設けて、上級設定ではフィンガープリントをフルに文字列等に変換して表示するのに対し、簡易設定では短い文字列等に変換して表示するようにしてもよい。 In addition, according to the required security level, two or more modes of simple setting and advanced setting are provided. In the advanced setting, the fingerprint is fully converted into a character string and displayed, while in the simple setting, a short character string is displayed. Or the like may be displayed.
機器Aと機器Bを手元に置いている操作者(ユーザ1)は、これらの表示された情報が同一であるか否かを確認し、同一である場合には、機器Bに承認の指示を入力する(1050)。同一でない場合には、機器Aと機器Bの間のネットワーク上にいる悪意を持つ機器がこの後送信されるユーザ秘密鍵を取得したり、詐称したりする危険性があるため、秘密鍵交換手順を中止する。この確認は、機器Aと機器Bが物理的に近くに置かれれば、簡単に行うことができるが、そうでなくても、ユーザが双方の機器の表示を確認できるように置かれればよく、後述する読込器が相手方の機器の表示を読み込めるように置かれるのでもよい。 The operator (user 1) who has the device A and the device B at hand checks whether or not the displayed information is the same, and if so, instructs the device B to approve. Input (1050). If they are not the same, there is a risk that a malicious device on the network between device A and device B will acquire or misrepresent a user private key to be transmitted thereafter. Cancel. This check can be easily performed if the device A and the device B are physically located close to each other, but it is only necessary that the user can check the display of both devices. A reader which will be described later may be placed so as to read the display of the counterpart device.
機器Aは、ユーザ秘密鍵取得応答メッセージを受信すると、機器公開鍵保存部524に機器Bの機器ID及び機器公開鍵を保存する。機器Bは、ユーザ秘密鍵取得要求メッセージを受信すると、機器公開鍵保存部524に機器Aの機器ID及び機器公開鍵を保存する。しかし、上記のように機器Bに承認の指示が入力されない場合には、これらの機器IDID及び機器公開鍵を削除する。 When the device A receives the user private key acquisition response message, the device A stores the device ID and device public key of the device B in the device public key storage unit 524. When the device B receives the user private key acquisition request message, the device B stores the device ID and the device public key of the device A in the device public key storage unit 524. However, if the approval instruction is not input to the device B as described above, the device ID ID and the device public key are deleted.
公開鍵情報の確認表示(1040、1045)及び承認(1050)は、図11(a)に例示するように、機器Bのカメラで機器Aに表示されている公開鍵情報の2次元バーコードを読み取る(1047)ことにより、行ってもよい。この場合、機器Aは、カメラが読み取れるように公開鍵情報を表示するが、機器Bは、機器Aから読み取られた2次元バーコードと、機器B内にある公開鍵情報の2次元バーコードとを、人間の目視によらずに、機器B内で比較することができるため、機器Bは、比較結果(一致/不一致)だけを表示して、操作者に承認/拒否を促す。あるいは、一致する場合は承認する(1050)ところまで自動化してもよい。 The confirmation display (1040, 1045) and approval (1050) of the public key information includes the two-dimensional barcode of the public key information displayed on the device A by the camera of the device B, as illustrated in FIG. It may be performed by reading (1047). In this case, the device A displays the public key information so that the camera can read it, but the device B displays the two-dimensional barcode read from the device A and the two-dimensional barcode of the public key information in the device B. Can be compared within the device B without the human eye, the device B displays only the comparison result (match / mismatch) and prompts the operator to approve / deny. Alternatively, if they match, the process may be automated up to approval (1050).
機器Aにカメラが付いている場合には、図11(b)に例示するように、機器Aにおいて、機器Bに表示されている公開鍵情報の2次元バーコードを読み取り(1042)、その読み取り結果と、機器Aの持っている公開鍵情報とが同じであるか否かを表示する(1048)。同じであるという表示を見た操作者は、機器Bに、承認の指示を入力する。あるいは、同じであるという表示をする代わりに、同じであるという通知を、赤外線通信等の無線通信によって機器Aから機器Bへ送り、機器Bにおいて表示及び承認の指示入力を行うようにしてもよいし、通知を受けた機器Bでの承認を自動化してもよい。 When the device A has a camera, as illustrated in FIG. 11B, the device A reads the two-dimensional barcode of the public key information displayed on the device B (1042), and reads the reading. Whether the result and the public key information possessed by device A are the same is displayed (1048). The operator who sees the same indication inputs an approval instruction to the device B. Alternatively, instead of displaying the same, a notification that they are the same may be sent from the device A to the device B by wireless communication such as infrared communication, and the device B may input a display and approval instruction. Then, the approval in the device B that has received the notification may be automated.
その後、機器Bは、ユーザ秘密鍵を送信する(1060)。このユーザ秘密鍵送信メッセージには、宛先機器IDとして、機器Aの機器IDが記入されている。また、送信元機器IDとして、機器Bの機器IDが記入され、この送信元機器IDとユーザ1のユーザ秘密鍵及びユーザ公開鍵とが、機器Bの機器秘密鍵で署名され、署名されたものが機器Aの機器公開鍵で暗号化されている。暗号化と署名の順番を逆にして、暗号化してから署名したものとしてもよい。このように作成されたユーザ秘密鍵送信メッセージが、機器Bから管理サーバへ送信される。 Thereafter, the device B transmits the user secret key (1060). In this user secret key transmission message, the device ID of device A is entered as the destination device ID. In addition, the device ID of the device B is entered as the transmission source device ID, and the transmission source device ID, the user private key of the user 1 and the user public key are signed with the device private key of the device B, and signed. Is encrypted with the device public key of device A. The order of encryption and signature may be reversed, and the signature may be obtained after encryption. The user secret key transmission message created in this way is transmitted from the device B to the management server.
ユーザ秘密鍵送信メッセージを受信した管理サーバは、ユーザ秘密鍵送信メッセージ中の宛先機器IDと一致する機器IDのエントリを、アクティブユーザ情報保存部324から検索して、そのエントリのセッション情報を利用して、機器Aにユーザ秘密鍵送信メッセージを転送する(1065)。 The management server that has received the user private key transmission message searches the active user information storage unit 324 for an entry of the device ID that matches the destination device ID in the user private key transmission message, and uses the session information of that entry. Then, the user private key transmission message is transferred to the device A (1065).
この例では、ユーザ秘密鍵送信メッセージが、機器Bから管理サーバを経由して機器Aへ送信されているが、機器Bから直接機器Aへ送信してもよい。機器Bがどこへユーザ秘密鍵送信メッセージを送信すればよいかは、機器Bへ送信されるユーザ秘密鍵取得要求メッセージの中に、機器AのIPアドレスを含めることで、教えることができる。 In this example, the user secret key transmission message is transmitted from the device B to the device A via the management server, but may be transmitted directly from the device B to the device A. Where the device B should transmit the user secret key transmission message can be taught by including the IP address of the device A in the user secret key acquisition request message transmitted to the device B.
ユーザ秘密鍵送信メッセージを受信した機器Aは、機器Aの機器秘密鍵で復号する。さらに機器Aは、復号結果に含まれる送信元機器IDと一致する機器IDのエントリを、機器公開鍵保存部524から検索し、そのエントリの機器公開鍵を用いて、署名を検証する。署名が確認されたら、復号結果に含まれるユーザ秘密鍵及びユーザ公開鍵を、それぞれユーザ秘密鍵保存部526及びユーザ公開鍵保存部528に保存する(1070)。 The device A that has received the user private key transmission message decrypts it with the device private key of the device A. Further, the device A searches the device public key storage unit 524 for the device ID entry that matches the transmission source device ID included in the decryption result, and verifies the signature using the device public key of the entry. If the signature is confirmed, the user private key and the user public key included in the decryption result are stored in the user private key storage unit 526 and the user public key storage unit 528, respectively (1070).
図12は、ユーザ1の機器Aと機器Bとがユーザ秘密鍵を共有する手順の別の例を示す。この例では、予めユーザ秘密鍵を保持している機器とユーザ秘密鍵を送るように要求する機器との双方において承認を行うこと(合計2回の承認)により、ユーザ秘密鍵の共有が許可される。以下には、図10と同様の部分は説明を省略し、図12に特有の部分を中心に説明する。 FIG. 12 shows another example of a procedure for sharing the user secret key between the device A and the device B of the user 1. In this example, sharing of the user private key is permitted by performing approval (both approvals in total) by both the device that holds the user private key in advance and the device that requests to send the user private key. The In the following, description of parts similar to those in FIG. 10 will be omitted, and description will be made centering on parts unique to FIG.
まず、ユーザ1が、管理サーバに対し、一方で機器Bからログイン手順を行い(1205)、他方で機器Aからログイン手順を行い(1210)、両方の機器がログインする。 First, the user 1 logs in to the management server from the device B on the one hand (1205), and performs the login procedure from the device A on the other hand (1210), and both devices log in.
機器Aは、ユーザ秘密鍵を持っていない場合には、管理サーバに対して、ユーザ秘密鍵取得要求メッセージを送出する(1215)。このユーザ秘密鍵取得要求メッセージには、機器Aの機器公開鍵も含ませる。 If the device A does not have the user secret key, the device A sends a user secret key acquisition request message to the management server (1215). This user private key acquisition request message also includes the device public key of device A.
管理サーバは、アクティブユーザ情報を参照し、同一ユーザIDでログインしている全ての機器、あるいはその中から選択された機器(ここでは、機器B)に対して、セッション情報を参照して、機器Aから受信したユーザ秘密鍵取得要求メッセージを転送する(1225)。 The management server refers to the active user information, refers to the session information for all devices logged in with the same user ID, or a device selected from the devices (here, device B), and The user private key acquisition request message received from A is transferred (1225).
その後、機器Aは、機器Aの公開鍵情報(機器公開鍵保存部524に記憶された自身の機器公開鍵)の確認表示を行う(1230)。また、機器Bも、機器Aの公開鍵情報(ユーザ秘密鍵取得要求メッセージに含まれていた機器公開鍵)の確認表示を行う(1235)。公開鍵確認表示には、承認1回の場合と同様に、様々な表示方法があり得る。 After that, the device A performs confirmation display of the public key information of the device A (its own device public key stored in the device public key storage unit 524) (1230). The device B also performs confirmation display of the public key information of the device A (the device public key included in the user private key acquisition request message) (1235). In the public key confirmation display, there can be various display methods as in the case of one approval.
機器Aに表示された機器Aの公開鍵情報と、機器Bに表示された機器Aの公開鍵情報とを比較して、同一ならば、機器Bで第1の承認を行う(1240)。承認の方法は、承認1回の場合と同様に、2次元バーコードを使った承認等、様々な承認方法があり得る。機器Bに2次元バーコードを読み込むカメラが付いている場合の一例を、図13に示すが、機器Aにカメラがある場合も、図13を変形して実施できることは、当業者に自明である。 The public key information of the device A displayed on the device A is compared with the public key information of the device A displayed on the device B. If they are the same, the device B performs the first approval (1240). The approval method may be various approval methods such as approval using a two-dimensional barcode, as in the case of one approval. FIG. 13 shows an example of a case where the device B has a camera for reading a two-dimensional barcode. However, it is obvious to those skilled in the art that the device A can be modified and implemented even when the device A has a camera. .
第1の承認後、機器Bは、機器公開鍵保存部524に機器Aの機器ID及び機器公開鍵を保存し、ユーザ秘密鍵を送信する(1250)。このユーザ秘密鍵送信メッセージには、宛先機器IDとして、機器Aの機器IDが記入されている。また、送信元機器IDとして、機器Bの機器IDが記入され、この送信元機器IDと機器Bの機器公開鍵とユーザ1のユーザ秘密鍵及びユーザ公開鍵とが、機器Bの機器秘密鍵で署名され、署名されたものが機器Aの機器公開鍵で暗号化されている。暗号化と署名の順番を逆にして、暗号化してから署名したものとしてもよい。このように作成されたユーザ秘密鍵送信メッセージが、機器Bから管理サーバへ送信される。 After the first approval, the device B stores the device ID and the device public key of the device A in the device public key storage unit 524, and transmits the user secret key (1250). In this user secret key transmission message, the device ID of device A is entered as the destination device ID. Further, the device ID of the device B is entered as the transmission source device ID, and the transmission source device ID, the device public key of the device B, the user secret key of the user 1 and the user public key are the device secret key of the device B. The signed one is encrypted with the device public key of device A. The order of encryption and signature may be reversed, and the signature may be obtained after encryption. The user secret key transmission message created in this way is transmitted from the device B to the management server.
ユーザ秘密鍵送信メッセージを受信した管理サーバは、ユーザ秘密鍵送信メッセージ中の宛先機器IDに従い、アクティブユーザ情報保存部324を検索して、機器Aにユーザ秘密鍵送信メッセージを転送する(1255)。管理サーバ経由で転送するのでなく、機器Bから機器Aへ直接送信してもよいことは、承認1回の場合と同様である。 The management server that has received the user private key transmission message searches the active user information storage unit 324 in accordance with the destination device ID in the user private key transmission message, and transfers the user private key transmission message to device A (1255). It is the same as in the case of one approval that the data may be transmitted directly from the device B to the device A instead of being transferred via the management server.
並行して、機器Bは、機器Bの公開鍵情報(機器公開鍵保存部524に記憶された自身の機器公開鍵)の確認表示を行う(1265)。 In parallel, the device B performs confirmation display of the public key information of the device B (its own device public key stored in the device public key storage unit 524) (1265).
機器Aは、ユーザ秘密鍵送信メッセージを受信すると、このメッセージに含まれる情報を機器Aの機器秘密鍵で復号し、復号結果に含まれる機器Bの機器公開鍵を用いて、署名を検証する。署名が確認されると、機器Bの公開鍵情報(ユーザ秘密鍵送信メッセージに含まれていた機器公開鍵)の確認表示を行う(1260)。 When the device A receives the user private key transmission message, the device A decrypts the information included in the message with the device private key of the device A, and verifies the signature using the device public key of the device B included in the decryption result. When the signature is confirmed, confirmation display of the public key information of the device B (device public key included in the user private key transmission message) is performed (1260).
機器Aは、機器Bに表示されている機器Bの公開鍵情報と、機器Aに表示された機器Bの公開鍵情報とを比較して、同一ならば、第2の承認を行う(1270)。図13の2次元バーコード読込器を利用する例には、第1の承認に加えて第2の承認を行う方法が示されている。 The device A compares the public key information of the device B displayed on the device B with the public key information of the device B displayed on the device A, and if they are the same, performs the second approval (1270). . The example using the two-dimensional barcode reader of FIG. 13 shows a method of performing the second approval in addition to the first approval.
第2の承認後、機器Aは、機器公開鍵保存部524に機器Bの機器ID及び機器公開鍵を保存し、復号結果に含まれるユーザ秘密鍵及びユーザ公開鍵を、それぞれユーザ秘密鍵保存部526及びユーザ公開鍵保存部528に保存する(1275)。 After the second approval, the device A stores the device ID and the device public key of the device B in the device public key storage unit 524, and the user secret key and the user public key included in the decryption result are stored in the user secret key storage unit. It is stored in 526 and the user public key storage unit 528 (1275).
以上の手順によって、機器Bから機器Aへ、ユーザ秘密鍵及びユーザ公開鍵を安全に渡すことができる。 By the above procedure, the user secret key and the user public key can be safely passed from the device B to the device A.
以下には、図14〜18を参照して、あるユーザが、他のユーザのユーザ公開鍵を、自身の使用する機器のうちの1つに取り込み、その取りこんだユーザ公開鍵を、自身(同一ユーザ)の他の全ての機器に複製する手順を説明する。 In the following, with reference to FIGS. 14 to 18, a certain user takes the user public key of another user into one of the devices used by the user, and the acquired user public key is himself (identical). The procedure for copying to all other devices will be described.
図14に示す機器の内部構成例は、図4と共通するが、鍵交換部512が、図18で説明する手順を行う点と、ユーザ公開鍵保存部529が、図15に示すように、この機器のユーザのユーザ公開鍵だけでなく、他のユーザのユーザ公開鍵をも保存するためのものである点が異なる。 The example of the internal configuration of the device shown in FIG. 14 is the same as that in FIG. 4. However, the key exchange unit 512 performs the procedure described in FIG. 18, and the user public key storage unit 529 is configured as shown in FIG. The difference is that not only the user public key of the user of this device but also the user public key of another user is stored.
また、図16に示す管理サーバの内部構成例は、図6と共通するが、ユーザ管理部312が、図18で説明する手順を行う点と、ユーザ公開鍵保存部328が、新たに設けられている点が異なる。 Also, the internal configuration example of the management server shown in FIG. 16 is the same as that in FIG. 6, but the user management unit 312 performs the procedure described in FIG. 18 and a user public key storage unit 328 is newly provided. Is different.
管理サーバ300のユーザ公開鍵保存部328は、図17に示されるような情報を記憶する。図17の例では、ユーザ1が、他ユーザであるユーザ2とユーザ3のユーザ公開鍵を有しており、ユーザ2が、他ユーザであるユーザ1のユーザ公開鍵を有している。そして、あるユーザが有している他ユーザのユーザ公開鍵の情報は、他ユーザのユーザ公開鍵そのものでもよいが、所有者であるユーザのユーザ秘密鍵で署名したものとしてもよい。つまり、ユーザ1が有するユーザ2のユーザ公開鍵を例にとると、ユーザ2のユーザ公開鍵がユーザ1のユーザ秘密鍵で署名されたものが、ユーザ公開鍵保存部328に保存されている。 The user public key storage unit 328 of the management server 300 stores information as shown in FIG. In the example of FIG. 17, the user 1 has user public keys of users 2 and 3 who are other users, and the user 2 has a user public key of user 1 which is another user. The user public key information of another user possessed by a certain user may be the user public key of the other user itself, or may be signed with the user private key of the user who is the owner. That is, taking the user public key of user 2 owned by user 1 as an example, the user public key of user 2 signed with the user private key of user 1 is stored in user public key storage unit 328.
図18には、ユーザ1の機器Cと機器Aとが管理サーバを介して他ユーザ(ユーザ2)のユーザ公開鍵を共有する手順の一例を示す。少なくとも機器Cと機器Aは、図8〜9に従って管理サーバにログイン後の状態になっているものとする。 FIG. 18 shows an example of a procedure in which the user C's device C and device A share the user public key of another user (user 2) via the management server. It is assumed that at least device C and device A are in a state after login to the management server in accordance with FIGS.
まず、ユーザ2の機器Dからユーザ1の機器Cへ、ユーザ2のユーザ公開鍵を複製する(1810)。ユーザ1の機器Cにユーザ2のユーザ公開鍵を保存する方法は、ユーザ公開鍵を2次元バーコードによって読み込む方法等でもよい。機器Cは、ユーザ2のユーザ公開鍵をユーザ公開鍵保存部529に、ユーザ2のユーザIDとともに登録する(1820)。 First, the user public key of the user 2 is copied from the device D of the user 2 to the device C of the user 1 (1810). The method of storing the user public key of the user 2 in the device C of the user 1 may be a method of reading the user public key using a two-dimensional barcode. The device C registers the user public key of the user 2 in the user public key storage unit 529 together with the user ID of the user 2 (1820).
次に、機器Cは、ユーザ秘密鍵保存部526に保存されているユーザ1のユーザ秘密鍵で、ユーザ2のユーザ公開鍵を署名する(1830)。この情報と、ユーザ2のユーザIDとを、ユーザ公開鍵登録要求メッセージとして管理サーバに送信する(1840)。 Next, the device C signs the user public key of the user 2 with the user secret key of the user 1 stored in the user secret key storage unit 526 (1830). This information and the user ID of the user 2 are transmitted to the management server as a user public key registration request message (1840).
管理サーバは、ユーザ公開鍵保存部328に、ユーザIDとして、ログインしているユーザ(ユーザ1)のユーザIDを保存する。そして、受信したユーザ公開鍵登録要求メッセージに含まれる「ユーザID(ユーザ2)」を、相手ユーザIDとして保存する。さらに、受信したユーザ公開鍵登録要求メッセージに含まれる「ユーザ1のユーザ秘密鍵で署名されたユーザ2のユーザ公開鍵」を、ユーザ公開鍵情報として保存する(1850)。 The management server stores the user ID of the logged-in user (user 1) in the user public key storage unit 328 as the user ID. Then, “user ID (user 2)” included in the received user public key registration request message is stored as the counterpart user ID. Further, the “user public key of user 2 signed with the user private key of user 1” included in the received user public key registration request message is stored as user public key information (1850).
ユーザ1の機器Aは、他のユーザのユーザ公開鍵を使いたい場合に、欲しいユーザ(ユーザ2)のユーザIDを含ませたユーザ公開鍵取得要求メッセージを、管理サーバに送付する(1860)。機器Aが、この取得要求メッセージを送信するタイミングは、定期的に送付してもよいし、ログイン時に送付してもよい。あるいは、管理サーバが、上記のようにユーザ公開鍵を保存したときに、ユーザ公開鍵登録要求を送ってきた機器以外の同一ユーザの機器であってログイン済のものに対して通知し、通知された機器が取得要求メッセージを返送するのでも構わない。 If the user A's device A wants to use another user's user public key, it sends a user public key acquisition request message including the user ID of the desired user (user 2) to the management server (1860). The timing at which the device A transmits this acquisition request message may be sent periodically or at the time of login. Alternatively, when the management server stores the user public key as described above, the management server notifies the logged-in device of the same user other than the device that sent the user public key registration request. The device may return an acquisition request message.
機器Aからのユーザ公開鍵取得要求メッセージを受信した管理サーバは、機器Aへユーザ公開鍵取得応答メッセージを返す(1870)。管理サーバは、ユーザ公開鍵保存部328に保存されているユーザ公開鍵を、ユーザID(ユーザ公開鍵取得要求メッセージを送信してきた機器を使用するユーザのユーザID−ユーザ1)および相手ユーザID(ユーザ公開鍵取得要求メッセージに含まれているユーザID−ユーザ2)で検索し、ユーザ公開鍵情報(ユーザ1の秘密鍵で署名されたユーザ2のユーザ公開鍵)を取り出す。ユーザ公開鍵取得応答メッセージには、相手ユーザIDと、取り出されたユーザ公開鍵情報とを入れる。 The management server that has received the user public key acquisition request message from device A returns a user public key acquisition response message to device A (1870). The management server uses the user public key stored in the user public key storage unit 328 as the user ID (user ID of the user using the device that has transmitted the user public key acquisition request message-user 1) and the other user ID ( The user public key information (the user public key of user 2 signed with the private key of user 1) is retrieved by searching with user ID-user 2) included in the user public key acquisition request message. In the user public key acquisition response message, the partner user ID and the extracted user public key information are entered.
ユーザ公開鍵取得応答メッセージを受信した機器Aは、このメッセージ中のユーザ公開鍵情報の署名を、ユーザ公開鍵保存部529に保存している自身(ユーザ1)のユーザ公開鍵を用いて検証する(1880)。署名が確認されたら、ユーザ公開鍵保存部529に、ユーザ公開鍵取得応答メッセージ中の相手ユーザID(ユーザ2)と署名を外したユーザ2のユーザ公開鍵とを保存する(1890)。 The device A that has received the user public key acquisition response message verifies the signature of the user public key information in the message using the user public key stored in the user public key storage unit 529 (user 1). (1880). If the signature is confirmed, the other party user ID (user 2) in the user public key acquisition response message and the user public key of user 2 whose signature has been removed are stored in the user public key storage unit 529 (1890).
以上の手順によって、他のユーザのユーザ公開鍵を、自身(同一ユーザ)が使用する全ての機器に、安全且つ簡単に保存することができる。 By the above procedure, the user public key of another user can be safely and easily stored in all devices used by the user (same user).
以上、本発明の実施形態について説明したが、上述の実施形態を本発明の範囲内で当業者が種々に変形、応用して実施できることは勿論である。
The embodiment of the present invention has been described above, but it is needless to say that the above-described embodiment can be variously modified and applied by those skilled in the art within the scope of the present invention.
Claims (17)
暗号化されてサーバに保存されているデータを、前記通信手段を介して受信し、ユーザに固有のユーザ秘密鍵を使用して、前記データを復号するためのデータ処理手段と、
自装置に固有の機器秘密鍵及び機器公開鍵を保持する機器鍵保持手段と、
前記ユーザ秘密鍵が自装置内に保持されていない場合に、他装置が保持している前記ユーザ秘密鍵を要求する要求メッセージに、自装置の機器公開鍵を含めて送信する要求手段と、
前記ユーザ秘密鍵が自装置内に保持されている場合に、他装置による前記ユーザ秘密鍵の要求を受信し、該要求に応答する応答メッセージに、自装置の機器公開鍵を含めて送信する応答手段と、
自装置が保持している機器公開鍵の確認用情報を第1の公開鍵情報として提示し、他装置から送信されてきた機器公開鍵の確認用情報を第2の公開鍵情報として提示する提示手段と、
前記提示手段により自装置が提示した第1の公開鍵情報と他装置が提示した第2の公開鍵情報が一致し、且つ、自装置が提示した第2の公開鍵情報と他装置が提示した第1の公開鍵情報が一致することを条件として、前記ユーザ秘密鍵の共有を許可する許可手段と、
前記ユーザ秘密鍵の共有のために、自装置が保持している前記ユーザ秘密鍵を、他装置から送信されてきた機器公開鍵で暗号化して送信する送信手段と、
他装置から送信されてきた前記ユーザ秘密鍵の共有のための情報を、自装置が保持している機器秘密鍵で復号化して得た前記ユーザ秘密鍵を、自装置内に保持するユーザ鍵保持手段と
を備えることを特徴とするデータ処理装置。 A communication means for communicating with at least one server via a network;
Data processing means for receiving encrypted data stored on the server via the communication means and decrypting the data using a user private key unique to the user;
Device key holding means for holding a device private key and device public key unique to the device;
When the user secret key is not held in the own device, a request means for sending the request message for requesting the user secret key held by another device including the device public key of the own device;
When the user private key is held in the own device, a response for receiving the request for the user secret key from another device and transmitting the response message including the device public key of the own device in response to the request Means,
Presentation that presents device public key confirmation information held by its own device as first public key information, and presents device public key confirmation information transmitted from another device as second public key information Means,
The first public key information presented by the own device by the presenting means matches the second public key information presented by the other device, and the second public key information presented by the own device and the other device presented Permission means for permitting sharing of the user private key on condition that the first public key information matches;
Transmitting means for encrypting and transmitting the user secret key held by its own device with a device public key transmitted from another device for sharing the user secret key;
User key holding for holding the user secret key obtained by decrypting the information for sharing the user secret key transmitted from another device with the device secret key held by the device. A data processing apparatus comprising: means.
前記ユーザ鍵保持手段は、他装置から送信されてきた前記ユーザ秘密鍵の共有のための情報に付加された署名を、該他装置から前記要求メッセージへの応答として送信されてきた該他装置の機器公開鍵に基づいて検証する手段を含むことを特徴とする請求項1に記載のデータ処理装置。 The transmitting means includes means for signing information for sharing the user private key to be transmitted with a device private key held by the own device,
The user key holding means sends a signature added to the information for sharing the user private key transmitted from another device to the other device transmitted from the other device as a response to the request message. The data processing apparatus according to claim 1, further comprising means for verifying based on the device public key.
前記応答手段が送信する応答メッセージに、前記送信手段が前記ユーザ秘密鍵の共有のために送信する情報を含ませ、
前記許可手段は、自装置が提示した第1の公開鍵情報と他装置が提示した第2の公開鍵情報が一致することを条件として、前記ユーザ鍵保持手段によるユーザ秘密鍵の保持を許可するものであることを特徴とする請求項1又は2に記載のデータ処理装置。 The permission means permits the transmission of the response message by the response means on the condition that the second public key information presented by the own device matches the first public key information presented by the other device,
The response message transmitted by the response unit includes information transmitted by the transmission unit for sharing the user secret key,
The permission unit permits the user key holding unit to hold the user secret key on condition that the first public key information presented by the own device matches the second public key information presented by the other device. The data processing apparatus according to claim 1, wherein the data processing apparatus is a device.
前記許可手段は、自装置が提示した第1及び第2の公開鍵情報と、前記読込手段により読み込まれた第2及び第1の公開鍵情報とを、それぞれ比較する手段を含むことを特徴とする請求項1〜3のいずれか1項に記載のデータ処理装置。 It further comprises reading means for reading the first and second public key information presented by the other device,
The permission means includes means for comparing the first and second public key information presented by the own device with the second and first public key information read by the reading means, respectively. The data processing apparatus according to any one of claims 1 to 3.
ネットワーク経由で前記少なくとも一つのサーバと通信する複数のデータ処理装置と
を備える秘密鍵共有システムであって、
前記複数のデータ処理装置は、暗号化されてサーバに保存されているデータを受信し、ユーザに固有のユーザ秘密鍵を使用して前記データを復号するためのデータ処理手段を有する第1及び第2のデータ処理装置を含み、
前記第1及び第2のデータ処理装置は、それぞれ、自装置に固有の機器秘密鍵及び機器公開鍵を保持する機器鍵保持手段を有し、
前記第2のデータ処理装置は、前記ユーザ秘密鍵を保持しており、
前記第1のデータ処理装置は、
他装置が保持している前記ユーザ秘密鍵を要求する要求メッセージに、自装置の機器公開鍵を含めて送信する要求手段と、
前記第1のデータ処理装置が保持している機器公開鍵の確認用情報を第1の公開鍵情報として提示し、前記第2のデータ処理装置から送信されてきた機器公開鍵の確認用情報を第2の公開鍵情報として提示する提示手段と、
前記第2のデータ処理装置から送信されてきた前記ユーザ秘密鍵の共有のための情報を、自装置が保持している機器秘密鍵で復号化して得た前記ユーザ秘密鍵を、保持するユーザ鍵保持手段とを備え、
前記第2のデータ処理装置は、
前記要求メッセージに対する応答メッセージに、自装置の機器公開鍵を含めて送信する応答手段と、
前記第2のデータ処理装置が保持している機器公開鍵の確認用情報を第3の公開鍵情報として提示し、前記第1のデータ処理装置から送信されてきた機器公開鍵の確認用情報を第4の公開鍵情報として提示する提示手段と、
前記ユーザ秘密鍵の共有のために、自装置が保持している前記ユーザ秘密鍵を、前記第1のデータ処理装置から送信されてきた機器公開鍵で暗号化して送信する送信手段とを備え、
前記第1の公開鍵情報と前記第4の公開鍵情報が一致し、且つ、前記第2の公開鍵情報と前記第3の公開鍵情報が一致することを条件として、前記ユーザ秘密鍵の共有を許可することを特徴とする秘密鍵共有システム。 At least one server;
A secret key sharing system comprising a plurality of data processing devices communicating with the at least one server via a network,
The plurality of data processing devices include first and second data processing means for receiving encrypted data stored in a server and decrypting the data using a user secret key unique to the user. 2 data processing devices,
Each of the first and second data processing devices has device key holding means for holding a device secret key and a device public key unique to the device,
The second data processing apparatus holds the user secret key;
The first data processing device includes:
Request means for transmitting the request message for requesting the user private key held by another device, including the device public key of the own device,
The device public key confirmation information held by the first data processing device is presented as first public key information, and the device public key confirmation information transmitted from the second data processing device is displayed. Presenting means for presenting as second public key information;
User key for holding the user secret key obtained by decrypting the information for sharing the user secret key transmitted from the second data processing device with the device secret key held by the own device Holding means,
The second data processing device includes:
Response means for transmitting a response message for the request message including the device public key of the device itself;
The device public key confirmation information held by the second data processing device is presented as third public key information, and the device public key confirmation information transmitted from the first data processing device is displayed. Presenting means for presenting as fourth public key information;
Transmission means for encrypting and transmitting the user secret key held by the own device with the device public key transmitted from the first data processing device for sharing the user secret key;
Sharing the user private key on condition that the first public key information and the fourth public key information match and that the second public key information and the third public key information match A secret key sharing system characterized by allowing
前記管理サーバは、
前記第1及び第2のデータ処理装置からのログインの要求に基づいて認証を行い、認証に失敗した場合にログインを拒否する手段と、
前記第1のデータ処理装置がログインに成功したことを条件として、ログインに成功している前記第2のデータ処理装置に対して、前記要求メッセージを転送する手段とを備えることを特徴とする請求項5又は6に記載の秘密鍵共有システム。 The at least one server includes a management server;
The management server
Means for performing authentication based on login requests from the first and second data processing devices, and rejecting login when the authentication fails;
And a means for transferring the request message to the second data processing apparatus that has been successfully logged in on condition that the first data processing apparatus has been successfully logged in. Item 7. The secret key sharing system according to Item 5 or 6.
ユーザについての認証の成否に基づいて前記ログインの成否を判断するものであり、
ログインに成功しているユーザと該ログインの要求を送信してきたデータ処理装置とを対応させて記憶する手段を更に備え、
前記第1のデータ処理装置からログインしてきたユーザと対応して記憶されている他のデータ処理装置を検索し、検索されたデータ処理装置を前記第2のデータ処理装置として前記転送を行うものであることを特徴とする請求項7に記載の秘密鍵共有システム。 The management server
Determining the success or failure of the login based on the success or failure of authentication for the user;
Means further comprising means for storing the user who has successfully logged in and the data processing apparatus that has transmitted the login request in correspondence;
A search is made for another data processing device stored corresponding to the user who has logged in from the first data processing device, and the transfer is performed using the searched data processing device as the second data processing device. The secret key sharing system according to claim 7, wherein the secret key sharing system is provided.
前記ログインの要求に、自装置が保持している機器秘密鍵で署名する手段を更に備え、
前記管理サーバは、
前記ユーザ秘密鍵が共有されたデータ処理装置と該データ処理装置の機器公開鍵とを対応させて記憶する手段と、
前記ログインの要求に付加された署名を、記憶された前記第2のデータ処理装置の機器公開鍵に基づいて検証し、検証に失敗した場合にログインを拒否する手段とを更に備えることを特徴とする請求項7又は8に記載の秘密鍵共有システム。 The second data processing device includes:
Means for signing the login request with a device private key held by the device;
The management server
Means for associating and storing the data processing apparatus in which the user secret key is shared and the device public key of the data processing apparatus;
And further comprising: means for verifying the signature added to the login request based on the stored device public key of the second data processing apparatus, and rejecting the login if the verification fails. The secret key sharing system according to claim 7 or 8.
複数のユーザ各々のユーザ公開鍵を含む情報を記憶する手段と、
各データ処理装置からの取得要求に応じて、該取得要求により特定されるユーザのユーザ公開鍵を含む情報を、該データ処理装置へ返送する手段とを更に備え、
前記各データ処理装置は、
データの利用を許可するユーザのユーザ公開鍵を使用して暗号化した該データを、サーバに保存させる手段を有することを特徴とする請求項7〜10のいずれか1項に記載の秘密鍵共有システム。 The management server
Means for storing information including a user public key of each of a plurality of users;
Means for returning information including the user public key of the user specified by the acquisition request to the data processing device in response to the acquisition request from each data processing device;
Each of the data processing devices
The secret key sharing according to any one of claims 7 to 10, further comprising means for causing a server to store the data encrypted using a user public key of a user who is permitted to use the data. system.
前記第1及び第2のデータ処理装置の他方のユーザは、前記一方のデータ処理装置のユーザと同一であり、
前記一方のデータ処理装置は、
自装置のユーザ以外のユーザ公開鍵を、自装置のユーザのユーザ秘密鍵で署名して、送信する手段を備え、
前記管理サーバは、
前記一方のデータ処理装置から送信された情報を署名付きで記憶するものであり、
前記他方のデータ処理装置は、
前記管理サーバに保存された署名付きの情報を取得し、該署名を自装置のユーザのユーザ公開鍵に基づいて検証する手段と、
前記検証の成功を条件として、取得した前記情報から前記自装置のユーザ以外のユーザ公開鍵を取り出して、記憶する手段とを備えることを特徴とする請求項7〜11のいずれか1項に記載の秘密鍵共有システム。 One of the first and second data processing devices acquires and stores a user public key other than the user of the device itself,
The other user of the first and second data processing devices is the same as the user of the one data processing device,
The one data processing device is
Means for signing and transmitting a user public key other than the user of the own device with the user private key of the user of the own device;
The management server
The information transmitted from the one data processing device is stored with a signature,
The other data processing device is
Means for acquiring information with a signature stored in the management server and verifying the signature based on a user public key of a user of the device;
The apparatus according to any one of claims 7 to 11, further comprising: a unit that extracts and stores a user public key other than the user of the device itself from the acquired information on the condition that the verification is successful. Private key sharing system.
前記第1及び第2のデータ処理装置からのログインの要求に基づいて認証を行い、認証に失敗した場合にログインを拒否する制御手段と、
ログインに成功した前記第1のデータ処理装置から、他装置が保持している前記ユーザ秘密鍵を要求する要求メッセージを受信する受信手段と、
ログインに成功しており、前記ユーザ秘密鍵を保持している前記第2のデータ処理装置に対して、前記要求メッセージを転送することにより、前記第1のデータ処理装置との間での前記ユーザ秘密鍵の共有の許否の決定及び共有のための送信を実行可能とする転送手段と
を備えることを特徴とする管理サーバ。 For the first and second data processing devices having data processing means for receiving encrypted data stored on the server and decrypting the data using a user private key unique to the user, A communication means for communicating via a network;
Control means for performing authentication based on login requests from the first and second data processing devices, and rejecting login when authentication fails;
Receiving means for receiving a request message for requesting the user secret key held by another device from the first data processing device that has been successfully logged in;
By transferring the request message to the second data processing apparatus that has successfully logged in and holds the user private key, the user with the first data processing apparatus A management server comprising: transfer means for enabling determination of whether or not to share a secret key and performing transmission for sharing.
前記第1及び第2のデータ処理装置は、それぞれ、自装置に固有の機器秘密鍵及び機器公開鍵を保持しており、
前記第2のデータ処理装置は、前記ユーザ秘密鍵を保持しており、
前記第1のデータ処理装置は、他装置が保持している前記ユーザ秘密鍵を要求する要求メッセージに、自装置の機器公開鍵を含めて送信し、
前記第2のデータ処理装置は、前記要求メッセージに対する応答メッセージに、自装置の機器公開鍵を含めて送信し、
前記第1のデータ処理装置は、自装置が保持している機器公開鍵の確認用情報を第1の公開鍵情報として提示し、前記第2のデータ処理装置から送信されてきた機器公開鍵の確認用情報を第2の公開鍵情報として提示し、
前記第2のデータ処理装置は、自装置が保持している機器公開鍵の確認用情報を第3の公開鍵情報として提示し、前記第1のデータ処理装置から送信されてきた機器公開鍵の確認用情報を第4の公開鍵情報として提示し、
前記第1の公開鍵情報と前記第4の公開鍵情報が一致し、且つ、前記第2の公開鍵情報と前記第3の公開鍵情報が一致することを条件として、前記ユーザ秘密鍵の共有を許可し、
前記第2のデータ処理装置は、前記ユーザ秘密鍵の共有のために、自装置が保持している前記ユーザ秘密鍵を、前記第1のデータ処理装置から送信されてきた機器公開鍵で暗号化して送信し、
前記第1のデータ処理装置は、前記第2のデータ処理装置から送信されてきた前記ユーザ秘密鍵の共有のための情報を、自装置が保持している機器秘密鍵で復号化して得た前記ユーザ秘密鍵を、保持することを特徴とする秘密鍵共有方法。 First and second data processing devices having data processing means for receiving encrypted data stored in a server via a network and decrypting the data using a user private key unique to the user A secret key sharing method in a system including:
Each of the first and second data processing devices holds a device secret key and a device public key that are unique to the device,
The second data processing apparatus holds the user secret key;
The first data processing apparatus transmits a request message for requesting the user private key held by another apparatus, including the device public key of the own apparatus,
The second data processing device transmits a response message to the request message including the device public key of its own device,
The first data processing device presents device public key confirmation information held by itself as first public key information, and the device public key transmitted from the second data processing device. Present confirmation information as second public key information,
The second data processing device presents device public key confirmation information held by itself as third public key information, and transmits the device public key transmitted from the first data processing device. Present confirmation information as fourth public key information,
Sharing the user private key on condition that the first public key information and the fourth public key information match and that the second public key information and the third public key information match Allow
The second data processing device encrypts the user private key held by the second data processing device with the device public key transmitted from the first data processing device in order to share the user private key. Send
The first data processing device is obtained by decrypting the information for sharing the user secret key transmitted from the second data processing device with the device secret key held by the device. A secret key sharing method characterized by holding a user secret key.
自装置に固有の機器秘密鍵及び機器公開鍵を保持させるためのプログラムコードと、
前記ユーザ秘密鍵が自装置内に保持されていない場合に、他装置が保持している前記ユーザ秘密鍵を要求する要求メッセージに、自装置の機器公開鍵を含めて送信させるためのプログラムコードと、
前記ユーザ秘密鍵が自装置内に保持されている場合に、他装置による前記ユーザ秘密鍵の要求を受信し、該要求に応答する応答メッセージに、自装置の機器公開鍵を含めて送信させるためのプログラムコードと、
自装置が保持している機器公開鍵の確認用情報を第1の公開鍵情報として提示させ、他装置から送信されてきた機器公開鍵の確認用情報を第2の公開鍵情報として提示させるためのプログラムコードと、
自装置が提示した第1の公開鍵情報と他装置が提示した第2の公開鍵情報が一致し、且つ、自装置が提示した第2の公開鍵情報と他装置が提示した第1の公開鍵情報が一致することを条件として、前記ユーザ秘密鍵の共有を許可するためのプログラムコードと、
前記ユーザ秘密鍵の共有のために、自装置が保持している前記ユーザ秘密鍵を、他装置から送信されてきた機器公開鍵で暗号化して送信させるためのプログラムコードと、
他装置から送信されてきた前記ユーザ秘密鍵の共有のための情報を、自装置が保持している機器秘密鍵で復号化して得た前記ユーザ秘密鍵を、自装置内に保持させるためのプログラムコードとを備えることを特徴とするプログラム。 The encrypted data stored on the server is received via the network, and the computer device having data processing means for decrypting the data using the user private key unique to the user is provided with the user private key A program that allows sharing,
A program code for holding the device private key and device public key unique to the device;
A program code for causing the request message for requesting the user secret key held by another device to include the device public key of the own device when the user secret key is not held in the own device; ,
When the user secret key is held in the own device, the request for the user secret key from another device is received, and a response message in response to the request is transmitted including the device public key of the own device. Program code,
In order to cause the device public key confirmation information held by the own device to be presented as the first public key information, and the device public key confirmation information transmitted from the other device to be presented as the second public key information. Program code,
The first public key information presented by the own device matches the second public key information presented by the other device, and the second public key information presented by the own device and the first public key presented by the other device. Program code for permitting sharing of the user secret key, provided that the key information matches,
For sharing the user secret key, a program code for transmitting the user secret key held by the own device by encrypting it with a device public key transmitted from another device;
Program for holding the user secret key obtained by decrypting the information for sharing the user secret key transmitted from another device with the device secret key held by the own device in the own device A program characterized by comprising code.
暗号化されてサーバに保存されているデータを受信し、ユーザに固有のユーザ秘密鍵を使用して前記データを復号するためのデータ処理手段を有する第1及び第2のデータ処理装置から、ログインの要求を受信するためのプログラムコードと、
前記ログインの要求に基づいて認証を行い、認証に失敗した場合にログインを拒否するためのプログラムコードと、
ログインに成功した前記第1のデータ処理装置から、他装置が保持している前記ユーザ秘密鍵を要求する要求メッセージを受信するためのプログラムコードと、
ログインに成功しており、前記ユーザ秘密鍵を保持している前記第2のデータ処理装置に対して、前記要求メッセージを転送することにより、前記第1のデータ処理装置との間での前記ユーザ秘密鍵の共有の許否の決定及び共有のための送信を実行可能とするためのプログラムコードとを備えることを特徴とするプログラム。 A program for operating a computer device having communication means for communicating with a plurality of data processing devices via a network as a management server for secret key sharing,
Login from first and second data processing devices having data processing means for receiving encrypted data stored on the server and decrypting the data using a user private key unique to the user Program code for receiving the request,
Authenticates based on the login request, and a program code for rejecting login when authentication fails;
Program code for receiving a request message for requesting the user secret key held by another device from the first data processing device that has been successfully logged in;
By transferring the request message to the second data processing apparatus that has successfully logged in and holds the user private key, the user with the first data processing apparatus And a program code for enabling determination of whether or not to share a secret key and enabling transmission for sharing.
ユーザに固有のユーザ公開鍵を使用して、データを暗号化し、暗号化されたデータがサーバに保存されるように、前記通信手段を介して送信するためのデータ処理手段と、
自装置に固有の機器秘密鍵及び機器公開鍵を保持する機器鍵保持手段と、
前記ユーザ公開鍵が自装置内に保持されていない場合に、他装置が保持している前記ユーザ公開鍵を要求する要求メッセージに、自装置の機器公開鍵を含めて送信する要求手段と、
前記ユーザ公開鍵が自装置内に保持されている場合に、他装置による前記ユーザ公開鍵の要求を受信し、該要求に応答する応答メッセージに、自装置の機器公開鍵を含めて送信する応答手段と、
自装置が保持している機器公開鍵の確認用情報を第1の公開鍵情報として提示し、他装置から送信されてきた機器公開鍵の確認用情報を第2の公開鍵情報として提示する提示手段と、
前記提示手段により自装置が提示した第1の公開鍵情報と他装置が提示した第2の公開鍵情報が一致し、且つ、自装置が提示した第2の公開鍵情報と他装置が提示した第1の公開鍵情報が一致することを条件として、前記ユーザ公開鍵の共有を許可する許可手段と、
前記ユーザ公開鍵の共有のために、自装置が保持している前記ユーザ公開鍵を、他装置から送信されてきた機器公開鍵で暗号化して送信する送信手段と、
他装置から送信されてきた前記ユーザ公開鍵の共有のための情報を、自装置が保持している機器秘密鍵で復号化して得た前記ユーザ公開鍵を、自装置内に保持するユーザ鍵保持手段と
を備えることを特徴とするデータ処理装置。
A communication means for communicating with at least one server via a network;
Data processing means for encrypting the data using a user public key unique to the user and transmitting the encrypted data on the server so that the encrypted data is stored in the server;
Device key holding means for holding a device private key and device public key unique to the device;
When the user public key is not held in the own device, a request means for transmitting the request message for requesting the user public key held by another device including the device public key of the own device;
When the user public key is held in the own device, a response for receiving the user public key request from another device and transmitting the response message including the device public key of the own device in response to the request Means,
Presentation that presents device public key confirmation information held by its own device as first public key information, and presents device public key confirmation information transmitted from another device as second public key information Means,
The first public key information presented by the own device by the presenting means matches the second public key information presented by the other device, and the second public key information presented by the own device and the other device presented Permission means for permitting sharing of the user public key on condition that the first public key information matches;
Transmitting means for encrypting and transmitting the user public key held by its own device with a device public key transmitted from another device for sharing the user public key;
User key holding for holding the user public key obtained by decrypting the information for sharing the user public key transmitted from another device with the device private key held by the device. A data processing apparatus comprising: means.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2010037403A JP5489775B2 (en) | 2010-02-23 | 2010-02-23 | Secret key sharing system, method, data processing apparatus, management server, and program |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2010037403A JP5489775B2 (en) | 2010-02-23 | 2010-02-23 | Secret key sharing system, method, data processing apparatus, management server, and program |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2011176435A JP2011176435A (en) | 2011-09-08 |
| JP5489775B2 true JP5489775B2 (en) | 2014-05-14 |
Family
ID=44688919
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2010037403A Active JP5489775B2 (en) | 2010-02-23 | 2010-02-23 | Secret key sharing system, method, data processing apparatus, management server, and program |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP5489775B2 (en) |
Families Citing this family (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP5586397B2 (en) * | 2010-09-24 | 2014-09-10 | 株式会社インテック | Secure network storage system, method, client device, server device, and program |
| CN102882944B (en) * | 2012-09-13 | 2018-02-09 | 中兴通讯股份有限公司 | A kind of processing method of information, the sending method of precedence information and device |
| CN105409159B (en) * | 2013-07-18 | 2019-09-06 | 日本电信电话株式会社 | Key storage device, key storage method, and recording medium thereof |
| JP2015099961A (en) * | 2013-11-18 | 2015-05-28 | 三菱電機株式会社 | Information distribution system, server device, information generation device, terminal device, information distribution method and program |
| CN105490997B (en) * | 2014-10-10 | 2019-05-14 | 阿里巴巴集团控股有限公司 | Security verification method, device, terminal and server |
| JP6479724B2 (en) * | 2016-09-02 | 2019-03-06 | 日本電信電話株式会社 | Secret key synchronization system, user terminal, and secret key synchronization method |
| JP6479723B2 (en) * | 2016-09-02 | 2019-03-06 | 日本電信電話株式会社 | Secret key management system and secret key management method |
| JP7107241B2 (en) * | 2019-02-12 | 2022-07-27 | コニカミノルタ株式会社 | Key sharing method, key sharing system, agent terminal |
| KR102387911B1 (en) * | 2020-09-15 | 2022-04-18 | 주식회사 카카오엔터프라이즈 | Secure instant messaging method and attaratus thereof |
| CN114154173B (en) * | 2021-06-30 | 2024-12-24 | 深圳市天视通视觉有限公司 | A method for sharing control authority of IoT devices |
-
2010
- 2010-02-23 JP JP2010037403A patent/JP5489775B2/en active Active
Also Published As
| Publication number | Publication date |
|---|---|
| JP2011176435A (en) | 2011-09-08 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US12081545B2 (en) | Out-of-band authentication to access web-service with indication of physical access to client device | |
| JP5489775B2 (en) | Secret key sharing system, method, data processing apparatus, management server, and program | |
| JP5844001B2 (en) | Secure authentication in multi-party systems | |
| US9722972B2 (en) | Methods and apparatuses for secure communication | |
| US8196186B2 (en) | Security architecture for peer-to-peer storage system | |
| US20120284506A1 (en) | Methods and apparatus for preventing crimeware attacks | |
| US20170142082A1 (en) | System and method for secure deposit and recovery of secret data | |
| US20130145447A1 (en) | Cloud-based data backup and sync with secure local storage of access keys | |
| US20030208681A1 (en) | Enforcing file authorization access | |
| US11218317B1 (en) | Secure enclave implementation of proxied cryptographic keys | |
| EP4096160B1 (en) | Shared secret implementation of proxied cryptographic keys | |
| JP2001186122A (en) | Authentication system and authentication method | |
| Khan et al. | A brief review on cloud computing authentication frameworks | |
| JP2024501326A (en) | Access control methods, devices, network equipment, terminals and blockchain nodes | |
| US12445280B2 (en) | Cyber security authentication method for displayless networking device | |
| JP7662642B2 (en) | Providing and acquiring one or more data sets via a digital communications network | |
| US20140250499A1 (en) | Password based security method, systems and devices | |
| JPWO2019234801A1 (en) | Service provision system and service provision method | |
| WO2012166669A2 (en) | Methods and apparatus for preventing crimeware attacks | |
| WO2016033208A1 (en) | System and methods for secure file sharing and access management | |
| JP2021179690A (en) | Communication systems, relay devices, communication methods, and programs | |
| Xu et al. | Qrtoken: Unifying authentication framework to protect user online identity | |
| US12598166B2 (en) | Systems and methods for facilitating ingestion of encrypted communications received across cloud computing networks | |
| Gustafson et al. | Securely Available Credentials (SACRED)-Credential Server Framework | |
| HK40083181A (en) | Secure enclave implementation of proxied cryptographic keys |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20110811 |
|
| A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20110809 |
|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130214 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140115 |
|
| 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: 20140128 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140225 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 5489775 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |