JP5046852B2 - Key generation device, terminal device, storage server, and computer program - Google Patents
Key generation device, terminal device, storage server, and computer program Download PDFInfo
- Publication number
- JP5046852B2 JP5046852B2 JP2007276380A JP2007276380A JP5046852B2 JP 5046852 B2 JP5046852 B2 JP 5046852B2 JP 2007276380 A JP2007276380 A JP 2007276380A JP 2007276380 A JP2007276380 A JP 2007276380A JP 5046852 B2 JP5046852 B2 JP 5046852B2
- Authority
- JP
- Japan
- Prior art keywords
- key
- distributed
- terminal device
- data
- group member
- 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.)
- Expired - Fee Related
Links
Images
Description
本発明は、鍵生成装置、端末装置、ストレージサーバおよびコンピュータプログラムに関する。 The present invention relates to a key generation device, a terminal device, a storage server, and a computer program.
従来、共有データを暗号化してグループ内で共有する方法が知られている(例えば、特許文献1参照)。ある共有データをグループ内で共有する場合、まずグループ内で共有したいデータ(MG)を、暗号鍵(KM)を用いて共通鍵暗号で暗号化(EKM(MG))する。そして、当該グループの全メンバ(U1,...,UN)が所有する公開鍵(pk1,...,pkN)でKMを暗号化(Epk1(KM),...,EpkN(KM))し、それをリスト化して、EKM(MG)と共にサーバ等に保存する。データを参照するグループメンバ(Ui)は、リスト内から自身の公開鍵(pki)で暗号化されたKM(Epki(KM)とEKM(MG)を取得し、暗号化されたKMを自身の秘密鍵(ski)を用いて復号することにより、KMを得る。そして、KMでEKM(MG)を復号し、元データMGを得る。
しかしながら、特許文献1に記載の技術においては、グループメンバの所有する端末装置が悪意の第三者に使用された場合、端末装置が共有データの暗号化に使用している秘密鍵を保持しているため秘密鍵が漏洩してしまう可能性がある。そのため、他のグループメンバによって共有データが暗号化されていたとしても、漏洩した秘密鍵を使用して第三者が共有データの内容を復号化できる可能性があるという問題があった。また、グループメンバが共有データを初めて公開する際、共有データの暗号化に使用した鍵をグループメンバが所有する公開鍵で暗号化する、すなわち、グループメンバの人数分鍵暗号化処理を行う必要があった。そのため、初めて共有データを公開する時の処理の負荷が大きいという問題があった。また、共有データの暗号化に使用する暗号鍵を更新した後に初めて共有データを公開する場合もグループメンバの人数分鍵暗号化処理を行う必要があった。そのため、共有データの暗号化に使用する暗号鍵を更新した後に初めて共有データを公開する時の処理の負荷が大きいという問題があった。
However, in the technique described in
本発明は上記の課題を解決するためになされたものであり、グループメンバの所有する端末装置が悪意の第三者に使用され、当該端末装置が保有している鍵が漏洩したとしても、他のグループメンバが暗号化した共有データを第三者によって復号化される可能性を軽減することが可能であり、初めて共有データを公開する際の処理の負荷の軽減が可能であり、共有データの暗号化に使用する暗号鍵の更新後に初めて共有データを公開する際の処理の負荷の軽減が可能である鍵生成装置、端末装置、ストレージサーバおよびコンピュータプログラムを提供することを目的とする。 The present invention has been made to solve the above-described problems. Even if a terminal device owned by a group member is used by a malicious third party and a key held by the terminal device is leaked, It is possible to reduce the possibility that the shared data encrypted by a group member will be decrypted by a third party, and to reduce the processing load when the shared data is published for the first time. An object of the present invention is to provide a key generation device, a terminal device, a storage server, and a computer program that can reduce the processing load when sharing data is first disclosed after updating the encryption key used for encryption.
本発明は、暗号化された共有データ(後述する実施形態の共有データMG、MG’に対応)を保管するストレージサーバと、N台(Nは1以上の整数)の端末装置と、鍵生成装置(後述する実施形態の認証局に対応)とを備えたデータ共有システムに含まれる前記鍵生成装置において、公開鍵と秘密鍵を生成するグループ鍵生成部と、第1の分散鍵(後述する実施形態の分散鍵ski,U(i=1,・・・,N)に対応)と第2の分散鍵(後述する実施形態の分散鍵ski,S(i=1,・・・,N)に対応)とからなる1組の分散鍵から前記秘密鍵を生成することが可能な分散鍵の組を生成する方法である秘密分散法を用いて、前記秘密鍵を生成することが可能な前記第1の分散鍵と前記第2の分散鍵との組をN組生成する分散鍵生成部と、前記分散鍵生成部で生成したN組の前記分散鍵の組に含まれるN個の前記第1の分散鍵をN台の前記端末装置に1個ずつ配布し、N台の前記端末装置それぞれに前記公開鍵を配布し、N組の前記分散鍵の組に含まれるN個の前記第2の分散鍵を前記ストレージサーバに配布する鍵配布部と、移行元端末装置の環境の移行先の端末装置である移行先端末装置を一意に特定する移行先端末装置情報を含む端末装置移行情報を受信する受信部と、を備え、前記受信部が前記端末装置移行情報を受信した際に、前記分散鍵生成部は、前記第1の分散鍵と前記第2の分散鍵との組を1組生成し、前記鍵配布部は、前記分散鍵生成部で生成した1組の前記分散鍵の組に含まれる1個の前記第1の分散鍵と前記公開鍵とを前記移行先端末装置に配布し、前記分散鍵生成部で生成した1組の前記分散鍵の組に含まれる1個の前記第2の分散鍵を前記ストレージサーバに配布することを特徴とする鍵生成装置である。 The present invention relates to a storage server that stores encrypted shared data (corresponding to shared data MG and MG ′ in an embodiment described later), N (N is an integer of 1 or more) terminal devices, and a key generation device (Corresponding to a certificate authority in an embodiment to be described later), a group key generation unit that generates a public key and a secret key, and a first distributed key (an implementation to be described later) Corresponding to the distributed keys ski, U (i = 1,..., N) of the form and the second distributed key (distributed keys ski, S (i = 1,..., N) of the embodiment described later). The secret key can be generated using a secret sharing method, which is a method for generating a set of distributed keys that can generate the secret key from a set of distributed keys. A distributed key generation unit that generates N sets of one distributed key and the second distributed key; The N first distributed keys included in the N sets of distributed keys generated by the distributed key generation unit are distributed to N terminal devices one by one, and each of the N terminal devices is distributed. A key distribution unit that distributes the public key and distributes the N second distributed keys included in the N sets of distributed keys to the storage server, and a terminal that is the destination of the environment of the source terminal device A receiving unit that receives terminal device migration information including migration destination terminal device information that uniquely identifies a migration destination terminal device that is a device, and when the receiving unit receives the terminal device migration information, the distribution The key generation unit generates one set of the first distributed key and the second distributed key, and the key distribution unit generates a set of the distributed keys generated by the distributed key generation unit. Distributing the included first distributed key and public key to the destination terminal device, A key generating apparatus characterized by distributing one of said second distributed key in the set of the set of distributed key generated in Chikagi generation unit to the storage server.
また、本発明は、ストレージサーバと、端末装置と、鍵生成装置とを備えたデータ共有システムに含まれるストレージサーバにおいて、前記鍵生成装置が端末装置移行情報を受信した際に生成した、移行元端末装置の環境の移行先の端末装置である移行先端末装置に配布する第1の分散鍵と前記ストレージサーバに配布する第2の分散鍵との組に含まれる当該第2の分散鍵を前記鍵生成装置より受信し、前記移行先端末装置より暗号化された共有データと第1の鍵復元用情報とを受信する受信部と、前記受信部が受信した前記共有データと前記第1の鍵復元用情報とを関連付けて記憶し、前記受信部が受信した前記第2の分散鍵を記憶する記憶部と、前記受信部が前記移行先端末装置より前記第1の鍵復元用情報を受信した場合、当該移行先端末装置に対応する前記第2の分散鍵を特定し、当該第1の鍵復元用情報と、特定した当該第2の分散鍵とに基づいて、第2の鍵復元用情報を生成する鍵復元用情報生成部と、暗号化された共有データと、前記第1の鍵復元用情報と、前記第2の鍵復元用情報とを前記移行先端末装置に送信する送信部と、を備えたことを特徴とするストレージサーバである。 The present invention also provides a migration source generated when the key generation device receives the terminal device migration information in a storage server included in a data sharing system including a storage server, a terminal device, and a key generation device. The second distribution key included in the set of the first distribution key distributed to the transfer destination terminal apparatus that is the transfer destination terminal apparatus of the environment of the terminal apparatus and the second distribution key distributed to the storage server is and Ri受 signal by the key generation device, the destination terminal and a receiving section for receiving the shared data and the first key recovery information encrypted by the device, the shared data and the first received by the receiver The key restoration information in association with each other, the storage unit storing the second distributed key received by the reception unit, and the reception unit receiving the first key restoration information from the destination terminal device. If received, the destination Identifying the second distributed key corresponding to end devices, said the first key recovery information, based on the specified and the second distributed key, the key recovery for generating a second key recovery information And a transmission unit that transmits the encrypted shared data, the first key recovery information, and the second key recovery information to the migration destination terminal device. Is a storage server characterized by
また、本発明は、演算処理部と通信部とを備えたコンピュータに、前記演算処理部が公開鍵と秘密鍵を生成するグループ鍵生成ステップと、前記演算処理部が第1の分散鍵と第2の分散鍵とからなる1組の分散鍵から前記秘密鍵を生成することが可能な分散鍵の組を生成する方法である秘密分散法を用いて、前記秘密鍵を生成することが可能な前記第1の分散鍵と前記第2の分散鍵との組をN組(Nは1以上の整数)生成する分散鍵生成ステップと、前記分散鍵生成ステップで前記演算処理部が生成したN組の前記分散鍵の組に含まれるN個の前記第1の分散鍵を前記通信部がN台の前記端末装置に1個ずつ送信し、N台の前記端末装置それぞれに前記通信部が前記公開鍵を送信し、N組の前記分散鍵の組に含まれるN個の前記第2の分散鍵を前記通信部が前記ストレージサーバに送信する鍵配布ステップと、移行元端末装置の環境の移行先の端末装置である移行先端末装置を一意に特定する移行先端末装置情報を含む端末装置移行情報を前記通信部が受信する受信ステップと、を実行させ、前記受信ステップで前記通信部が端末装置移行情報を受信した際に、前記分散鍵生成ステップでは、前記演算処理部が前記第1の分散鍵と前記第2の分散鍵との組を1組生成し、前記鍵配布ステップでは、前記分散鍵生成ステップで前記演算処理部が生成した1組の前記分散鍵の組に含まれる1個の前記第1の分散鍵と前記公開鍵とを前記通信部が前記移行先端末装置に送信し、前記分散鍵生成ステップで前記演算処理部が生成した1組の前記分散鍵の組に含まれる1個の前記第2の分散鍵を前記通信部が前記ストレージサーバに送信することを特徴とするプログラムである。 In addition, the present invention provides a computer including an arithmetic processing unit and a communication unit, a group key generating step in which the arithmetic processing unit generates a public key and a secret key, and the arithmetic processing unit includes a first distributed key and a first distributed key. The secret key can be generated by using a secret sharing method, which is a method for generating a set of distributed keys that can generate the secret key from a set of distributed keys composed of two distributed keys. A distributed key generation step of generating N sets (N is an integer of 1 or more) of the first distributed key and the second distributed key; and the N sets generated by the arithmetic processing unit in the distributed key generation step The communication unit transmits N pieces of the first distributed keys included in the set of distributed keys to the N terminal devices one by one, and the communication unit transmits the public information to each of the N terminal devices. sending the key, N pieces of the second distributed key included in the N sets of the set of distributed key And key distribution step by the communication unit is transmitted to the storage server, a terminal device migration information including the destination terminal apparatus information uniquely identifying the migration source terminal device of the migration destination terminal device a destination terminal device environment A receiving step received by the communication unit, and when the communication unit receives the terminal device transition information in the receiving step, in the distributed key generation step, the arithmetic processing unit is configured to execute the first distributed key. And a pair of the second distributed key are generated, and in the key distribution step, one set of the distributed keys included in the one set of the distributed keys generated by the arithmetic processing unit in the distributed key generation step The communication unit transmits the first distributed key and the public key to the destination terminal device, and one included in the set of distributed keys generated by the arithmetic processing unit in the distributed key generation step Said second distributed key A program, wherein the communication unit is transmitted to the storage server.
また、本発明は、演算処理部と通信部と記憶部とを備えたコンピュータに、鍵生成装置が移行元端末装置の環境の移行先の端末装置である移行先端末装置を一意に特定する移行先端末装置情報を含む端末装置移行情報を受信した際に生成した、移行元端末装置の環境の移行先の端末装置である移行先端末装置に配布する第1の分散鍵と前記ストレージサーバに配布する第2の分散鍵との組に含まれる当該第2の分散鍵を前記通信部が前記鍵生成装置より受信し、前記移行先端末装置より暗号化された共有データと第1の鍵復元用情報とを前記通信部が受信する受信ステップと、前記受信ステップで前記通信部が受信した前記共有データと前記第1の鍵復元用情報とを前記記憶部が関連付けて記憶し、前記受信ステップで受信した前記第2の分散鍵を前記記憶部が記憶する記憶ステップと、前記通信部が前記移行先端末装置より前記第1の鍵復元用情報を受信した場合、前記記憶部が記憶する前記第2の分散鍵のうち当該移行先端末装置に対応する前記第2の分散鍵を特定し、当該第1の鍵復元用情報と、特定した当該第2の分散鍵とに基づいて、第2の鍵復元用情報を生成する鍵復元用情報生成ステップと、暗号化された共有データと、前記第1の鍵復元用情報と、前記第2の鍵復元用情報とを前記移行先端末装置に前記通信部が送信する送信ステップと、をコンピュータに実行させるためのプログラムである。 Further, the present invention provides a computer that includes an arithmetic processing unit, a communication unit, and a storage unit, in which a key generation device uniquely identifies a migration destination terminal device that is a migration destination terminal device of the migration source terminal device environment. The first distribution key generated when receiving the terminal device migration information including the destination terminal device information and distributed to the migration destination terminal device that is the migration destination terminal device of the environment of the migration source terminal device and the distribution to the storage server the second of the communication unit to distributed key is Ri受 signal by the key generation device, the encrypted shared data and the first key from the destination terminal apparatus contained in the set of the second distributed key to a receiving step of receiving and restoring information is the communication unit, and stores the said shared data by the communication unit is received in the receiving step the first key recovery information the storage unit in association with the received Said second minute received in step A storage step of storing the key the storage unit, when the communication unit receives the first key recovery information from said destination terminal device, the one of the second distributed key which the storage unit stores The second shared key corresponding to the transfer destination terminal device is specified, and second key recovery information is generated based on the first key recovery information and the specified second shared key. A key recovery information generation step, a transmission step in which the communication unit transmits the encrypted shared data, the first key recovery information, and the second key recovery information to the destination terminal device. Is a program for causing a computer to execute.
本発明によれば、グループメンバの所有する端末装置が悪意の第三者に使用され、当該端末装置が保有している鍵が漏洩したとしても、他のグループメンバが暗号化した共有データを第三者によって復号化される可能性を軽減することが可能であり、初めて共有データを公開する際の処理の負荷の軽減が可能であり、共有データの暗号化に使用する暗号鍵の更新後に初めて共有データを公開する際の処理の負荷の軽減が可能である。 According to the present invention, even if a terminal device owned by a group member is used by a malicious third party and the key held by the terminal device leaks, the shared data encrypted by another group member is It is possible to reduce the possibility of decryption by the three parties, it is possible to reduce the processing load when sharing data is first disclosed, and for the first time after updating the encryption key used for encryption of shared data It is possible to reduce the processing load when releasing shared data.
以下、本発明の第1の実施形態から第3の実施形態について説明する。はじめに、本発明の第1の実施形態から第3の実施形態で使用している秘密分散法について説明する。秘密分散法とは、秘密情報を数人で分散して保管することで、元の秘密情報を安全に保管する方法である。(k,n)閾値秘密分散法は、秘密分散法の一種であり、秘密情報をn個の分割情報(シェア)に分割してそれぞれ保管し、その内のk個以上の分割情報を入手することができれば、元の秘密情報を復元することができるものである。(参考文献:「A. Shamir,“How to share a secret,“Communications of the ACM,Vol.22,No.11,pp.612−613,1979」) Hereinafter, the first to third embodiments of the present invention will be described. First, the secret sharing method used in the first to third embodiments of the present invention will be described. The secret sharing method is a method for securely storing original secret information by distributing and storing secret information by several people. The (k, n) threshold secret sharing method is a kind of secret sharing method, and the secret information is divided into n pieces of divided information (shares) and stored, and k or more pieces of divided information are obtained. If possible, the original secret information can be restored. (Reference: “A. Shamir,“ How to share a secret, ”Communications of the ACM, Vol. 22, No. 11, pp. 612-613, 1979”)
また、共通鍵暗号で利用する暗号鍵を、公開鍵暗号を用いて安全に配送するための鍵カプセル化技術(KEM:Key Encapsulation Mechanism)であるRSA(アールエスエー)暗号をベースとしたRSA−KEMについて説明する。RSA−KEMの手順の概要は以下の通りである。
[鍵生成手順]RSA秘密鍵(e,n)および公開鍵(d,(n))を生成する。ここで、n=pq (p,qは素数)、ed≡1(mod λ(n))(eとλ(n)は互いに素、λ(n)=LCM(p−1,q−1)(LCM(a,b)はaとbの最小公倍数))である。
[暗号化、暗号鍵生成手順](ステップS101)乱数rを生成する。ここでrは(1)式を満たす。
In addition, RSA-KEM based on RSA (RSA) cipher, which is a key encapsulation technique (KEM) for securely delivering a cipher key used in common key cipher using public key cipher. Will be described. The outline of the procedure of RSA-KEM is as follows.
[Key Generation Procedure] An RSA private key (e, n) and a public key (d, (n)) are generated. Here, n = pq (p and q are prime numbers), ed≡1 (mod λ (n)) (e and λ (n) are prime and λ (n) = LCM (p−1, q−1) (LCM (a, b) is the least common multiple of a and b)).
[Encryption and Encryption Key Generation Procedure] (Step S101) A random number r is generated. Here, r satisfies the formula (1).
(ステップS102)rを(2)式で文字列に変換する。ここで、I2OSPはinterger to octet string conversionである。 (Step S102) r is converted into a character string using equation (2). Here, I2OSP is an inter-to-octet string conversion.
(ステップS103)暗号文C0を(3)式で生成する。 (Step S103) generated in the ciphertext C 0 (3) expression.
(ステップS104)暗号鍵Kを(4)式で生成する。ここで、KDFは(Key Derivation Functionであり、KeyLenは暗号鍵の鍵長である。 (Step S104) The encryption key K is generated by equation (4). Here, KDF is (Key Delivery Function), and KeyLen is the key length of the encryption key.
[復号、暗号鍵復元手順](ステップS110)文字列Rを(5)式で復元する。 [Decryption and Encryption Key Restoration Procedure] (Step S110) The character string R is restored by the equation (5).
(ステップS111)暗号鍵Kを(6)式で復元する。 (Step S111) The encryption key K is restored by the equation (6).
(参考文献:「V.Shoup,“FCD 18033−2 Encryption algorithms−Part 2:Asymmetric ciphers”,http://shoup.net/iso/std6.pdf」) (Reference: “V. Shop,“ FCD 18033-2 Encryption algorithms-Part 2: Asymmetric ciphers ”, http://shoop.net/iso/std6.pdf”)
(第1の実施形態)
次に、本発明の第1の実施形態について図面を参照して説明する。図1は、本実施形態によるデータ共有システムを示す構成図である。図示する例では、データ共有システムはグループメンバ端末(端末装置)1−1、1−2、・・・、1−Nと、ストレージサーバ2と、認証局(鍵生成装置)3と、通信ネットワーク4とを備える。グループメンバ端末1−1、1−2、・・・、1−Nは、通信ネットワーク4を介してストレージサーバ2にアクセスし、ストレージサーバ2との間でデータを送受することができる。なお、通信ネットワーク4は、無線ネットワークであっても、有線ネットワークであってもよい。例えば、通信ネットワーク4は、インターネットと固定電話網や移動電話網などから構成されてもよい。
(First embodiment)
Next, a first embodiment of the present invention will be described with reference to the drawings. FIG. 1 is a configuration diagram showing a data sharing system according to the present embodiment. In the illustrated example, the data sharing system includes group member terminals (terminal devices) 1-1, 1-2,..., 1-N, a
グループメンバ端末1−1、1−2、・・・、1−Nは、移動しながら使用可能な装置(例えば、携帯型装置)であってもよく、或いは、固定して使用される装置(例えば、パーソナルコンピュータ等の据置き型装置)であってもよい。また、携帯型の端末装置としては、例えば、移動通信事業者が提供する移動通信網の端末装置(例えば、データ通信機能を有する携帯電話機、データ通信端末装置等)、PDA(Personal Digital Assistants:個人用情報機器)などが挙げられる。また、PDAの場合、通信手段を内蔵していてもよく、外部から通信手段を接続するものであってもよい。 The group member terminals 1-1, 1-2,..., 1-N may be devices that can be used while moving (for example, portable devices), or devices that are used in a fixed manner ( For example, a stationary apparatus such as a personal computer may be used. Examples of the portable terminal device include a mobile communication network terminal device provided by a mobile communication carrier (for example, a mobile phone having a data communication function, a data communication terminal device, etc.), a PDA (Personal Digital Assistants: personal). Information equipment). In the case of a PDA, a communication unit may be built in or a communication unit may be connected from the outside.
グループメンバ端末1−1、1−2、・・・、1−Nは、演算処理部、記憶部、通信部、入力部、表示部、外部インタフェースなどを備える。演算処理部は、CPU(中央処理装置)およびメモリ等から構成される。記憶部は、例えば、ハードディスク装置、光磁気ディスク装置、DVD(Digital Versatile Disk)等の光ディスク装置、フラッシュメモリ等の不揮発性のメモリ、DRAM(DynamicRandom Access Memory)等の揮発性のメモリ、などの記憶装置、あるいはそれらの組み合わせにより構成される。記憶部は、CPUで実行されるコンピュータプログラム等の各種データを記憶する。通信部は、通信ネットワーク4を介したデータ通信を行う。入力部は、キーボード、テンキー、マウス等の入力デバイスから構成され、ユーザの操作に応じたデータ入力を行う。表示部は、CRT(Cathode Ray Tube)や液晶表示装置等の表示デバイスから構成され、データ表示を行う。外部インタフェースは、外部機器との間で有線又は無線により直接にデータを送受する。
The group member terminals 1-1, 1-2,..., 1-N include an arithmetic processing unit, a storage unit, a communication unit, an input unit, a display unit, an external interface, and the like. The arithmetic processing unit includes a CPU (central processing unit), a memory, and the like. The storage unit stores, for example, a hard disk device, a magneto-optical disk device, an optical disk device such as a DVD (Digital Versatile Disk), a nonvolatile memory such as a flash memory, and a volatile memory such as a DRAM (Dynamic Random Access Memory). It is comprised by the apparatus or those combination. The storage unit stores various data such as a computer program executed by the CPU. The communication unit performs data communication via the
グループメンバ端末1−1、1−2、・・・、1−Nは、CPUがコンピュータプログラムを実行することにより、暗号鍵生成機能と、送信機能と、受信機能と、暗号鍵復元機能と、復号機能と、更新情報受信機能と、分割鍵更新機能と、シェア生成機能とを実現する。なお、コンピュータプログラムは、グループメンバ端末1−1、1−2、・・・、1−Nに固定的にインストールされていてもよく、或いは、サーバ上にあるコンピュータプログラムが必要なときに通信回線を介してダウンロードされてもよい。 The group member terminals 1-1, 1-2,..., 1 -N execute an encryption program generation function, a transmission function, a reception function, an encryption key restoration function, A decryption function, an update information reception function, a split key update function, and a share generation function are realized. The computer program may be fixedly installed in the group member terminals 1-1, 1-2,..., 1-N, or a communication line when a computer program on the server is required. It may be downloaded via.
ストレージサーバ2は、演算処理部、記憶部、通信部、入力部、表示部、外部インタフェースなどを備える。演算処理部は、CPUおよびメモリ等から構成される。記憶部は、例えば、ハードディスク装置、光磁気ディスク装置、DVD等の光ディスク装置、フラッシュメモリ等の不揮発性のメモリ、DRAM等の揮発性のメモリなどの記憶装置、あるいはそれらの組み合わせにより構成される。記憶部は、CPUで実行されるコンピュータプログラム等の各種データを記憶する。通信部は、通信ネットワーク4を介したデータ通信を行う。入力部は、キーボード、テンキー、マウス等の入力デバイスから構成され、ユーザの操作に応じたデータ入力を行う。表示部は、CRTや液晶表示装置等の表示デバイスから構成され、データ表示を行う。外部インタフェースは、外部機器との間で有線又は無線により直接にデータを送受する。また、記憶部は、グループメンバ端末1−1、1−2、・・・、1−Nから送られてきた各種データを記憶するデータ管理機能を有する。ストレージサーバ2の受信機能と、記憶機能と、鍵復元用情報生成機能と、送信機能と、分割鍵更新機能とは、ストレージサーバ2のCPUが上記機能を実現するためのコンピュータプログラムを実行することにより実現される。
The
認証局3は、演算処理部、記憶部、通信部、入力部、表示部、外部インタフェースなどを備える。演算処理部は、CPUおよびメモリ等から構成される。記憶部は、例えば、ハードディスク装置、光磁気ディスク装置、DVD等の光ディスク装置、フラッシュメモリ等の不揮発性のメモリ、DRAM等の揮発性のメモリなどの記憶装置、あるいはそれらの組み合わせにより構成される。記憶部は、CPUで実行されるコンピュータプログラム等の各種データを記憶する。通信部は、通信ネットワーク4を介したデータ通信を行う。入力部は、キーボード、テンキー、マウス等の入力デバイスから構成され、ユーザの操作に応じたデータ入力を行う。表示部は、CRTや液晶表示装置等の表示デバイスから構成され、データ表示を行う。外部インタフェースは、外部機器との間で有線又は無線により直接にデータを送受する。認証局3のグループ鍵生成機能と、分散鍵生成機能と、分散鍵分割機能と、鍵配布機能と、受信機能と、分割鍵更新情報生成機能と、更新情報配布機能とは、認証局3のCPUが上記機能を実現するためのコンピュータプログラムを実行することにより実現される。
The
[事前準備]
次に、本実施形態での事前準備について図2を参照して説明する。図2は、本実施形態での事前準備の処理動作を示すシーケンス図である。事前準備では、認証局3は暗号用の鍵を作成し、作成した鍵をグループメンバ端末1−1、1−2と、ストレージサーバ2に配布する。
[Advance preparation]
Next, preparations in the present embodiment will be described with reference to FIG. FIG. 2 is a sequence diagram showing a preparatory processing operation in the present embodiment. In advance preparation, the
(ステップP1−1)認証局3はグループ用公開鍵と秘密鍵のペア(pkG,skG)を生成する。以下、RSA暗号の公開鍵をpkG、秘密鍵をskGとして説明する。すなわち、pkG=(e,n)、skG=(d)、ここでn=pq (p,qは素数、p=2p’+1,q=2q’+1,p’,q’は素数)、ed≡1(mod λ(n))、λ(n)=2p’q’、gcd(e,λ(n))=1である。
(Step P1-1) The
(ステップP1−2)認証局3は、グループメンバ端末ごとに、(2,2)閾値秘密分散法を用いてskGを2個の分散鍵に分割する。グループメンバ端末1−1用の分散鍵は(sk1,U,sk1,S)である。グループメンバ端末1−2用の分散鍵は(sk2,U,sk2,S)である。具体的には、各グループメンバ端末に対応するする有限体GF(λ(n))上の多項式fi(x)を生成し、分散鍵ski,U,ski,Sを生成する。なお、ski,U,ski,Sは、以下の(7)式から(13)式を満たす。また、aiは乱数(ai=1,・・・,λ(n)−1)、IDiはグループメンバ端末iのID、IDSはストレージサーバのIDである。また、i=1,・・・,N(Nはデータ共有システムに含まれるグループメンバ端末数であり、Nは1以上の整数)である。
(Step P1-2) The
(ステップP1−3)認証局3は、データ共有システムに含まれる各グループメンバ端末にグループ用公開鍵pkGを一つずつ配布する。また、認証局3は、ステップP1−2で各端末用に生成した分散鍵ski,U(i=1,・・・,N)を、対応する端末に配布する。また、認証局3は、ステップP1−2で各端末用に生成した分散鍵ski,S(i=1,・・・,N)を、ストレージサーバ2にすべて配布する。
(Step P1-3) The
図3は、本実施形態における鍵の配布方法を示した図である。図示する例では、認証局3は、グループ用公開鍵pkGと、グループ用秘密鍵skGとを有している。また、認証局3は、グループ用秘密鍵skGから多項式f1(x)を生成し、生成した多項式f1(x)から分散鍵sk1,Sとsk1,Uとを生成している。また、認証局3は、グループ用秘密鍵skGから多項式f2(x)を生成し、生成した多項式f2(x)から分散鍵sk2,Sとsk2,Uとを生成している。以下同様に、認証局3は、データ共有システムに含まれているグループメンバ端末(1−1〜1−N)数と同数の分散鍵skN,SとskN,Uとを生成している。
FIG. 3 is a diagram showing a key distribution method in the present embodiment. In the illustrated example, the
認証局3は、グループ用公開鍵pkGと、分散鍵sk1,Uとをグループメンバ端末1−1に配布する。また、認証局3は、グループ用公開鍵pkGと、分散鍵sk2,Uとをグループメンバ端末1−2に配布する。以下同様に、認証局3は、データ共有システムに含まれているグループメンバ端末(1−1〜1−N)それぞれに、グループ用公開鍵pkGと、分散鍵skN,Uとを配布する。認証局3は、分散鍵sk1,S〜skN,Sをストレージサーバ2に配布する。なお、認証局3がグループメンバ端末(1−1〜1−N)およびストレージサーバ2へ分散鍵を配布する方法としては、ネットワーク通信で配布してもよく、記録媒体などの外部デバイスを介して配布しても良い。
The
[共有データ保存処理:共有データ新規保存、共有データ更新保存(鍵更新あり)]
次に、鍵の更新がある場合での本実施形態での共有データの新規保存または共有データの更新保存の処理について図4から図6を参照して説明する。図4は、本実施形態において、グループメンバ端末(1−1〜1−N)の記憶部が記憶するデータのリスト(ローカルデータリスト)のデータフォーマット(以下、メンバ端末フォーマットと記す。)を示した図である。図示する例では、メンバ端末フォーマットはデータID(D1)と、データラベル(L1)と、最終参照時刻(T1,1)と、暗号化データ(EKM(MG))との4つの属性を持つ。データIDは、データ共有システム内でデータを一意に識別するための識別子である。データラベルは、例えばファイル名など、データの内容や形態を表す名称である。最終参照時刻は、共有データを最後に参照した時刻である。暗号化データは、共有データを暗号化したデータである。
[Shared data storage processing: Shared data new storage, shared data update storage (with key update)]
Next, processing for newly saving shared data or updating and saving shared data in the present embodiment when there is a key update will be described with reference to FIGS. FIG. 4 shows a data format (hereinafter referred to as a member terminal format) of a list of data (local data list) stored in the storage unit of the group member terminals (1-1 to 1-N) in the present embodiment. It is a figure. In the illustrated example, the member terminal format is 4 of data ID (D 1 ), data label (L 1 ), last reference time (T 1,1 ), and encrypted data (E KM (M G )). Has one attribute. The data ID is an identifier for uniquely identifying data within the data sharing system. The data label is a name representing the content and form of data such as a file name. The last reference time is the time when shared data was last referenced. Encrypted data is data obtained by encrypting shared data.
図5は、本実施形態において、ストレージサーバ2の記憶部が記憶するデータのデータフォーマット(以下、ストレージサーバフォーマットと記す。)を示した図である。図示する例では、ストレージサーバフォーマットはデータID(D1)と、ユーザID(ID1)と、データラベル(L1)と、最終更新時刻(TS,1)と、暗号化データ(EKM(MG))と、鍵復元用情報(C0,1)との6つの属性を持つ。データIDと、データラベルと、暗号化データの3つの属性は、メンバ端末フォーマットの属性と同様である。ユーザIDは、暗号化データを生成したグループメンバ端末を一意に識別するための識別子である。最終更新時刻は共有データを最後に更新した時刻である。鍵復元用情報は、暗号化データを復号化する際に使用する鍵を作成する際に使用する情報である。
FIG. 5 is a diagram showing a data format (hereinafter referred to as a storage server format) of data stored in the storage unit of the
図6は、本実施形態において、ストレージサーバ2の記憶部が記憶するデータの例を示した図である。図示する例では、ストレージサーバ2の記憶部はデータレコード1からデータレコードXまでのX個のデータを記憶する。各データレコードのフォーマットは図4と同様である。
FIG. 6 is a diagram illustrating an example of data stored in the storage unit of the
図7は、本実施形態において、グループメンバ端末1−1がストレージサーバ2にグループ共有データを保存する処理動作を示したシーケンス図である。
FIG. 7 is a sequence diagram illustrating a processing operation in which the group member terminal 1-1 stores group shared data in the
(ステップW1−1)グループメンバ端末1−1を使用するユーザは、グループメンバ端末1−1を操作して、グループメンバ端末1−1に共有データMGを用意する。また、MGのファイル名をデータラベルL1とする。
(ステップW1−2)鍵カプセル化技術を用いて、グループメンバ端末1−1はpkGから暗号鍵KMと鍵復元用情報C0,1とを生成する。
User using the (step W1-1) group member terminal 1-1 operates the group member terminal 1-1, to prepare a shared data M G to group member terminal 1-1. In addition, the file name of M G and the data label L 1.
(Step W1-2) Using the key encapsulation technique, the group member terminal 1-1 generates the encryption key K M and the key recovery information C 0,1 from pk G.
(ステップW1−3)共通鍵暗号により、グループメンバ端末1−1は、KMを用いて共有データMGを暗号化する。暗号化後の共有データ(暗号化データ)はEKM(MG)とする。暗号化完了後、グループメンバ端末1−1はグループメンバ端末1−1が記憶するMGとKMとを削除する。
(ステップW1−4)グループメンバ端末1−1は、ユーザに対してユーザ認証用情報の入力を促し、ユーザからの認証情報の入力を受け付ける。ユーザ認証用情報は、ユーザID(UID)と認証情報(PN)である。認証情報は例えば暗証番号である。
(Step W1-3) common key encryption, the group member terminal 1-1, encrypts the shared data M G with K M. The shared data after encryption (encrypted data) is E KM (M G ). After encryption completion, the group member terminal 1-1 deletes the M G and K M for the group member terminal 1-1 stores.
(Step W1-4) The group member terminal 1-1 prompts the user to input information for user authentication, and accepts input of authentication information from the user. The user authentication information is a user ID (UID) and authentication information (PN). The authentication information is, for example, a password.
(ステップW1−5)グループメンバ端末1−1は、グループメンバ端末1−1が持つID(ID1)と、EKM(MG)と、C0,1と、L1と、UIDと、PNとをストレージサーバ2に送付する。
(ステップW1−6)ストレージサーバ2は、グループメンバ端末1−1より送信されたUIDとPNの組と、予め記憶しているUIDとPNとの組とが一致するか否か照合する。一致した場合、ストレージサーバ2はグループメンバ端末1−1より受信した当該データの組にデータID(D1)を割り当てる。また、ストレージサーバ2はID1と、EKM(MG)と、C0,1と、L1と、D1と、最終更新時刻(TS,1)とをストレージサーバフォーマットに従ってストレージサーバ2の記憶部に格納する。最新更新時刻(TS,1)は、当該格納時の時刻である。
(Step W1-5) The group member terminal 1-1 has the ID (ID 1 ), E KM (M G ), C 0 , 1 , L 1 , and UID possessed by the group member terminal 1-1. The PN is sent to the
(Step W1-6) The
(ステップW1−7)ステップW1−6での格納処理が終了したことをグループメンバ端末1−1に通知するために、ストレージサーバ2はACK(アック、Acknowledgement)メッセージをユーザ端末1に送信する。ACKメッセージにはD1とTS,1とが含まれる。
(ステップW1−8)ストレージサーバ2からACKメッセージを受信した後、グループメンバ端末1−1はグループメンバ端末1−1が記憶するKMとC0,1とを削除する。また、グループメンバ端末1−1はローカルデータリストに当該データ用のエントリを新規に作成し、D1をデータIDとして、L1をデータラベルとして、T1,1(=TS,1)を最終参照時刻として、EKM(MG)を暗号化データとして、メンバ端末フォーマットに従って格納する。なお、EKM(MG)の削除は行っても行わなくても良く、設定ファイルなどの設定により選択するようにしても良い。
(Step W1-7) The
(Step W1-8) After receiving the ACK message from the
[共有データ保存処理:共有データ更新保存(鍵更新なし)]
次に、鍵の更新がない場合での本実施形態での共有データの更新保存の処理について図8を参照して説明する。鍵の更新がない共有データの更新保存の場合としては、共有データを更新するグループメンバ端末が、以前に自身でストレージサーバに登録した共有データを更新する場合などがある。この場合は、以前に共有データを保存した際に使用した暗号鍵KMを用いて、再度更新対象の共有データの暗号化を行うことができるため、鍵生成手順を省略する。
[Shared data storage processing: Shared data update storage (no key update)]
Next, shared data update storage processing in this embodiment in the case where there is no key update will be described with reference to FIG. As an example of the case of updating and storing shared data without a key update, there is a case where a group member terminal that updates shared data updates shared data previously registered in the storage server. In this case, by using the encryption key K M was used when you save the shared data before, it is possible to encrypt the shared data again updated, omitted key generation procedure.
図8は、本実施形態において、暗号鍵を更新しないで、グループメンバ端末1−1がストレージサーバ2にグループ共有データを更新保存する処理動作を示したシーケンス図である。
FIG. 8 is a sequence diagram illustrating a processing operation in which the group member terminal 1-1 updates and saves the group shared data in the
(ステップWa1−1)グループメンバ端末1−1を使用するユーザは、グループメンバ端末1−1を操作して、グループメンバ端末1−1に共有データMG’を用意する。また、MG’のファイル名をデータラベルL1’とする。
(ステップWa1−2)共通鍵暗号により、グループメンバ端末1−1は、KMを用いて共有データMG’を暗号化する。暗号化後の共有データ(暗号化データ)はEKM(MG’)とする。暗号化完了後、グループメンバ端末1−1はグループメンバ端末1−1が記憶するMG’を削除する。
(ステップWa1−3)グループメンバ端末1−1は、ユーザに対してユーザ認証用情報の入力を促し、ユーザからの認証情報の入力を受け付ける。ユーザ認証用情報は、ユーザID(UID)と認証情報(PN)である。認証情報は例えば暗証番号である。
(Step Wa1-1) The user who uses the group member terminal 1-1 operates the group member terminal 1-1 to prepare shared data M G ′ on the group member terminal 1-1. In addition, to 'the file name of the data label L 1' M G and.
(Step Wa1-2) common key encryption, the group member terminal 1-1, encrypts the shared data M G 'using a K M. Shared data encrypted (encrypted data) and E KM (M G '). After completing the encryption, the group member terminal 1-1 deletes M G ′ stored in the group member terminal 1-1.
(Step Wa1-3) The group member terminal 1-1 prompts the user to input information for user authentication, and accepts input of authentication information from the user. The user authentication information is a user ID (UID) and authentication information (PN). The authentication information is, for example, a password.
(ステップW1a−4)グループメンバ端末1−1は、グループメンバ端末1−1が持つID(ID1)と、EKM(MG’)と、L1’と、データID(D1)と、UIDと、PNとをストレージサーバ2に送付する。
(ステップW1a−5)ストレージサーバ2は、グループメンバ端末1−1より送信されたUIDとPNの組と、予め記憶しているUIDとPNとの組とが一致するか否か照合する。一致した場合、ストレージサーバ2はID1と、EKM(MG’)と、L1’と、最終更新時刻(TS,1’)とをストレージサーバフォーマットのフォーマットに従って、更新前のデータを記憶するストレージサーバ2の記憶部に上書きする。最新更新時刻(TS,1’)は、当該上書き時の時刻である。
(Step W1a-4) group member terminal 11, the ID (ID 1) of the group member terminal 1-1 has, 'and, L 1 E KM (M G )' and, a data ID (D 1) UID and PN are sent to the
(Step W1a-5) The
(ステップW1a−6)ステップW1a−5での格納処理が終了したことをグループメンバ端末1−1に通知するために、ストレージサーバ2はACKメッセージをユーザ端末1に送信する。ACKメッセージにはTS,1’が含まれる。
(ステップW1a−7)ストレージサーバ2からACKメッセージを受信した後、グループメンバ端末1−1はローカルデータリストの当該データ用のエントリに、D1をデータIDとして、L1’をデータラベルとして、T1,1’(=TS,1’)を最終参照時刻として、EKM(MG’)を暗号化データとして、メンバ端末フォーマットに従って格納する。なお、EKM(MG’)の削除は行っても行わなくても良く、設定ファイルなどの設定により選択するようにしても良い。
(Step W1a-6) The
(Step W1a-7) After receiving the ACK message from the
[共有データ参照処理]
次に、グループメンバ端末1−1がストレージサーバ2に登録した共有データを、グループメンバ端末1−2が参照する際の処理について図9、図10を参照して説明する。
[Shared data reference processing]
Next, processing when the group member terminal 1-2 refers to the shared data registered in the
図9は、本実施形態において、ストレージサーバが各グループメンバ端末に送信するデータリストを示した図である。データリストは、ストレージサーバ2の記憶部が記憶するデータのデータラベルを記憶する。また、データリストはデータラベルと当該データラベルの最終更新時刻とを関連付けて記憶する。図示する例では、ストレージサーバ2が記憶するデータのデータラベルは、データラベル1(D1)、データラベル2(D2)、・・・、データラベルX(DX)である。また、データラベル1(D1)の最終更新時刻は、最終更新時刻1(L1)、データラベル2(D2)の最終更新時刻は、最終更新時刻2(L2)、・・・、データラベルX(DX)の最終更新時刻は、最終更新時刻X(LX)である。
FIG. 9 is a diagram showing a data list transmitted from the storage server to each group member terminal in the present embodiment. The data list stores data labels of data stored in the storage unit of the
図10は、本実施形態において、グループメンバ端末1−1がストレージサーバ2に登録した共有データを、グループメンバ端末1−2が参照する際の処理動作を示したシーケンス図である。
FIG. 10 is a sequence diagram showing processing operations when the group member terminal 1-2 refers to the shared data registered in the
(ステップR1−0)ストレージサーバ2はグループメンバ端末1−1とグループメンバ端末1−2とにデータリストを送付する。例えば、データリスト送付のタイミングは、データリストの更新がある度に送信しても良い。また、ユーザ端末からデータアクセス要求があった場合のみ送信しても良い。
(Step R1-0) The
(ステップR1−1)グループメンバ端末1−2は、ユーザから共有データの参照要求の入力を受け付ける。続いて、グループメンバ端末1−2は、ユーザに対してユーザ認証用情報の入力を促し、ユーザからの認証情報の入力を受け付ける。ユーザ認証用情報は、ユーザID(UID)と認証情報(PN)である。認証情報は例えば暗証番号である。 (Step R1-1) The group member terminal 1-2 receives an input of a reference request for shared data from the user. Subsequently, the group member terminal 1-2 prompts the user to input user authentication information, and accepts input of authentication information from the user. The user authentication information is a user ID (UID) and authentication information (PN). The authentication information is, for example, a password.
(ステップR1−2)グループメンバ端末1−2は、参照するデータMGのデータID(D1)と、グループメンバ端末1−2が持つID(ID2)と、UIDと、PNとをデータ要求メッセージとしてストレージサーバ2に送付する。当該データを過去に参照したことがある場合は、当該データの最終参照時刻(T2,1)をデータ要求メッセージに追加する。なお、グループメンバ端末内の暗号化データEKM(MG)の有無を知らせる情報をデータ要求メッセージ内に追加しても良い。図示する例では、グループメンバ端末1−2はデータMGを初めて参照するため、要求メッセージ内に最終参照時刻(T2,1)は含まれていない。
(Step R1-2) group member terminal 1-2, the data ID of the reference data M G (D 1), the ID of the group member terminal 1-2 has (ID 2), UID and data and a PN The message is sent to the
(ステップR1−3)ストレージサーバ2は、グループメンバ端末1−2より送信されたUIDとPNの組と、予め記憶しているUIDとPNとの組とが一致するか否か照合する。一致した場合、C0,1と、sk2,Sとを用いて、ストレージサーバ2は鍵復元用情報C1,1=C0,1 W1を生成する。なお、W1は以下の(14)式を満たす。
(Step R1-3) The
(ステップR1−4)ストレージサーバ2は、EKM(MG)と、最終更新時刻(TS,1)と、C0,1と、C1,1とをグループメンバ端末1−2に送付する。なお、ステップR1−0で要求メッセージ内に「グループメンバ端末内に暗号化データ有」を知らせる情報が付加されており、なおかつ当該データの更新がない場合はEKM(MG)を送付しない処理としても良い。ここで、当該データの更新の有無の判定方法として、例えば、グループメンバ端末より送られた最終参照時刻(T2,1)と、ストレージサーバ2内に格納されている最終更新時刻(TS,1)とを比較し、値が異なっている場合は更新されたと判定する方法がある。
(Step R1-4) The
(ステップR1−5)グループメンバ端末1−2は、sk2,Uと、C0,1と、C1,1とを用いてKMを復元する。また、最終参照時刻(T2,1)をTS,1に更新する。なお、KMの復元方法は以下の通りである。まず、以下の(15)式よりrを復元する。続いて以下の(16)式よりKMを復元する。なお、W2は以下の(17)式を満たす。 (Step R1-5) group member terminal 1-2, restores the K M with the sk 2, U, and C 0, 1, and C 1, 1. The last reference time (T 2,1 ) is updated to T S, 1 . Incidentally, restoration method of K M are as follows. First, r is restored from the following equation (15). Subsequently, KM is restored from the following equation (16). W2 satisfies the following expression (17).
(ステップR1−6)グループメンバ端末1−2は、KMを用いてEKM(MG)を復号し、MGを取得する。
(ステップR1−7)MGの参照後、グループメンバ端末1−2はKMと、MGと、C0,1と、C1,1とを削除する。なお、EKM(MG)の削除は行っても行わなくても良く、設定ファイルなどの設定により選択するようにしても良い。
(Step R1-6) group member terminal 1-2 uses the K M decrypts the E KM (M G), to obtain the M G.
(Step R1-7) after reference M G, group member terminal 1-2 and K M, and M G, and C 0, 1, to remove the C 1, 1. Note that E KM (M G ) may or may not be deleted, and may be selected by setting a setting file or the like.
[環境移行処理]
次に、グループメンバ端末1−2が紛失され、グループメンバ端末1−2の環境をグループメンバ端末1−3に移行する手順について図11を参照して説明する。環境移行とは、あるグループメンバ端末が有している共有データの暗号化・復号化を実行可能な環境を、別のグループメンバ端末に移行することを言う。本実施形態では、移行元の端末装置はグループメンバ端末1−2であり、移行先の端末装置はグループメンバ端末1−3である。図11は、本実施形態において、グループメンバ端末1−2が有している共有データの暗号化・復号化を実行可能な環境を、グループメンバ端末1−3に移行する処理動作を示したシーケンス図である。
[Environment migration process]
Next, a procedure for shifting the environment of the group member terminal 1-2 to the group member terminal 1-3 when the group member terminal 1-2 is lost will be described with reference to FIG. The environment migration means that an environment capable of executing encryption / decryption of shared data possessed by a certain group member terminal is migrated to another group member terminal. In this embodiment, the transfer source terminal device is the group member terminal 1-2, and the transfer destination terminal device is the group member terminal 1-3. FIG. 11 is a sequence diagram showing processing operations for migrating the environment in which the group member terminal 1-2 can execute encryption / decryption of shared data to the group member terminal 1-3 in this embodiment. FIG.
(ステップRE1−1)グループメンバ端末1−3は、グループメンバ端末1−2の紛失と、グループメンバ端末1−2の環境をグループメンバ端末1−3へ移行する要求とを含む端末装置移行情報を認証局3に通知する。端末装置移行情報には、端末装置の環境を移行する元の端末装置としてグループメンバ端末1−2の端末IDと、端末装置の環境を移行する先の端末装置としてグループメンバ端末1−3の端末IDとが含まれる。なお、通知方法はオンラインで通知しても良く、オフラインで通知しても良い。
(Step RE1-1) The group member terminal 1-3 receives terminal device transition information including the loss of the group member terminal 1-2 and a request to migrate the environment of the group member terminal 1-2 to the group member terminal 1-3. To the
(ステップRE1−2)認証局3は、グループメンバ端末1−3より端末移行情報を受信する。続いて認証局3は、グループメンバ端末1−3用の分割鍵sk’2,Uと分割鍵sk’2,Sとを生成する。生成方法は、ステップP1−2と同様である。
(ステップRE1−3)認証局3は、分割鍵sk’2,Sをストレージサーバ2に送付する。ストレージサーバ2は、分割鍵sk’2,Sを受信後、グループメンバ端末1−2用の分割鍵sk2,Sを削除する。
(ステップRE1−4)認証局3は、グループメンバ端末1−3用の分割鍵sk’2,Uと公開鍵pkGとをグループメンバ端末1−3に送付する。
(Step RE1-2) The
(Step RE1-3) The
(Step RE1-4) The
以上より、暗号化された共有データの復号化には、必ずストレージサーバが保持する分散鍵sk2,Sと鍵復元用情報C0,1とが必要であるため、グループメンバの所有する端末装置が悪意の第三者に使用され、当該端末装置が保有している鍵が漏洩したとしても、他のグループメンバが暗号化した共有データを第三者によって復号化される可能性を軽減することが可能である。また、従来、初めて共有データを公開する際に必要であった、共有データの暗号化に使用した鍵をグループメンバが所有する公開鍵で暗号化する、すなわち、グループメンバの人数分鍵暗号化処理を行う必要がないため、初めて共有データを公開する際の処理の負荷の軽減が可能である。また、従来、共有データの暗号化に使用する暗号鍵を更新した後に初めて共有データを公開する場合に必要であった、グループメンバの人数分の鍵暗号化処理を行う必要がないため、共有データの暗号化に使用する暗号鍵の更新後に初めて共有データを公開する際の処理の負荷の軽減が可能である。 As described above, since the shared key sk 2, S and the key recovery information C 0,1 held by the storage server are necessary for the decryption of the encrypted shared data, the terminal device owned by the group member To reduce the possibility that shared data encrypted by other group members will be decrypted by a third party even if the key held by the terminal device is leaked Is possible. In addition, the key used for encrypting the shared data, which was conventionally required when publicly sharing the shared data for the first time, is encrypted with the public key owned by the group member, that is, the key encryption process for the number of group members. It is possible to reduce the processing load when sharing data is first disclosed. In addition, since it is not necessary to perform key encryption processing for the number of group members, which was necessary when the shared data was released for the first time after updating the encryption key used to encrypt the shared data, It is possible to reduce the processing load when the shared data is made public for the first time after updating the encryption key used for encryption.
(第2の実施形態)
次に、本発明の第2の実施形態について図面を参照して説明する。本実施形態では、第1の実施形態の鍵カプセル化技術による鍵交換処理に加え、秘密分散による鍵交換処理を追加する。具体的には、グループメンバ端末は、新規に共有データをストレージサーバに登録する際、または初めて共有データを参照する際に、当該データの暗号鍵を秘密分散法でS1とS2との2つのシェアに分散する。なお、暗号鍵は分散した2つのシェアS1とS2のみを用いて生成可能である。続いて、グループメンバ端末はシェアS1をストレージサーバに送付し、シェアS2を自端末内に保持する。また、本実施形態によるデータ共有システムは第1の実施形態のデータ共有システムと同様である。
(Second Embodiment)
Next, a second embodiment of the present invention will be described with reference to the drawings. In this embodiment, in addition to the key exchange process by the key encapsulation technique of the first embodiment, a key exchange process by secret sharing is added. Specifically, when newly registering shared data in the storage server or referring to shared data for the first time, the group member terminal uses the secret sharing method to set the encryption key of the data to 2 of S 1 and
[事前準備]
次に、本実施形態での事前準備について説明する。本実施形態での事前準備の処理動作は第1の実施形態の事前準備の処理動作と同様に行う。
[Advance preparation]
Next, advance preparation in the present embodiment will be described. The preparatory processing operation in the present embodiment is performed in the same manner as the preparatory processing operation of the first embodiment.
[共有データ保存処理:共有データ新規保存、共有データ更新保存(鍵更新あり)]
次に、鍵の更新がある場合での本実施形態での共有データの新規保存または共有データの更新保存の処理について図12から図14を参照して説明する。図12は、本実施形態において、グループメンバ端末の記憶部が記憶するデータのリスト(ローカルデータリスト)のデータフォーマット(以下、メンバ端末フォーマットと記す。)を示した図である。図示する例では、メンバ端末フォーマットはデータID(D1)と、データラベル(L1)と、最終参照時刻(T1,1)と、最終鍵参照時刻(TK1,1)と、暗号鍵シェア(S1,2)と、暗号化データ(EKM(MG))との6つの属性を持つ。データIDは、データ共有システム内でデータを一意に識別するための識別子である。データラベルは、例えばファイル名など、データの内容や形態を表す名称である。最終参照時刻は、共有データを最後に参照した時刻である。最終鍵参照時刻は、暗号鍵を最後に参照した時刻である。暗号鍵シェアは、グループメンバ端末が暗号鍵を秘密分散法で分散して作成したシェアである。暗号化データは、共有データを暗号化したデータである。
[Shared data storage processing: Shared data new storage, shared data update storage (with key update)]
Next, processing for newly saving shared data or updating and saving shared data in the present embodiment when there is a key update will be described with reference to FIGS. FIG. 12 is a diagram showing a data format (hereinafter referred to as a member terminal format) of a list of data (local data list) stored in the storage unit of the group member terminal in the present embodiment. In the illustrated example, the member terminal format includes data ID (D 1 ), data label (L 1 ), last reference time (T 1,1 ), last key reference time (TK 1,1 ), and encryption key. It has six attributes of share (S 1,2 ) and encrypted data (E KM (M G )). The data ID is an identifier for uniquely identifying data within the data sharing system. The data label is a name representing the content and form of data such as a file name. The last reference time is the time when shared data was last referenced. The last key reference time is the time when the encryption key was last referenced. The encryption key share is a share created by group member terminals by distributing an encryption key by a secret sharing method. Encrypted data is data obtained by encrypting shared data.
図13は、本実施形態において、ストレージサーバ2の記憶部が記憶するデータのデータフォーマット(以下、ストレージサーバフォーマットと記す。)を示した図である。図示する例では、ストレージサーバフォーマットはデータID(D1)と、データラベル(L1)と、最終更新時刻(TS,1)と、最終鍵更新時刻(TKS,1)と、暗号化データ(EKM(MG))と、鍵復元用情報(C0,1)と、ユーザID(ID1)と、暗号鍵シェア(S1,1)との8つの属性を持つ。データIDと、データラベルと、暗号化データと、暗号鍵シェアとの4つの属性は、メンバ端末フォーマットの属性と同様である。ユーザIDはグループメンバ端末を一意に識別するための識別子である。最終更新時刻は共有データを最後に更新した時刻である。最終鍵更新時刻は暗号鍵を最後に更新した時刻である。鍵復元用情報は、暗号化データを復号化する際に使用する鍵を作成する際に使用する情報である。
FIG. 13 is a diagram showing a data format (hereinafter referred to as a storage server format) of data stored in the storage unit of the
図14は、本実施形態において、グループメンバ端末1−1がストレージサーバ2にグループ共有データを保存する処理動作を示したシーケンス図である。
FIG. 14 is a sequence diagram illustrating a processing operation in which the group member terminal 1-1 stores group shared data in the
(ステップW2−1)グループメンバ端末1−1を使用するユーザは、グループメンバ端末1−1を操作して、グループメンバ端末1−1に共有データMGを用意する。また、MGのファイル名をデータラベルL1とする。
(ステップW2−2)鍵カプセル化技術を用いて、グループメンバ端末1−1はpkGから暗号鍵KMと鍵復号用情報C0,1とを生成する。
User using the (step W2-1) group member terminal 1-1 operates the group member terminal 1-1, to prepare a shared data M G to group member terminal 1-1. In addition, the file name of M G and the data label L 1.
Using (step W2-2) key encapsulation technique, group member terminal 1-1 generates the encryption key K M and the key decoding information C 0, 1 from pk G.
(ステップW2−3)共通鍵暗号により、グループメンバ端末1−1は、KMを用いて共有データMGを暗号化する。暗号化後の共有データ(暗号化データ)はEKM(MG)とする。暗号化完了後、グループメンバ端末1−1はグループメンバ端末1−1が記憶するMGを削除する。
(ステップW2−4)グループメンバ端末1−1は、(2,2)閾値分散法を用いてKMに対応するシェアS1,1とシェアS1,2とを作成する。なお、KMは分散した2つのシェアS1,1とシェアS1,2のみを用いて生成可能である。シェアを作成後、KMを削除する。なお、シェアSi,1は以下の(18)式を用いて生成する。ここで、Xi,1=h(IDi)(hはハッシュ関数)、u1(x)=b1x+KM、u1(x)は有限体GF(2b−1)上の多項式(bは暗号鍵の鍵長)である。
(Step W2-3) common key encryption, the group member terminal 1-1, encrypts the shared data M G with K M. The shared data after encryption (encrypted data) is E KM (M G ). After encryption completion, the group member terminal 1-1 deletes the M G group members terminal 1-1 stores.
(Step W2-4) group member terminal 1-1 creates the share S 1,1 and share S 1, 2 corresponding to the K M with (2,2) threshold dispersion method. Incidentally, K M can be generated using only two shares S 1,1 and share S 1, 2 dispersed. After creating a share, to remove the K M. The share S i, 1 is generated using the following equation (18). Here, X i, 1 = h (ID i ) (h is a hash function), u 1 (x) = b 1 x + K M , u 1 (x) is a polynomial on a finite field GF (2 b −1) ( b is the key length of the encryption key).
また、シェアSi,2は以下の(19)式を用いて生成する。ここで、Xi,2=h(IDi‖r1)(r1は乱数、hはハッシュ関数)である。 The share S i, 2 is generated using the following equation (19). Here, X i, 2 = h (ID i ‖r 1 ) (where r 1 is a random number and h is a hash function).
(ステップW2−5)グループメンバ端末1−1は、ユーザに対してユーザ認証用情報の入力を促し、ユーザからの認証情報の入力を受け付ける。ユーザ認証用情報は、ユーザID(UID)と認証情報(PN)である。認証情報は例えば暗証番号である。 (Step W2-5) The group member terminal 1-1 prompts the user to input user authentication information, and accepts input of authentication information from the user. The user authentication information is a user ID (UID) and authentication information (PN). The authentication information is, for example, a password.
(ステップW2−6)グループメンバ端末1−1は、グループメンバ端末1−1が持つID(ID1)と、S1,1と、EKM(MG)と、C0,1と、L1と、UIDと、PNとをストレージサーバ2に送付する。
(ステップW2−7)ストレージサーバ2は、グループメンバ端末1−1より送信されたUIDとPNとの組と、予め記憶しているUIDとPNとの組とが一致するか否か照合する。一致した場合、ストレージサーバ2は当該データにデータID(D1)を割り当てる。また、ストレージサーバ2はID1と、L1と、EKM(MG)と、C0,1と、S1,1と、D1と、最終更新時刻(TS,1)と、最終鍵更新時刻(TKS,1)とをストレージサーバフォーマットのフォーマットに従ってストレージサーバ2の記憶部に格納する。最新更新時刻(TS,1)および最終鍵更新時刻(TKS,1)は、当該格納時の時刻である。
(Step W2-6) The group member terminal 1-1 has the ID (ID 1 ), S 1,1 , E KM (M G ), C 0,1 , and L held by the group member terminal 1-1. 1 , UID, and PN are sent to the
(Step W2-7) The
(ステップW2−8)ステップW2−7での格納処理が終了したことをグループメンバ端末1−1に通知するために、ストレージサーバ2はACK(アック、Acknowledgement)メッセージをユーザ端末1に送信する。ACKメッセージにはD1とTS,1とTKS,1とが含まれる。
(ステップW2−9)ストレージサーバ2からACKメッセージを受信した後、グループメンバ端末1−1はグループメンバ端末1−1が記憶するKMと、C0,1とS1,1とを削除する。また、グループメンバ端末1−1はローカルデータリストに当該データ用のエントリを新規に作成し、D1をデータIDとして、L1をデータラベルとして、T1,1(=TS,1)を最終参照時刻として、TK1,1(=TKS,1)を最終鍵参照時刻として、S1,2を暗号鍵シェアとして、EKM(MG)を暗号化データとして、メンバ端末フォーマットに従って格納する。なお、EKM(MG)の削除は行っても行わなくても良く、設定ファイルなどの設定により選択するようにしても良い。
(Step W2-8) The
(Step W2-9) after receiving the ACK message from the
[共有データ保存処理:共有データ更新保存(鍵更新なし)]
次に、鍵の更新がない場合での本実施形態での共有データの更新保存の処理について説明する。鍵の更新がない場合での本実施形態での共有データの更新保存の処理動作は、第1の実施形態の鍵の更新がない場合での共有データの更新保存の処理動作と同様に行う。
[Shared data storage processing: Shared data update storage (no key update)]
Next, shared data update storage processing in the present embodiment when there is no key update will be described. The shared data update storage processing operation in the present embodiment when there is no key update is performed in the same manner as the shared data update storage processing operation in the first embodiment when there is no key update.
[共有データ参照処理]
次に、グループメンバ端末1−1がストレージサーバ2に登録した共有データを、グループメンバ端末1−2が参照する際の処理について図15を参照して説明する。図15は、本実施形態において、グループメンバ端末1−1がストレージサーバ2に登録した共有データを、グループメンバ端末1−2が参照する際の処理動作を示したシーケンス図である。
[Shared data reference processing]
Next, processing when the group member terminal 1-2 refers to the shared data registered in the
(ステップR2−0)ストレージサーバ2はグループメンバ端末1−1とグループメンバ端末1−2とにデータリストを送付する。例えば、データリスト送付のタイミングは、データリストの更新がある度に送信しても良い。また、ユーザ端末からデータアクセス要求があった場合のみ送信しても良い。
(Step R2-0) The
(ステップR2−1)グループメンバ端末1−2は、ユーザから共有データの参照要求の入力を受け付ける。続いて、グループメンバ端末1−2は、ユーザに対してユーザ認証用情報の入力を促し、ユーザからの認証情報の入力を受け付ける。ユーザ認証用情報は、ユーザID(UID)と認証情報(PN)である。認証情報は例えば暗証番号である。 (Step R2-1) The group member terminal 1-2 receives an input of a reference request for shared data from the user. Subsequently, the group member terminal 1-2 prompts the user to input user authentication information, and accepts input of authentication information from the user. The user authentication information is a user ID (UID) and authentication information (PN). The authentication information is, for example, a password.
(ステップR2−2)グループメンバ端末1−2は、参照するデータMGのデータID(D1)と、グループメンバ端末1−2が持つID(ID2)と、UIDと、PNとをデータ要求メッセージとしてストレージサーバ2に送付する。当該データを過去に参照したことがある場合は、当該データの最終参照時刻(T2,1)と、最終鍵参照時刻(TK2,1)とをデータ要求メッセージに追加する。なお、グループメンバ端末内の暗号化データEKM(MG)の有無を知らせる情報をデータ要求メッセージ内に追加しても良い。図示する例では、グループメンバ端末1−2はデータMGを初めて参照するため、要求メッセージ内に最終参照時刻(T2,1)と、最終鍵参照時刻(TK2,1)とは含まれていない。
(Step R2-2) group member terminal 1-2, the data ID of the reference data M G (D 1), the ID of the group member terminal 1-2 has (ID 2), UID and data and a PN The message is sent to the
(ステップR2−3)ストレージサーバ2は、グループメンバ端末1−2より送信されたUIDとPNの組と、予め記憶しているUIDとPNとの組とが一致するか否か照合する。一致した場合、ストレージサーバ2は、グループメンバ端末1−2が当該データを参照した後に自身が保持している当該データ用の暗号鍵が更新されたか否か判断する。ここで、当該データ用の暗号鍵の更新の有無の判定方法として、例えば、グループメンバ端末より送られた暗号鍵の最終鍵参照時刻(TK2,1)と、ストレージサーバ2内に格納されている当該データ用の暗号鍵の最終更新時刻(TKS,1)とを比較し、値が異なっている場合は更新されたと判定する方法がある。
(Step R2-3) The
(ステップR2−4)共有データを新規に参照する場合、もしくは鍵の更新がある共有データを参照する場合、グループメンバ端末は、鍵を作成して共有データを参照する。参照方法は後述する。
(ステップR2−5)グループメンバ端末は、鍵の更新がない共有データを参照する。参照方法は後述する。
(Step R2-4) When the shared data is newly referred to or when the shared data with the key update is referred to, the group member terminal creates a key and refers to the shared data. The reference method will be described later.
(Step R2-5) The group member terminal refers to shared data that has no key update. The reference method will be described later.
次に、ステップR2−4で、グループメンバ端末が鍵を作成して共有データを参照する際の手順について図16を参照して説明する。図16はグループメンバ端末が鍵を作成して共有データを参照する処理動作を示したシーケンス図である。 Next, a procedure when the group member terminal creates a key and refers to the shared data in step R2-4 will be described with reference to FIG. FIG. 16 is a sequence diagram showing a processing operation in which a group member terminal creates a key and refers to shared data.
(ステップR2−4a)ストレージサーバ2は、C0,1と、sk2,Sとを用いて、鍵復元用情報C1,1=C0,1 W1を生成する。なお、鍵復元用情報の生成方法はステップR1−3と同様である。
(Step R2-4a) The
(ステップR2−4b)ストレージサーバ2は、D1と、EKM(MG)と、最終更新時刻(TS,1)と、最終鍵更新時刻(TKS,1)と、C0,1と、C1,1とをグループメンバ端末1−2に送付する。
(ステップR2−4c)グループメンバ端末1−2は、sk2,Uと、C0,1と、C1,1とを用いてKMを復元する。なお、KMの復元方法はステップR1−5と同様である。
(Step R2-4b) the
(Step R2-4c) group member terminal 1-2, restores the K M with the sk 2, U, and C 0, 1, and C 1, 1. Incidentally, restoration method of K M is the same as step R1-5.
(ステップR2−4d)グループメンバ端末1−2は、KMを用いてEKM(MG)を復号し、MGを取得する。
(ステップR2−4e)グループメンバ端末1−2は、(2,2)閾値分散法を用いてKMに対応するシェアS2,1とシェアS2,2とを作成する。
(ステップR2−4f)グループメンバ端末1−2は、D1と、ID2と、S2,1とをストレージサーバ2に送付する。また、MGの参照後、グループメンバ端末1−2はKMと、MGと、C0,1と、C1,1と、S2,1とを削除する。また、ローカルデータリストの当該データ用のエントリに、D1をデータIDとして、L1をデータラベルとして、T’2,1(=TS,1)を最終参照時刻として、TK’2,1(=TKS,1)を最終鍵参照時刻として、S2,2を暗号鍵シェアとして、EKM(MG)を暗号化データとして、メンバ端末フォーマットに従って格納する。なお、EKM(MG)の削除は行っても行わなくても良く、設定ファイルなどの設定により選択するようにしても良い。
(Step R2-4d) group member terminal 1-2 uses the K M decrypts the E KM (M G), to obtain the M G.
(Step R2-4e) The group member terminal 1-2 creates a share S 2,1 and a share S 2,2 corresponding to K M using the (2,2) threshold distribution method.
(Step R2-4f) group member terminal 1-2, and D 1, and ID 2, it sends a S 2,1 to the
次に、ステップR2−5で、グループメンバ端末が鍵の更新がない共有データを参照する際の手順について図17を参照して説明する。図17はグループメンバ端末が鍵の更新がない共有データを参照する処理動作を示したシーケンス図である。 Next, the procedure when the group member terminal refers to the shared data without the key update in step R2-5 will be described with reference to FIG. FIG. 17 is a sequence diagram showing a processing operation in which a group member terminal refers to shared data with no key update.
(ステップR2−5a)ストレージサーバ2は、暗号鍵シェアS2,1と、EKM(MG)と、最終更新時刻(TS,1)とをグループメンバ端末1−2に送付する。なお、ステップR2−1で要求メッセージ内に「グループメンバ端末内に暗号化データ有」を知らせる情報が付加されており、なおかつ当該データの更新がない場合はEKM(MG)を送付しない処理としても良い。ここで、当該データの更新の有無の判定方法として、例えば、グループメンバ端末より送られた最終参照時刻(T2,1)と、ストレージサーバ2内に格納されている最終更新時刻(TS,1)とを比較し、値が異なっている場合は更新されたと判定する方法がある。
(Step R2-5a) The
(ステップR2−5b)グループメンバ端末1−2は、S2,2と、S2,1とを用いてKMを復元する。
(ステップR2−5c)グループメンバ端末1−2は、KMを用いてEKM(MG)を復号し、MGを取得する。
(ステップR2−5d)MGの参照後、グループメンバ端末1−2はKMと、MGと、S2,1とを削除する。また、グループメンバ端末1−2は、ローカルデータリストの当該データ用のエントリのT’2,1の値をTS,1の値として上書きする。なお、EKM(MG)の削除は行っても行わなくても良く、設定ファイルなどの設定により選択するようにしても良い。
(Step R2-5b) group member terminal 1-2, restores the K M with the S 2, 2, and S 2,1.
(Step R2-5c) group member terminal 1-2 uses the K M decrypts the E KM (M G), to obtain the M G.
(Step R2-5d) after reference M G, group member terminal 1-2 deletes the K M, and M G, and S 2,1. Further, the group member terminal 1-2 overwrites the value of T′2,1 of the entry for the data in the local data list as the value of TS , 1 . Note that E KM (M G ) may or may not be deleted, and may be selected by setting a setting file or the like.
[環境移行処理]
次に、グループメンバ端末1−2が紛失され、グループメンバ端末1−2の環境をグループメンバ端末1−3に移行する手順について説明する。本実施形態での移行手順は、第1の実施形態での移行手順と同様に行う。
[Environment migration process]
Next, a procedure for shifting the environment of the group member terminal 1-2 to the group member terminal 1-3 when the group member terminal 1-2 is lost will be described. The migration procedure in this embodiment is performed in the same manner as the migration procedure in the first embodiment.
以上、第2の実施形態について説明したとおり、本実施形態では第1の実施形態の鍵カプセル化技術による鍵交換処理に加え、秘密分散による鍵交換処理を追加する形態とした。よって、グループメンバ端末が同じ暗号鍵を用いた暗号化データを参照する際に、鍵復元情報C0およびC1をストレージサーバより取得する必要がなく、シェアS1だけを送付すればよい。そのため、ユーザ端末とストレージサーバ間のメッセージサイズを削減できる。例えば、公開鍵暗号の鍵長を1024ビット、共通鍵暗号の鍵長を256ビットにしたとすると、1回のデータ参照あたり1792ビットを削減できる。また、ユーザ端末側でべき乗演算および乗算を行う必要もなくなるため、ユーザ端末の負荷が軽減される。 As described above with respect to the second embodiment, in this embodiment, a key exchange process based on secret sharing is added to the key exchange process based on the key encapsulation technique of the first embodiment. Therefore, when the group member terminal refers to the encrypted data using the same encryption key, it is not necessary to obtain the key recovery information C 0 and C 1 from the storage server, and only the share S 1 needs to be sent. Therefore, the message size between the user terminal and the storage server can be reduced. For example, if the key length of the public key encryption is 1024 bits and the key length of the common key encryption is 256 bits, 1792 bits can be reduced per data reference. Moreover, since it is not necessary to perform exponentiation and multiplication on the user terminal side, the load on the user terminal is reduced.
(第3の実施形態)
次に、本発明の第3の実施形態について図面を参照して説明する。本実施形態では、暗号鍵を生成する基の情報であるマスターシェアと呼ばれる情報をグループメンバ端末内に生成し、生成したマスターシェアを用いて暗号鍵と暗号鍵シェアを生成する。なお、暗号鍵は暗号鍵シェアとマスターシェアのみを用いて生成可能である。また、マスターシェアを秘密分散法で分割シェアSMS,1と分割シェアSMS,2との2つの分割シェアに分散する。なお、マスターシェアは分散した2つの分割シェアSMS,1とSMS,2のみを用いて生成可能である。また、本実施形態によるデータ共有システムは第1の実施形態のデータ共有システムと同様である。
(Third embodiment)
Next, a third embodiment of the present invention will be described with reference to the drawings. In this embodiment, information called a master share, which is basic information for generating an encryption key, is generated in a group member terminal, and an encryption key and an encryption key share are generated using the generated master share. The encryption key can be generated using only the encryption key share and the master share. Further, the master share is distributed to two divided shares of the divided share SMS, 1 and the divided share SMS, 2 by the secret sharing method. The master share can be generated using only two divided shares SMS, 1 and SMS, 2 . The data sharing system according to the present embodiment is the same as the data sharing system according to the first embodiment.
[事前準備]
次に、本実施形態での事前準備について説明する。
(ステップP3−1)認証局3はグループ用公開鍵と秘密鍵のペア(pkG、skG)を生成する。以下、RSA暗号の公開鍵をpkG、秘密鍵をskGとして説明する。
[Advance preparation]
Next, advance preparation in the present embodiment will be described.
(Step P3-1) The
(ステップP3−2)認証局3は、グループメンバ端末ごとに、(2,2)閾値秘密分散法を用いてskGを2個の分散鍵に分割する。グループメンバ端末1−1用の分散鍵は(sk1,U,sk1,S)である。グループメンバ端末1−2用の分散鍵は(sk2,U,sk2,S)である。なお、分散鍵の生成方法はステップP1−2と同様である。
(Step P3-2) The
(ステップP3−3)認証局3は、データ共有システムに含まれる各グループメンバ端末にグループ用公開鍵pkGを一つずつ配布する。また、認証局3は、ステップP3−2で各端末用に生成した分散鍵ski,U(i=1,・・・,N)を、対応する端末に配布する。また、認証局3は、ステップP3−2で各端末用に生成した分散鍵ski,S(i=1,・・・,N)を、ストレージサーバ2にすべて配布する。
(ステップP3−4)各グループメンバ端末はマスターシェアの初期設定を行い、自端末内にマスターシェア(MSi)を保持する。マスターシェアの初期設定方法は後述する。
(Step P3-3) The
(Step P3-4) Each group member terminal performs initial setting of the master share, and holds the master share (MS i ) in its own terminal. A method for initial setting of the master share will be described later.
次に、ステップP3−4で、グループメンバ端末がマスターシェアの初期設定を行う手順について図18を参照して説明する。図18はグループメンバ端末がマスターシェアの初期設定を行う処理動作を示したシーケンス図である。 Next, the procedure in which the group member terminal performs the initial setting of the master share in step P3-4 will be described with reference to FIG. FIG. 18 is a sequence diagram showing processing operations in which the group member terminals perform initial setting of the master share.
(ステップP3−4a)グループメンバ端末1−1はマスターシェアMS1を生成する。なお、マスターシェアMSiは以下の(20)式より生成される。ここで、XMS,i=h(IDi)(hはハッシュ関数、i=1,…,N+1)、g(x)は有限体GF(2b−1)上の多項式(bは暗号鍵の鍵長)である。 (Step P3-4a) The group member terminal 1-1 generates a master share MS 1 . The master share MS i is generated from the following equation (20). Here, X MS, i = h (ID i ) (h is a hash function, i = 1,..., N + 1), g (x) is a polynomial over a finite field GF (2 b −1) (b is an encryption key) Key length).
(ステップP3−4b)グループメンバ端末1−1は、(2,2)閾値分散法を用いてマスターシェアMS1に対応する分割シェアSMS,1,1と分割シェアSMS,1,2とを生成する。なお、マスターシェアMS1は分割シェアSMS,1,1と分割シェアSMS,1,2のみを用いて生成可能である。また、分割シェアSMS,i,1は以下の(21)式を用いて生成する。 (Step P3-4b) The group member terminal 1-1 uses the (2, 2) threshold distribution method , and the split share SMS , 1, 1 and the split share SMS , 1 , 2 , corresponding to the master share MS 1 , Is generated. The master share MS 1 can be generated using only the split shares SMS 1, 1, 1 and the split shares SMS 1 , 2, 1 . Further, the divided share SMS, i, 1 is generated using the following equation (21).
また、分割シェアSMS,i,2は以下の(22)式を用いて生成する。ここで、Xi,2=h(IDi‖r3)(r3は乱数、hはハッシュ関数、i=1,…,N+1)である。 Further, the divided share SMS, i, 2 is generated using the following equation (22). Here, X i, 2 = h (ID i ‖r 3 ) (r 3 is a random number, h is a hash function, i = 1,..., N + 1).
(ステップP3−4c)グループメンバ端末1−1は、グループメンバ端末1−1が持つID(ID1)と、SMS,1,2とをストレージサーバ2に送付する。
(ステップP3−4d)グループメンバ端末1−1は、SMS,1,1を外部デバイスに送付する。外部デバイスは例えば、USBメモリなどの記憶装置である。なお、SMS,1,1を記憶した外部デバイスは、グループメンバ端末1−1から取り外され、金庫など安全な場所に保管される。また、外部デバイスは、環境復元処理以外の処理であるデータ保存処理やデータ参照処理には使用されない。
(ステップP3−4e)グループメンバ端末1−1は、SMS,1,1とSMS,1,2とを削除する。
(Step P3-4c) The group member terminal 1-1 sends the ID (ID 1 ) of the group member terminal 1-1 and the SMS , 1, 2 to the
(Step P3-4d) The group member terminal 1-1 sends SMS , 1, 1 to the external device. The external device is, for example, a storage device such as a USB memory. The external device storing the SMS, 1, 1 is detached from the group member terminal 1-1 and stored in a safe place such as a safe. The external device is not used for data storage processing and data reference processing that are processing other than environment restoration processing.
(Step P3-4e) The group member terminal 1-1 deletes SMS , 1, 1 and SMS , 1 , 2 .
なお、マスターシェアは、グループメンバ端末1−1内に保持され、データ保存処理、データ参照処理の暗号鍵生成、暗号鍵分散処理に利用される。また、マスターシェアをグループメンバ端末1−1内で暗号化し、ストレージサーバ2へのユーザ認証後、ストレージサーバからマスターシェア復号用の鍵を取得することにより、マスターシェアが復号されるような処理を行うことで、安全性を高めても良い。
The master share is held in the group member terminal 1-1 and used for data storage processing, encryption key generation for data reference processing, and encryption key distribution processing. Further, the master share is encrypted in the group member terminal 1-1, and after the user authentication to the
[共有データ保存処理:共有データ新規保存]
次に、共有データの新規保存の処理について図19から図21を参照して説明する。図19は、本実施形態において、グループメンバ端末の記憶部が記憶するデータのリスト(ローカルデータリスト)のデータフォーマット(以下、メンバ端末フォーマットと記す。)を示した図である。図示する例では、メンバ端末フォーマットはデータID(D1)と、データラベル(L1)と、最終参照時刻(T1,1)と、暗号化データ(EKM(MG))との4つの属性を持つ。データIDは、データ共有システム内でデータを一意に識別するための識別子である。データラベルは、例えばファイル名など、データの内容や形態を表す名称である。最終参照時刻は、共有データを最後に参照した時刻である。暗号化データは、共有データを暗号化したデータである。
[Shared data storage processing: Shared data new storage]
Next, a process for newly saving shared data will be described with reference to FIGS. FIG. 19 is a diagram showing a data format (hereinafter referred to as a member terminal format) of a list of data (local data list) stored in the storage unit of the group member terminal in the present embodiment. In the illustrated example, the member terminal format is 4 of data ID (D 1 ), data label (L 1 ), last reference time (T 1,1 ), and encrypted data (E KM (M G )). Has one attribute. The data ID is an identifier for uniquely identifying data within the data sharing system. The data label is a name representing the content and form of data such as a file name. The last reference time is the time when shared data was last referenced. Encrypted data is data obtained by encrypting shared data.
図20は、本実施形態において、ストレージサーバ2の記憶部が記憶するデータのデータフォーマット(以下、ストレージサーバフォーマットと記す。)を示した図である。図示する例では、ストレージサーバフォーマットはデータID(D1)と、データラベル(L1)と、最終更新時刻(TS,1)と、暗号化データ(EKM(MG))と、鍵復元用情報(C0,1)と、ユーザID(ID1)と、暗号鍵シェア(SKM,1)との7つの属性を持つ。データIDと、データラベルと、暗号化データと、暗号鍵シェアとの4つの属性は、メンバ端末フォーマットの属性と同様である。ユーザIDはグループメンバ端末を一意に識別するための識別子である。最終更新時刻は共有データを最後に更新した時刻である。鍵復元用情報は、暗号化データを復号化する際に使用する鍵を作成する際に使用する情報である。 FIG. 20 is a diagram illustrating a data format of data stored in the storage unit of the storage server 2 (hereinafter referred to as a storage server format) in the present embodiment. In the illustrated example, the storage server format includes a data ID (D 1 ), a data label (L 1 ), a last update time (T S, 1 ), encrypted data (E KM (M G )), a key It has seven attributes: restoration information (C 0,1 ), user ID (ID 1 ), and encryption key share (S KM, 1 ). The four attributes of data ID, data label, encrypted data, and encryption key share are the same as those of the member terminal format. The user ID is an identifier for uniquely identifying the group member terminal. The last update time is the time when the shared data was last updated. The key recovery information is information used when creating a key used when decrypting encrypted data.
図21は、本実施形態において、グループメンバ端末1−1がストレージサーバ2にグループ共有データを保存する処理動作を示したシーケンス図である。
FIG. 21 is a sequence diagram illustrating a processing operation in which the group member terminal 1-1 stores group shared data in the
(ステップW3−1)グループメンバ端末1−1を使用するユーザは、グループメンバ端末1−1を操作して、グループメンバ端末1−1に共有データMGを用意する。また、MGのファイル名をデータラベルL1とする。
(ステップW3−2)鍵カプセル化技術を用いて、グループメンバ端末1−1はpkGから暗号鍵KMと鍵復号用情報C0,1とを生成する。
User using the (step W3-1) group member terminal 1-1 operates the group member terminal 1-1, to prepare a shared data M G to group member terminal 1-1. In addition, the file name of M G and the data label L 1.
(Step W3-2) Using the key encapsulation technique, the group member terminal 1-1 generates the encryption key K M and the key decryption information C 0,1 from pk G.
(ステップW3−3)共通鍵暗号により、グループメンバ端末1−1は、KMを用いて共有データMGを暗号化する。暗号化後の共有データ(暗号化データ)はEKM(MG)とする。暗号化完了後、グループメンバ端末1−1はグループメンバ端末1−1が記憶するMGを削除する。
(ステップW3−4)グループメンバ端末1−1は、マスターシェアMS1を用いてKMに対応する暗号鍵シェアSKM,1を生成する。暗号鍵シェアSKM,1は以下の(23)式を用いて生成する。ここで、XKM,1=h(ID1‖r2)(r2は乱数、hはハッシュ関数)である。なお、KMはマスターシェアMS1と暗号鍵シェアSKM,1のみを用いて生成可能である。
(Step W3-3) common key encryption, the group member terminal 1-1, encrypts the shared data M G with K M. The shared data after encryption (encrypted data) is E KM (M G ). After encryption completion, the group member terminal 1-1 deletes the M G group members terminal 1-1 stores.
(Step W3-4) group member terminal 11, generates an encryption key shares S KM, 1 corresponding to the K M using the master share MS 1. The encryption key share S KM, 1 is generated using the following equation (23). Here, X KM, 1 = h (ID 1 ‖r 2 ) (r 2 is a random number and h is a hash function). Incidentally, K M can be generated using only the master share MS 1 and the encryption key shares S KM, 1.
(ステップW3−5)グループメンバ端末1−1は、ユーザに対してユーザ認証用情報の入力を促し、ユーザからの認証情報の入力を受け付ける。ユーザ認証用情報は、ユーザID(UID)と認証情報(PN)である。認証情報は例えば暗証番号である。 (Step W3-5) The group member terminal 1-1 prompts the user to input information for user authentication, and accepts input of authentication information from the user. The user authentication information is a user ID (UID) and authentication information (PN). The authentication information is, for example, a password.
(ステップW3−6)グループメンバ端末1−1は、グループメンバ端末1−1が持つID(ID1)と、EKM(MG)と、C0,1と、L1と、SKM,1と、UIDと、PNとをストレージサーバ2に送付する。
(ステップW3−7)ストレージサーバ2は、グループメンバ端末1−1より送信されたUIDとPNとの組と、予め記憶しているUIDとPNとの組とが一致するか否か照合する。一致した場合、ストレージサーバ2は当該データにデータID(D1)を割り当てる。また、ストレージサーバ2はID1と、L1と、EKM(MG)と、C0,1と、SKM,1と、D1と、最終更新時刻(TS,1)とをストレージサーバフォーマットのフォーマットに従ってストレージサーバ2の記憶部に格納する。最新更新時刻(TS,1)は、当該格納時の時刻である。
(Step W3-6) The group member terminal 1-1 receives the ID (ID 1 ), E KM (M G ), C 0,1 , L 1 , and S KM, which the group member terminal 1-1 has . 1 , UID, and PN are sent to the
(Step W3-7) The
(ステップW3−8)ステップW3−7での格納処理が終了したことをグループメンバ端末1−1に通知するために、ストレージサーバ2はACK(アック、Acknowledgement)メッセージをユーザ端末1に送信する。ACKメッセージにはD1とTS,1とTKS,1とが含まれる。
(ステップW3−9)ストレージサーバ2からACKメッセージを受信した後、グループメンバ端末1−1はグループメンバ端末1−1が記憶するKMとC0,1とSKM,1とを削除する。また、グループメンバ端末1−1はローカルデータリストに当該データ用のエントリを新規に作成し、D1をデータIDとして、L1をデータラベルとして、T1,1(=TS,1)を最終参照時刻として、EKM(MG)を暗号化データとして、メンバ端末フォーマットに従って格納する。なお、EKM(MG)の削除は行っても行わなくても良く、設定ファイルなどの設定により選択するようにしても良い。
(Step W3-8) In order to notify the group member terminal 1-1 that the storage process in step W3-7 has been completed, the
(Step W3-9) after receiving the ACK message from the
[共有データ保存処理:共有データ更新保存(鍵更新あり)]
次に、鍵の更新がある場合での本実施形態での更新保存の処理について図22を参照して説明する。図22は、本実施形態において、グループメンバ端末1−1がストレージサーバ2にグループ共有データを保存する処理動作を示したシーケンス図である。
[Shared data storage processing: Shared data update storage (with key update)]
Next, update storage processing in the present embodiment when there is a key update will be described with reference to FIG. FIG. 22 is a sequence diagram illustrating a processing operation in which the group member terminal 1-1 stores group shared data in the
(ステップW3a−1)グループメンバ端末1−1を使用するユーザは、グループメンバ端末1−1を操作して、グループメンバ端末1−1に共有データMG’を用意する。また、MG’のファイル名をデータラベルL1とする。
(ステップW3a−2)鍵カプセル化技術を用いて、グループメンバ端末1−1はpkGから暗号鍵KM’と鍵復号用情報C0,1’とを生成する。
(Step W3a-1) The user who uses the group member terminal 1-1 operates the group member terminal 1-1 to prepare the shared data M G ′ on the group member terminal 1-1. In addition, the file name of M G 'with the data label L 1.
(Step W3a-2) Using the key encapsulation technique, the group member terminal 1-1 generates the encryption key K M ′ and key decryption information C 0,1 ′ from pk G.
(ステップW3a−3)共通鍵暗号により、グループメンバ端末1−1は、KM’を用いて共有データMG’を暗号化する。暗号化後の共有データ(暗号化データ)はEKM’(MG’)とする。暗号化完了後、グループメンバ端末1−1はグループメンバ端末1−1が記憶するMG’を削除する。
(ステップW3a−4)グループメンバ端末1−1は、マスターシェアMS1を用いてKM’に対応する暗号鍵シェアSKM,1’を生成する。暗号鍵シェアSKM,1’の生成方法は、ステップW3−4と同様である。
(Step W3a-3) By the common key encryption, the group member terminal 1-1 encrypts the shared data M G ′ using K M ′. The encrypted shared data (encrypted data) is E KM ′ (M G ′). After completing the encryption, the group member terminal 1-1 deletes M G ′ stored in the group member terminal 1-1.
(Step W3a-4) group member terminal 11, generates the 'encryption key shares S KM, 1 corresponding to' K M using the master share MS 1. The method for generating the encryption key share S KM, 1 ′ is the same as in step W3-4.
(ステップW3a−5)グループメンバ端末1−1は、ユーザに対してユーザ認証用情報の入力を促し、ユーザからの認証情報の入力を受け付ける。ユーザ認証用情報は、ユーザID(UID)と認証情報(PN)である。認証情報は例えば暗証番号である。 (Step W3a-5) The group member terminal 1-1 prompts the user to input information for user authentication, and accepts input of authentication information from the user. The user authentication information is a user ID (UID) and authentication information (PN). The authentication information is, for example, a password.
(ステップW3a−6)グループメンバ端末1−1は、グループメンバ端末1−1が持つID(ID1)と、EKM’(MG’)と、C0,1’と、L1と、SKM,1’と、UIDと、PNとをストレージサーバ2に送付する。
(ステップW3a−7)ストレージサーバ2は、グループメンバ端末1−1より送信されたUIDとPNとの組と、予め記憶しているUIDとPNとの組とが一致するか否か照合する。一致した場合、ストレージサーバ2は当該データにデータID(D1)を割り当てる。また、ストレージサーバ2はID1と、L1と、EKM’(MG’)と、C0,1’と、SKM,1’と、D1と、最終更新時刻(TS,1’)とをストレージサーバフォーマットのフォーマットに従ってストレージサーバ2の記憶部に格納する。最新更新時刻(TS,1’)は、当該格納時の時刻である。
(Step W3a-6) group member terminal 11, the ID of the group member terminal 1-1 has (ID 1), E KM and '(M G'), and C 0, 1 ', and L 1, S KM, 1 ′, UID, and PN are sent to the
(Step W3a-7) The
(ステップW3a−8)ステップW3a−7での格納処理が終了したことをグループメンバ端末1−1に通知するために、ストレージサーバ2はACK(アック、Acknowledgement)メッセージをユーザ端末1に送信する。ACKメッセージにはD1とTS,1’とが含まれる。
(ステップW3a−9)ストレージサーバ2からACKメッセージを受信した後、グループメンバ端末1−1はグループメンバ端末1−1が記憶するKMとC0,1’とSKM,1’とを削除する。また、グループメンバ端末1−1はローカルデータリストに当該データ用のエントリを新規に作成し、D1をデータIDとして、L1をデータラベルとして、T1,1’(=TS,1’)を最終参照時刻として、EKM’(MG’)を暗号化データとして、メンバ端末フォーマットに従って格納する。なお、EKM’(MG’)の削除は行っても行わなくても良く、設定ファイルなどの設定により選択するようにしても良い。
(ステップW3a−10)ストレージサーバ2は、SKM,1とSKM,1’に基づいて、MGに関して他のユーザ(IDi)が使用する暗号鍵シェアSKM,iをSKM,i’に更新する。暗号鍵シェアSKM,i’は以下の(24)式を用いて生成する。ここで、X1=h(ID1)は、グループメンバ端末1−1のマスターシェアMS1のx座標、Xi=h(IDi)は、グループメンバ端末iのマスターシェアMSiのx座標、XKM,iは暗号鍵シェアSKM,iのx座標である。
(Step W3a-8) The
(Step W3a-9) after receiving the ACK message from the
(Step W3a-10) The storage server 2, S KM, based on 1 and S KM, 1 ', the encryption key shares S KM another user (ID i) is used with respect to M G, a i S KM, i Update to '. The encryption key share S KM, i ′ is generated using the following equation (24). Here, X 1 = h (ID 1 ) is the x coordinate of the master share MS 1 of the group member terminal 1-1, and X i = h (ID i ) is the x coordinate of the master share MS i of the group member terminal i. , X KM, i is the x coordinate of the encryption key share S KM, i .
[共有データ保存処理:共有データ更新保存(鍵更新なし)]
次に、鍵の更新がない場合での本実施形態での共有データの更新保存の処理について説明する。鍵の更新がない場合での本実施形態での共有データの更新保存の処理動作は、第1の実施形態の鍵の更新がない場合での共有データの更新保存の処理動作と同様に行う。
[Shared data storage processing: Shared data update storage (no key update)]
Next, shared data update storage processing in the present embodiment when there is no key update will be described. The shared data update storage processing operation in the present embodiment when there is no key update is performed in the same manner as the shared data update storage processing operation in the first embodiment when there is no key update.
[共有データ参照処理(新規参照)]
次に、グループメンバ端末1−1がストレージサーバ2に登録した共有データを、グループメンバ端末1−2が初めて参照する際の処理について図23を参照して説明する。図23は、本実施形態において、グループメンバ端末1−1がストレージサーバ2に登録した共有データを、グループメンバ端末1−2が初めて参照する際の処理動作を示したシーケンス図である。
[Shared data reference processing (new reference)]
Next, processing when the group member terminal 1-2 refers to the shared data registered in the
(ステップR3−0)ストレージサーバ2はグループメンバ端末1−1とグループメンバ端末1−2とにデータリストを送付する。例えば、データリスト送付のタイミングは、データリストの更新がある度に送信しても良い。また、ユーザ端末からデータアクセス要求があった場合のみ送信しても良い。
(Step R3-0) The
(ステップR3−1)グループメンバ端末1−2は、ユーザから共有データの参照要求の入力を受け付ける。続いて、グループメンバ端末1−2は、ユーザに対してユーザ認証用情報の入力を促し、ユーザからの認証情報の入力を受け付ける。ユーザ認証用情報は、ユーザID(UID)と認証情報(PN)である。認証情報は例えば暗証番号である。 (Step R3-1) The group member terminal 1-2 receives an input of a reference request for shared data from the user. Subsequently, the group member terminal 1-2 prompts the user to input user authentication information, and accepts input of authentication information from the user. The user authentication information is a user ID (UID) and authentication information (PN). The authentication information is, for example, a password.
(ステップR3−2)グループメンバ端末1−2は、参照するデータMGのデータID(D1)と、グループメンバ端末1−2が持つID(ID2)と、UIDと、PNとをデータ要求メッセージとしてストレージサーバ2に送付する。
(Step R3-2) group member terminal 1-2, the data ID of the reference data M G (D 1), the ID of the group member terminal 1-2 has (ID 2), UID and data and a PN The message is sent to the
(ステップR3−3)ストレージサーバ2は、グループメンバ端末1−2より送信されたUIDとPNの組と、予め記憶しているUIDとPNとの組とが一致するか否か照合する。一致した場合、ストレージサーバ2は、C0,1と、sk2,Sとを用いて鍵復元用情報C1,1=C0,1 W1を生成する。なお、鍵復元用情報の生成方法は、ステップR1−3と同様である。
(Step R3-3) The
(ステップR3−4)ストレージサーバ2は、D1と、EKM(MG)と、最終更新時刻(TS,1)と、C0,1と、C1,1とをグループメンバ端末1−2に送付する。
(ステップR3−5)グループメンバ端末1−2は、sk2,Uと、C0,1と、C1,1とを用いてKMを復元する。なお、KMの復元方法は、ステップR1−5と同様である。
(Step R3-4) the
(Step R 35) group member terminal 1-2, restores the K M with the sk 2, U, and C 0, 1, and C 1, 1. Incidentally, restoration method of K M is the same as step R1-5.
(ステップR3−6)グループメンバ端末1−2は、KMを用いてEKM(MG)を復号し、MGを取得する。
(ステップR3−7)グループメンバ端末1−2は、マスターシェアMS2を用いてKMに対応する暗号化シェアSKM,2を生成する。
(Step R3-6) group member terminal 1-2 uses the K M decrypts the E KM (M G), to obtain the M G.
(Step R3-7) group member terminal 1-2, to generate an encrypted share S KM, 2 corresponding to the K M using the master share MS 2.
(ステップR3−8)グループメンバ端末1−2は、D1と、ID2と、SKM,2とをストレージサーバ2に送付する。また、MGの参照後、グループメンバ端末1−2はKMと、MGと、C0,1と、C1,1と、SKM,2とを削除する。また、ローカルデータリストの当該データ用のエントリに、D1をデータIDとして、L1をデータラベルとして、T2,1(=TS,1)を最終参照時刻として、EKM(MG)を暗号化データとして、メンバ端末フォーマットに従って格納する。なお、EKM(MG)の削除は行っても行わなくても良く、設定ファイルなどの設定により選択するようにしても良い。
(Step R3-8) group member terminal 1-2, and D 1, and ID 2, sends the S KM, 2 to the
[共有データ参照処理(再参照)]
次に、グループメンバ端末1−1がストレージサーバ2に登録した共有データを、グループメンバ端末1−2が再度参照する際の処理について図24を参照して説明する。図24は、本実施形態において、グループメンバ端末1−1がストレージサーバ2に登録した共有データを、グループメンバ端末1−2が再度参照する際の処理動作を示したシーケンス図である。
[Shared data reference processing (re-reference)]
Next, processing when the group member terminal 1-2 refers again to the shared data registered in the
(ステップR3a−0)ストレージサーバ2はグループメンバ端末1−1とグループメンバ端末1−2とにデータリストを送付する。例えば、データリスト送付のタイミングは、データリストの更新がある度に送信しても良い。また、ユーザ端末からデータアクセス要求があった場合のみ送信しても良い。
(Step R3a-0) The
(ステップR3a−1)グループメンバ端末1−2は、ユーザから共有データの参照要求の入力を受け付ける。続いて、グループメンバ端末1−2は、ユーザに対してユーザ認証用情報の入力を促し、ユーザからの認証情報の入力を受け付ける。ユーザ認証用情報は、ユーザID(UID)と認証情報(PN)である。認証情報は例えば暗証番号である。 (Step R3a-1) The group member terminal 1-2 receives an input of a shared data reference request from the user. Subsequently, the group member terminal 1-2 prompts the user to input user authentication information, and accepts input of authentication information from the user. The user authentication information is a user ID (UID) and authentication information (PN). The authentication information is, for example, a password.
(ステップR3a−2)グループメンバ端末1−2は、参照するデータMGのデータID(D1)と、グループメンバ端末1−2が持つID(ID2)と、UIDと、PNと、当該データの最終参照時刻(T2,1)とをデータ要求メッセージとしてストレージサーバ2に送付する。なお、グループメンバ端末内の暗号化データEKM(MG)の有無を知らせる情報をデータ要求メッセージ内に追加しても良い。
(Step R3a-2) group member terminal 1-2, the data ID of the data M G reference (D 1), the ID of the group member terminal 1-2 has (ID 2), the UID, the PN, the The data last reference time (T 2,1 ) is sent to the
(ステップR3a−3)ストレージサーバ2は、グループメンバ端末1−2より送信されたUIDとPNの組と、予め記憶しているUIDとPNとの組とが一致するか否か照合する。一致した場合、ストレージサーバ2は、暗号鍵シェアSKM,2と、EKM(MG)と、最終更新時刻(TS,1)とをグループメンバ端末1−2に送付する。なお、ステップR3a−2で要求メッセージ内に「グループメンバ端末内に暗号化データ有」を知らせる情報が付加されており、なおかつ当該データの更新がない場合はEKM(MG)を送付しない処理としても良い。ここで、当該データの更新の有無の判定方法として、例えば、グループメンバ端末1−iより送られた最終参照時刻(Ti,1)と、ストレージサーバ2内に格納されている最終更新時刻(TS,1)とを比較し、値が異なっている場合は更新されたと判定する方法がある。
(Step R3a-3) The
(ステップR3a−4)グループメンバ端末1−2は、SKM,2と、MS2とを用いてKMを復元する。
(ステップR3a−5)グループメンバ端末1−2は、KMを用いてEKM(MG)を復号し、MGを取得する。
(ステップR3a−6)MGの参照後、グループメンバ端末1−2はKMと、MGと、SKM,2とを削除する。また、ローカルデータリストの当該データ用のエントリに、T2,1(=TS,1)を最終参照時刻としてメンバ端末フォーマットに従って格納する。なお、EKM(MG)の削除は行っても行わなくても良く、設定ファイルなどの設定により選択するようにしても良い。
(Step R3a-4) group member terminal 1-2, restores the K M with the S KM, 2, and MS 2.
(Step R3a-5) group member terminal 1-2 uses the K M decrypts the E KM (M G), to obtain the M G.
(Step R3a-6) after reference M G, group member terminal 1-2 deletes the K M, and M G, and S KM, 2. Further, T 2,1 (= T S, 1 ) is stored in the entry for the data in the local data list as the last reference time according to the member terminal format. Note that E KM (M G ) may or may not be deleted, and may be selected by setting a setting file or the like.
[環境移行処理]
次に、グループメンバ端末1−2が紛失され、グループメンバ端末1−2の環境をグループメンバ端末1−3に移行する手順について図25を参照して説明する。図25は、本実施形態において、グループメンバ端末1−2の環境をグループメンバ端末1−3に移行する処理動作を示したシーケンス図である。
[Environment migration process]
Next, a procedure for shifting the environment of the group member terminal 1-2 to the group member terminal 1-3 when the group member terminal 1-2 is lost will be described with reference to FIG. FIG. 25 is a sequence diagram showing a processing operation for shifting the environment of the group member terminal 1-2 to the group member terminal 1-3 in the present embodiment.
(ステップRE3−1)グループメンバ端末1−3は、グループメンバ端末1−2の紛失と、グループメンバ端末1−2の環境をグループメンバ端末1−3へ移行する要求とを認証局3に通知する。また、グループメンバ端末1−3は、ステップP3−4dで外部デバイスに保管したSMS,2,1を取得する。
(Step RE3-1) The group member terminal 1-3 notifies the
(ステップRE3−2)認証局3は、グループメンバ端末1−3より端末移行情報を受信する。続いて認証局3は、グループメンバ端末1−3用の分割鍵sk’2,Uと分割鍵sk’2,Sとを生成する。生成方法は、ステップP1−2と同様である。
(ステップRE3−3)認証局3は、分割鍵sk’2,Uと公開鍵pkGとをグループメンバ端末1−3に送付する。また、認証局3は、分割鍵sk’2,Sをストレージサーバ2に送付する。ストレージサーバ2は、分割鍵sk’2,Sを受信後、グループメンバ端末1−2用の分割鍵sk2,Sを削除する。
(Step RE3-2) The
(Step RE3-3) The
(ステップRE3−4)ストレージサーバ2は分割シェアS’MS,2,2を生成し、それをグループメンバ端末1−3へ送付する。分割シェアS’MS,i,2は以下の(25)式を用いて生成する。ここで、gj(x)=bjx(bjは乱数)である。
(Step RE3-4) The
グループメンバ端末1−3は、S’MS,2,2と、SMS,2,1とよりMS3を生成する。なお、MS3は以下の式(26)を満たす。 The group member terminal 1-3 generates MS 3 from S ′ MS, 2,2 and SMS, 2,1 . MS 3 satisfies the following formula (26).
(ステップRE3−5)認証局3は、グループメンバ端末1−2の環境をグループメンバ端末1−3に移行したことをストレージサーバ2に通知する。
(Step RE3-5) The
以上、第3の実施形態について説明したとおり、本実施形態では、暗号鍵を生成する基の情報であるマスターシェアと呼ばれる情報をグループメンバ端末内に生成し、生成したマスターシェアを用いて暗号鍵と暗号鍵シェアを生成する形態とした。また、グループメンバ端末が暗号鍵を変更して共有データを更新保存した場合、更新された暗号鍵の情報に基づいて、ストレージサーバはステップW3a−10にて、ストレージサーバが記憶する全グループメンバ端末の暗号鍵シェアを更新する。よって、グループメンバ端末が暗号鍵を変更して共有データを更新保存した後に、他のグループメンバ端末が一度参照したデータを再度参照するときには、再度鍵カプセル化技術による鍵復元を行わずに秘密分散法による鍵復元を利用することができる。 As described above with respect to the third embodiment, in the present embodiment, information called a master share, which is basic information for generating an encryption key, is generated in a group member terminal, and an encryption key is generated using the generated master share. The encryption key share is generated. Further, when the group member terminal changes the encryption key and updates and saves the shared data, the storage server stores all group member terminals stored in the storage server in step W3a-10 based on the updated encryption key information. Update the encryption key share for. Therefore, after the group member terminal changes the encryption key and updates and saves the shared data, when the group member terminal refers to the data once referenced again, the secret sharing is performed without performing the key restoration again by the key encapsulation technique. Key recovery by law can be used.
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。 The embodiment of the present invention has been described in detail with reference to the drawings. However, the specific configuration is not limited to this embodiment, and includes designs and the like that do not depart from the gist of the present invention.
なお、ステップR2−3の鍵更新判定には、暗号鍵のハッシュ値HK=h(KM)を用いて判定してもよい。具体的には、グループメンバ端末は、データ保存処理時にハッシュ値を生成し、ストレージサーバ2に送信する。その後、データ参照処理時において、グループメンバ端末は、ステップR2−2で暗号鍵のハッシュ値をストレージサーバ2に送付する。ストレージサーバ2はデータ保存処理時の暗号鍵のハッシュ値と、ステップR2−2の暗号鍵のハッシュ値とを比較し、一致した場合は暗号鍵の更新がないと判断しても良い。
The key update determination in step R2-3 may be performed using the hash value HK = h (KM) of the encryption key. Specifically, the group member terminal generates a hash value during data storage processing and transmits it to the
また、上述した実施形態におけるグループメンバ端末の暗号鍵生成機能、送信機能、受信機能、暗号鍵復元機能、復号機能、更新情報受信機能、分割鍵更新機能、シェア生成機能の各処理機能全体あるいはその一部、ストレージサーバの受信機能、記憶機能、鍵復元用情報生成機能、送信機能、分割鍵更新機能の各処理機能全体あるいはその一部、認証局のグループ鍵生成機能、分散鍵生成機能、分散鍵分割機能、鍵配布機能、受信機能、分割鍵更新情報生成機能、更新情報配布機能の各処理機能全体あるいはその一部は、これらの機能実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現しても良い。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。 In addition, the entire processing functions of the encryption key generation function, transmission function, reception function, encryption key restoration function, decryption function, update information reception function, split key update function, share generation function of the group member terminal in the above-described embodiment or its Part of storage server reception function, storage function, key recovery information generation function, transmission function, split key update function as a whole or part of it, certificate authority group key generation function, distributed key generation function, distributed All or some of the processing functions of the key splitting function, key distribution function, receiving function, split key update information generation function, and update information distribution function are recorded on a computer-readable recording medium. Then, the program recorded on the recording medium may be read by the computer system and executed. Here, the “computer system” includes an OS and hardware such as peripheral devices.
また、「コンピュータシステム」は、WWWシステムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してコンピュータプログラムを送信する場合の通信線のように、短時間の間、動的にコンピュータプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間コンピュータプログラムを保持しているものも含むものとする。また上記コンピュータプログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているコンピュータプログラムとの組み合わせで実現できるものであっても良い。
Further, the “computer system” includes a homepage providing environment (or display environment) if a WWW system is used.
The “computer-readable recording medium” refers to a storage device such as a flexible medium, a magneto-optical disk, a portable medium such as a ROM and a CD-ROM, and a hard disk incorporated in a computer system. Further, the “computer-readable recording medium” refers to a computer program that is dynamically stored for a short time, such as a communication line when a computer program is transmitted via a network such as the Internet or a communication line such as a telephone line. What is held, and what holds a computer program for a certain period of time, such as volatile memory inside a computer system serving as a server or client in that case, are included. Further, the computer program may be for realizing a part of the functions described above, and may be implemented in combination with a computer program already recorded in the computer system. good.
1−1〜1−N・・・グループメンバ端末、2・・・ストレージサーバ、3・・・認証局、4・・・通信ネットワーク 1-1 to 1-N: Group member terminals, 2 ... Storage server, 3 ... Certificate authority, 4 ... Communication network
Claims (4)
公開鍵と秘密鍵を生成するグループ鍵生成部と、
第1の分散鍵と第2の分散鍵とからなる1組の分散鍵から前記秘密鍵を生成することが可能な分散鍵の組を生成する方法である秘密分散法を用いて、前記秘密鍵を生成することが可能な前記第1の分散鍵と前記第2の分散鍵との組をN組生成する分散鍵生成部と、
前記分散鍵生成部で生成したN組の前記分散鍵の組に含まれるN個の前記第1の分散鍵をN台の前記端末装置に1個ずつ配布し、N台の前記端末装置それぞれに前記公開鍵を配布し、N組の前記分散鍵の組に含まれるN個の前記第2の分散鍵を前記ストレージサーバに配布する鍵配布部と、
移行元端末装置の環境の移行先の端末装置である移行先端末装置を一意に特定する移行先端末装置情報を含む端末装置移行情報を受信する受信部と、
を備え、
前記受信部が前記端末装置移行情報を受信した際に、前記分散鍵生成部は、前記第1の分散鍵と前記第2の分散鍵との組を1組生成し、
前記鍵配布部は、前記分散鍵生成部で生成した1組の前記分散鍵の組に含まれる1個の前記第1の分散鍵と前記公開鍵とを前記移行先端末装置に配布し、前記分散鍵生成部で生成した1組の前記分散鍵の組に含まれる1個の前記第2の分散鍵を前記ストレージサーバに配布する
ことを特徴とする鍵生成装置。 In the key generation device included in a data sharing system comprising a storage server for storing encrypted shared data, N (N is an integer of 1 or more) terminal devices, and a key generation device,
A group key generation unit for generating a public key and a secret key;
Using the secret sharing method, which is a method of generating a set of distributed keys capable of generating the secret key from a set of distributed keys consisting of a first distributed key and a second distributed key, the secret key A distributed key generation unit that generates N sets of the first distributed key and the second distributed key capable of generating
The N first distributed keys included in the N sets of distributed keys generated by the distributed key generation unit are distributed to N terminal devices one by one, and each of the N terminal devices is distributed. A key distribution unit that distributes the public key and distributes the N second distributed keys included in the N sets of distributed keys to the storage server;
A receiving unit that receives terminal device migration information including migration destination terminal device information that uniquely identifies a migration destination terminal device that is a migration destination terminal device in the environment of the migration source terminal device;
With
When the receiving unit receives the terminal device transition information, the distributed key generation unit generates one set of the first distributed key and the second distributed key,
The key distribution unit distributes the first shared key and the public key included in the set of distributed keys generated by the distributed key generation unit to the migration destination terminal device, and A key generation device that distributes one second distributed key included in a set of the distributed keys generated by a distributed key generation unit to the storage server .
前記鍵生成装置が移行元端末装置の環境の移行先の端末装置である移行先端末装置を一意に特定する移行先端末装置情報を含む端末装置移行情報を受信した際に生成した、移行元端末装置の環境の移行先の端末装置である移行先端末装置に配布する第1の分散鍵と前記ストレージサーバに配布する第2の分散鍵との組に含まれる当該第2の分散鍵を前記鍵生成装置より受信し、前記移行先端末装置より暗号化された共有データと第1の鍵復元用情報とを受信する受信部と、
前記受信部が受信した前記共有データと前記第1の鍵復元用情報とを関連付けて記憶し、前記受信部が受信した前記第2の分散鍵を記憶する記憶部と、
前記受信部が前記移行先端末装置より前記第1の鍵復元用情報を受信した場合、当該移行先端末装置に対応する前記第2の分散鍵を特定し、当該第1の鍵復元用情報と、特定した当該第2の分散鍵とに基づいて、第2の鍵復元用情報を生成する鍵復元用情報生成部と、
暗号化された共有データと、前記第1の鍵復元用情報と、前記第2の鍵復元用情報とを前記移行先端末装置に送信する送信部と、
を備えたことを特徴とするストレージサーバ。 In a storage server included in a data sharing system including a storage server, a terminal device, and a key generation device,
The migration source terminal generated when the key generation device receives the terminal device migration information including the migration destination terminal device information that uniquely identifies the migration destination terminal device that is the migration destination terminal device of the environment of the migration source terminal device The second distributed key included in the set of the first distributed key distributed to the transfer destination terminal device that is the transfer destination terminal device of the environment of the device and the second distributed key distributed to the storage server is the key. a receiving unit generator by and Ri受 signal, receives the encrypted shared data and the first key recovery information from said destination terminal device,
A storage unit that stores the shared data received by the receiving unit in association with the first key recovery information, and stores the second distributed key received by the receiving unit;
When the receiving unit receives the first key recovery information from the transfer destination terminal device, the second shared key corresponding to the transfer destination terminal device is identified, and the first key recovery information and A key recovery information generation unit that generates second key recovery information based on the identified second distributed key;
A transmitting unit that transmits the encrypted shared data, the first key recovery information, and the second key recovery information to the destination terminal device;
A storage server comprising:
前記演算処理部が公開鍵と秘密鍵を生成するグループ鍵生成ステップと、
前記演算処理部が第1の分散鍵と第2の分散鍵とからなる1組の分散鍵から前記秘密鍵を生成することが可能な分散鍵の組を生成する方法である秘密分散法を用いて、前記秘密鍵を生成することが可能な前記第1の分散鍵と前記第2の分散鍵との組をN組(Nは1以上の整数)生成する分散鍵生成ステップと、
前記分散鍵生成ステップで前記演算処理部が生成したN組の前記分散鍵の組に含まれるN個の前記第1の分散鍵を前記通信部がN台の前記端末装置に1個ずつ送信し、N台の前記端末装置それぞれに前記通信部が前記公開鍵を送信し、N組の前記分散鍵の組に含まれるN個の前記第2の分散鍵を前記通信部が前記ストレージサーバに送信する鍵配布ステップと、
移行元端末装置の環境の移行先の端末装置である移行先端末装置を一意に特定する移行先端末装置情報を含む端末装置移行情報を前記通信部が受信する受信ステップと、
を実行させ、
前記受信ステップで前記通信部が端末装置移行情報を受信した際に、前記分散鍵生成ステップでは、前記演算処理部が前記第1の分散鍵と前記第2の分散鍵との組を1組生成し、
前記鍵配布ステップでは、前記分散鍵生成ステップで前記演算処理部が生成した1組の前記分散鍵の組に含まれる1個の前記第1の分散鍵と前記公開鍵とを前記通信部が前記移行先端末装置に送信し、前記分散鍵生成ステップで前記演算処理部が生成した1組の前記分散鍵の組に含まれる1個の前記第2の分散鍵を前記通信部が前記ストレージサーバに送信する
ことを特徴とするプログラム。 In a computer equipped with an arithmetic processing unit and a communication unit,
A group key generating step in which the arithmetic processing unit generates a public key and a secret key;
A secret sharing method is used in which the arithmetic processing unit generates a set of distributed keys that can generate the secret key from a set of distributed keys composed of a first distributed key and a second distributed key. A distributed key generation step of generating N sets (N is an integer of 1 or more) of the first distributed key and the second distributed key capable of generating the secret key;
The communication unit transmits N pieces of the first distributed keys included in the N sets of distributed keys generated by the arithmetic processing unit in the distributed key generation step to the N terminal devices one by one. the transmitted communication unit said public key to each N number of the terminal device, transmitting the N number of the second distributed key contained in the N sets of the set of distributed key the communication unit in the storage server Key distribution step to perform,
A receiving step in which the communication unit receives terminal device migration information including migration destination terminal device information that uniquely identifies a migration destination terminal device that is a migration destination terminal device in the environment of the migration source terminal device;
And execute
When the communication unit receives the terminal device transition information in the receiving step, in the distributed key generation step, the arithmetic processing unit generates one set of the first distributed key and the second distributed key And
In the key distribution step, the communication unit transmits the first distributed key and the public key included in the set of the distributed keys generated by the arithmetic processing unit in the distributed key generation step. The communication unit transmits to the storage server one second distributed key included in one set of the distributed key that is transmitted to the transfer destination terminal device and generated by the arithmetic processing unit in the distributed key generation step. Send
A program characterized by that .
鍵生成装置が移行元端末装置の環境の移行先の端末装置である移行先端末装置を一意に特定する移行先端末装置情報を含む端末装置移行情報を受信した際に生成した、移行元端末装置の環境の移行先の端末装置である移行先端末装置に配布する第1の分散鍵と前記ストレージサーバに配布する第2の分散鍵との組に含まれる当該第2の分散鍵を前記通信部が前記鍵生成装置より受信し、前記移行先端末装置より暗号化された共有データと第1の鍵復元用情報とを前記通信部が受信する受信ステップと、
前記受信ステップで前記通信部が受信した前記共有データと前記第1の鍵復元用情報とを前記記憶部が関連付けて記憶し、前記受信ステップで受信した前記第2の分散鍵を前記記憶部が記憶する記憶ステップと、
前記通信部が前記移行先端末装置より前記第1の鍵復元用情報を受信した場合、前記記憶部が記憶する前記第2の分散鍵のうち当該移行先端末装置に対応する前記第2の分散鍵を特定し、当該第1の鍵復元用情報と、特定した当該第2の分散鍵とに基づいて、第2の鍵復元用情報を生成する鍵復元用情報生成ステップと、
暗号化された共有データと、前記第1の鍵復元用情報と、前記第2の鍵復元用情報とを前記移行先端末装置に前記通信部が送信する送信ステップと、
をコンピュータに実行させるためのプログラム。 In a computer equipped with an arithmetic processing unit, a communication unit, and a storage unit,
The source terminal device generated when the key generation device receives the terminal device migration information including the destination device information that uniquely identifies the destination device that is the destination device in the environment of the source terminal device. The second shared key included in the set of the first distributed key distributed to the transfer destination terminal device that is the transfer destination terminal device of the environment and the second distributed key distributed to the storage server is the communication unit. a receiving step but the key generating apparatus by then Ri受 signal, for receiving said destination terminal shared data and the first key recovery information encrypted by the device is the communication unit,
Storing said reception step in said shared data and said first key recovery information to the communication unit has received said storage unit is associated with the storage unit the second distributed key received by the receiving step A storage step for storing;
When the communication unit receives the first key recovery information from the transfer destination terminal device, the second distribution corresponding to the transfer destination terminal device among the second distributed keys stored in the storage unit identify key, and the first key recovery information, identified based on the said second distributed key, and the key recovery information generating step of generating a second key recovery information,
A transmission step in which the communication unit transmits the encrypted shared data, the first key recovery information, and the second key recovery information to the migration destination terminal device;
A program that causes a computer to execute.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2007276380A JP5046852B2 (en) | 2007-10-24 | 2007-10-24 | Key generation device, terminal device, storage server, and computer program |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2007276380A JP5046852B2 (en) | 2007-10-24 | 2007-10-24 | Key generation device, terminal device, storage server, and computer program |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2009103968A JP2009103968A (en) | 2009-05-14 |
| JP5046852B2 true JP5046852B2 (en) | 2012-10-10 |
Family
ID=40705693
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2007276380A Expired - Fee Related JP5046852B2 (en) | 2007-10-24 | 2007-10-24 | Key generation device, terminal device, storage server, and computer program |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP5046852B2 (en) |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP7077873B2 (en) | 2018-08-29 | 2022-05-31 | 日本電気株式会社 | Information processing equipment, information processing methods, and programs |
| JP2024013488A (en) * | 2022-07-20 | 2024-02-01 | 株式会社シーイーシー | Scan service system, scan service method and computer program |
| CN115987691B (en) * | 2023-03-20 | 2023-06-16 | 成都蓝瑟回音文化传媒有限公司 | Mobile application management system and method based on cloud computing and pervasive computing |
Family Cites Families (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH10177341A (en) * | 1996-07-26 | 1998-06-30 | Nippon Telegr & Teleph Corp <Ntt> | Secret key escrow method and system in RSA encryption |
| JP3662828B2 (en) * | 2000-10-04 | 2005-06-22 | 北陸日本電気ソフトウェア株式会社 | File encryption system |
| JP2004048479A (en) * | 2002-07-12 | 2004-02-12 | Kddi Corp | Encryption key management method for shared encrypted information |
| JP4521514B2 (en) * | 2004-03-30 | 2010-08-11 | 独立行政法人情報通信研究機構 | Medical information distribution system, information access control method thereof, and computer program |
| JP2007089100A (en) * | 2005-09-20 | 2007-04-05 | Chaosware Inc | Delivery system of encryption key |
| JP5103095B2 (en) * | 2007-08-28 | 2012-12-19 | Kddi株式会社 | Key generation device, terminal device, storage server, and computer program |
-
2007
- 2007-10-24 JP JP2007276380A patent/JP5046852B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2009103968A (en) | 2009-05-14 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US10601585B1 (en) | Methods and apparatus for blockchain encryption | |
| JP3657396B2 (en) | Key management system, key management apparatus, information encryption apparatus, information decryption apparatus, and storage medium storing program | |
| JP2016158189A (en) | Key change direction control system and key change direction control method | |
| US20110320815A1 (en) | Key Sharing System, Communication Terminal, Management Device, Key Sharing Method, and Computer Program | |
| CN113300999B (en) | Information processing methods, electronic devices and readable storage media | |
| US20210250762A1 (en) | Key generation method, device, and system | |
| JP6592851B2 (en) | Anonymous broadcast method, key exchange method, anonymous broadcast system, key exchange system, communication device, program | |
| CN111404671B (en) | Mobile quantum secure communication method, gateway, mobile terminal and server | |
| JP6058514B2 (en) | Cryptographic processing method, cryptographic system, and server | |
| CN113824713A (en) | Key generation method, system and storage medium | |
| JP5103095B2 (en) | Key generation device, terminal device, storage server, and computer program | |
| JP5046852B2 (en) | Key generation device, terminal device, storage server, and computer program | |
| US11082406B2 (en) | System and method for providing end-to-end security of data and metadata | |
| CN109120576A (en) | Data sharing method and device, computer equipment and storage medium | |
| CN114499836A (en) | Key management method, key management device, computer equipment and readable storage medium | |
| JP7577284B2 (en) | Download terminal, key terminal, and storage server of a storage system for processing encrypted files while keeping a private key secret in the key terminal | |
| CN118041635A (en) | Data encryption method, device, equipment, storage medium and computer product | |
| JP5491713B2 (en) | ENCRYPTION DEVICE, ENCRYPTION PROGRAM, AND METHOD | |
| JP5014977B2 (en) | Terminal device, data management device, and computer program | |
| JP2014017763A (en) | Encryption update system, encryption update request device, encryption update device, decryption device, encryption update method, and computer program | |
| CN119996081B (en) | Information processing method and apparatus, storage medium, and computer program product | |
| KR20070062632A (en) | How to provide mobile message and file security through encryption | |
| JP4104315B2 (en) | Key management system, key management apparatus, information encryption apparatus, information decryption apparatus, and storage medium storing program | |
| JP7721073B2 (en) | Cryptographic system, terminal, and method | |
| JP2015231077A (en) | Re-encryption key registration method, re-encryption device, and re-encryption system |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100716 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20100720 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120321 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120327 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120525 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20120528 |
|
| 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: 20120619 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120717 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150727 Year of fee payment: 3 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| LAPS | Cancellation because of no payment of annual fees |