JP5014977B2 - Terminal device, data management device, and computer program - Google Patents

Terminal device, data management device, and computer program Download PDF

Info

Publication number
JP5014977B2
JP5014977B2 JP2007341082A JP2007341082A JP5014977B2 JP 5014977 B2 JP5014977 B2 JP 5014977B2 JP 2007341082 A JP2007341082 A JP 2007341082A JP 2007341082 A JP2007341082 A JP 2007341082A JP 5014977 B2 JP5014977 B2 JP 5014977B2
Authority
JP
Japan
Prior art keywords
data
terminal
share
encryption key
terminal device
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
Application number
JP2007341082A
Other languages
Japanese (ja)
Other versions
JP2009163415A (en
Inventor
隆志 松中
貴之 蕨野
洋司 岸
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
KDDI Corp
Original Assignee
KDDI Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by KDDI Corp filed Critical KDDI Corp
Priority to JP2007341082A priority Critical patent/JP5014977B2/en
Publication of JP2009163415A publication Critical patent/JP2009163415A/en
Application granted granted Critical
Publication of JP5014977B2 publication Critical patent/JP5014977B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)

Description

本発明は、端末装置、データ管理装置およびコンピュータプログラムに関する。   The present invention relates to a terminal device, a data management device, and a computer program.

従来、情報秘匿技術として、例えば非特許文献1に記載の秘密分散法が知られている。秘密分散法とは、秘密情報を数人で分散して保管することで、元の秘密情報を安全に保管する方法である。非特許文献1に記載の(k, n)閾値秘密分散法は、秘密分散法の一種であり、秘密情報をn個の分割情報(シェア)に分割してそれぞれ保管し、その内のk個以上の分割情報を入手することができれば、元の秘密情報を復元することができるものである。   Conventionally, as an information concealment technique, for example, a secret sharing method described in Non-Patent Document 1 is known. 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 described in Non-Patent Document 1 is a kind of secret sharing method, and the secret information is divided into n pieces of divided information (shares) and stored, and k pieces of them are stored. If the above division information can be obtained, the original secret information can be restored.

また、特許文献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を得る。
A. Shamir,“How to share a secret”,Communications of the ACM,Vol.22,No.11,pp.612-613,1979 特開2005−223953号公報
In the prior art described in Patent Document 1, when certain data is shared, first, the data (M G ) to be shared within the group is encrypted using a common key cryptosystem (E) using an encryption key (K M ). KM (M G )). Then, K M is encrypted (E pk1 (K M ),... With the public key (pk 1 , ..., pk N ) owned by all members (U 1 , ..., U N ) of the group. ., E pkN (K M )), list it, and store it on the server together with E KM (M G ). The group member (U i ) who refers to the data obtains K M (E pki (K M )) and E KM (M G ) encrypted with its own public key (pk i ) from the list, and encrypts it. by decoding using its own secret key (sk i) reduction has been K M, obtaining a K M. Then, E KM (M G ) is decrypted with K M to obtain original data M G.
A. Shamir, “How to share a secret”, Communications of the ACM, Vol. 22, No. 11, pp. 612-613, 1979 Japanese Patent Application Laid-Open No. 2005-223953

しかしながら、特許文献1に記載の技術では、共有データを公開する際に、グループメンバの人数(N)分、すなわちN回公開鍵暗号処理を行う必要があり、データ公開者の処理負荷が大きくなる。又、グループメンバの所有する端末装置が盗難にあうなどし悪意の第三者に使用された場合、共有データの暗号化に使用している秘密鍵が該端末装置から漏洩してしまう可能性がある。この場合、秘密鍵を更新することで漏えい被害を抑えることができるが、共有データ公開時と同様、N回公開鍵暗号処理を行うことになり処理負荷が大きい。   However, in the technique described in Patent Document 1, when sharing data is disclosed, it is necessary to perform public key encryption processing for the number of group members (N), that is, N times, and the processing load on the data publisher increases. . In addition, when a terminal device owned by a group member is stolen or used by a malicious third party, there is a possibility that a secret key used for encrypting shared data may be leaked from the terminal device. is there. In this case, the leakage damage can be suppressed by updating the secret key, but the public key encryption process is performed N times as in the case of sharing data sharing, and the processing load is heavy.

本発明は、このような事情を考慮してなされたもので、その目的は、グループメンバの所有する端末装置から鍵が漏洩するような場合の共有データの安全性確保に貢献すると共に、共有データ公開時などの処理負荷軽減を図ることのできる端末装置、データ管理装置およびコンピュータプログラムを提供することにある。   The present invention has been made in consideration of such circumstances, and its purpose is to contribute to ensuring the safety of shared data when a key leaks from a terminal device owned by a group member, and to share data. It is an object to provide a terminal device, a data management device, and a computer program that can reduce processing load at the time of disclosure.

上記の課題を解決するために、本発明に係る端末装置は、メンバ間でデータを共有するグループに属するメンバの端末装置と、前記端末装置と通信回線を介して接続されるデータ管理装置とを有するデータ共有システムにおける前記端末装置であり、前記グループ内で共通の共通シェア用鍵と自端末固有のマスターシェアとから共通シェアを生成し、該共通シェア及び自己の端末識別子を前記データ管理装置に送り登録要求する端末登録手段と、暗号鍵を用いて共通鍵暗号方式により共有データを暗号化し、該暗号鍵と前記マスターシェアとから暗号鍵シェアを生成し、該暗号化データ、暗号鍵シェア及び自己の端末識別子を前記データ管理装置に送り保存要求するデータ保存手段と、前記データ管理装置から暗号化データ及び自己用の暗号鍵シェアを取得し、該暗号鍵シェア及び前記マスターシェアを用いて暗号鍵を復元し、該暗号鍵を用いて前記データ管理装置から取得した暗号化データを復号するデータ参照手段と、を備えたことを特徴とする。   In order to solve the above problems, a terminal device according to the present invention includes a member terminal device belonging to a group sharing data among members, and a data management device connected to the terminal device via a communication line. The terminal device in the data sharing system having, generating a common share from a common share key common within the group and a master share unique to the own terminal, and the common share and its own terminal identifier to the data management device Terminal registration means for sending registration request, encrypting shared data by a common key cryptosystem using an encryption key, generating an encryption key share from the encryption key and the master share, the encrypted data, encryption key share and Data storage means for sending the terminal identifier of the terminal device to the data management device and requesting storage, encrypted data from the data management device and encryption for own use A data reference means for acquiring a share, restoring the encryption key using the encryption key share and the master share, and decrypting the encrypted data acquired from the data management device using the encryption key; It is characterized by.

本発明に係るデータ管理装置は、メンバ間でデータを共有するグループに属するメンバの端末装置と、前記端末装置と通信回線を介して接続されるデータ管理装置とを有するデータ共有システムにおける前記データ管理装置であり、端末装置から登録要求された共通シェア及び端末識別子を関連付けて記録する端末登録手段と、端末装置から保存要求された暗号化データ、暗号鍵シェア及び端末識別子に関し、暗号化データに対して暗号鍵シェアと端末識別子の組を関連付けて記録するデータ保存手段と、前記端末装置から参照要求された前記データ保存手段に格納される暗号化データと、該要求元の端末装置用の暗号鍵シェアとを該要求元の端末装置に送るデータ参照手段と、を備えたことを特徴とする。   The data management device according to the present invention provides the data management in a data sharing system comprising: a terminal device of a member belonging to a group that shares data between members; and a data management device connected to the terminal device via a communication line A terminal registration unit that records a shared share and a terminal identifier that are requested to be registered by the terminal device, and encrypted data that is requested to be stored by the terminal device, an encryption key share, and a terminal identifier. A data storage unit that records a pair of an encryption key share and a terminal identifier in association with each other, encrypted data stored in the data storage unit requested to be referenced from the terminal device, and an encryption key for the requesting terminal device Data reference means for sending the share to the requesting terminal device.

本発明に係るデータ管理装置において、前記データ参照手段は、データ参照要求元の端末装置用の暗号鍵シェアが参照対象の暗号化データに関連付けて記録されていない場合、参照対象の暗号化データに関連付けて記録されている任意の端末装置用の暗号鍵シェア及び該端末装置の共通シェア、並びにデータ参照要求元の端末装置の共通シェアから、データ参照要求元の端末装置用の暗号鍵シェアを生成し、該データ参照要求元の端末装置用の暗号鍵シェアを参照対象の暗号化データに関連付けて記録することを特徴とする。   In the data management device according to the present invention, when the encryption key share for the terminal device of the data reference request source is not recorded in association with the encrypted data to be referred to, the data reference means stores the encrypted data to be referred to Generates the encryption key share for the terminal device of the data reference request source from the encryption key share for the arbitrary terminal device recorded in association with the common share of the terminal device and the common share of the terminal device of the data reference request source The encryption key share for the terminal device that is the data reference request source is recorded in association with the encrypted data to be referred to.

本発明に係る端末装置において、暗号鍵を用いて共通鍵暗号方式により更新対象の共有データを暗号化し、該暗号鍵と前記マスターシェアとから暗号鍵シェアを生成し、該暗号化データ、暗号鍵シェア及び自己の端末識別子を前記データ管理装置に送り更新要求するデータ更新手段を備えたことを特徴とする。   In the terminal device according to the present invention, the shared data to be updated is encrypted by the common key encryption method using the encryption key, the encryption key share is generated from the encryption key and the master share, the encrypted data, the encryption key Data update means for sending a share and its own terminal identifier to the data management device and requesting an update is provided.

本発明に係るデータ管理装置において、前記端末装置から受け取った更新対象の暗号化データ、暗号鍵シェア及び端末識別子によって更新対象の保存データを書き換えるデータ更新手段を備えたことを特徴とする。   The data management device according to the present invention is characterized by comprising data updating means for rewriting the storage data to be updated with the encrypted data to be updated, encryption key share and terminal identifier received from the terminal device.

本発明に係るデータ管理装置において、前記データ更新手段は、更新対象の暗号化データに関連付けて記録されている未更新の暗号鍵シェアを、更新後の暗号鍵に対応する暗号鍵シェアに更新することを特徴とする。   In the data management apparatus according to the present invention, the data updating unit updates an unupdated encryption key share recorded in association with the encrypted data to be updated to an encryption key share corresponding to the updated encryption key. It is characterized by that.

本発明に係るデータ管理装置において、前記データ更新手段は、前記暗号鍵シェアの更新をまとめて行うことを特徴とする。   In the data management apparatus according to the present invention, the data update means collectively updates the encryption key share.

本発明に係るデータ管理装置において、前記データ更新手段は、前記暗号鍵シェアの更新を、端末装置毎にデータ参照時に行うことを特徴とする。   In the data management device according to the present invention, the data update means updates the encryption key share at the time of data reference for each terminal device.

本発明に係るデータ管理装置において、前記グループに属するメンバの端末装置として失効した端末装置に関するデータを全て消去する環境移行手段を備えたことを特徴とする。   The data management device according to the present invention is characterized in that it comprises an environment transition means for erasing all data relating to terminal devices that have expired as terminal devices of members belonging to the group.

本発明に係るコンピュータプログラムは、メンバ間でデータを共有するグループに属するメンバの端末装置と、前記端末装置と通信回線を介して接続されるデータ管理装置とを有するデータ共有システムの前記端末装置におけるデータ共有処理を行うためのコンピュータプログラムであって、前記グループ内で共通の共通シェア用鍵と自端末固有のマスターシェアとから共通シェアを生成し、該共通シェア及び自己の端末識別子を前記データ管理装置に送り登録要求する端末登録機能と、暗号鍵を用いて共通鍵暗号方式により共有データを暗号化し、該暗号鍵と前記マスターシェアとから暗号鍵シェアを生成し、該暗号化データ、暗号鍵シェア及び自己の端末識別子を前記データ管理装置に送り保存要求するデータ保存機能と、前記データ管理装置から暗号化データ及び自己用の暗号鍵シェアを取得し、該暗号鍵シェア及び前記マスターシェアを用いて暗号鍵を復元し、該暗号鍵を用いて前記データ管理装置から取得した暗号化データを復号するデータ参照機能と、をコンピュータに実現させることを特徴とする。
これにより、前述の端末装置がコンピュータを利用して実現できるようになる。
A computer program according to the present invention is provided in the terminal device of a data sharing system including a terminal device of a member belonging to a group that shares data among members, and a data management device connected to the terminal device via a communication line. A computer program for performing data sharing processing, wherein a common share is generated from a common share key common within the group and a master share unique to the own terminal, and the data management is performed on the common share and the own terminal identifier. A terminal registration function that sends a registration request to the device, and encrypts the shared data by a common key encryption method using the encryption key, generates an encryption key share from the encryption key and the master share, and the encrypted data, encryption key A data storage function for sending a share and its own terminal identifier to the data management device and requesting storage; Obtaining encrypted data and a self-use encryption key share from the device, restoring the encryption key using the encryption key share and the master share, and obtaining the encrypted data obtained from the data management device using the encryption key A data reference function for decoding is realized by a computer.
As a result, the terminal device described above can be realized using a computer.

本発明に係るコンピュータプログラムは、メンバ間でデータを共有するグループに属するメンバの端末装置と、前記端末装置と通信回線を介して接続されるデータ管理装置とを有するデータ共有システムの前記データ管理装置におけるデータ共有処理を行うためのコンピュータプログラムであって、端末装置から登録要求された共通シェア及び端末識別子を関連付けて記録する端末登録機能と、端末装置から保存要求された暗号化データ、暗号鍵シェア及び端末識別子に関し、暗号化データに対して暗号鍵シェアと端末識別子の組を関連付けて記録するデータ保存機能と、前記端末装置から参照要求された前記データ保存手段に格納される暗号化データと、該要求元の端末装置用の暗号鍵シェアとを該要求元の端末装置に送るデータ参照機能と、をコンピュータに実現させることを特徴とする。
これにより、前述のデータ管理装置がコンピュータを利用して実現できるようになる。
The computer program according to the present invention provides the data management device of a data sharing system comprising: a terminal device of a member belonging to a group that shares data among members; and a data management device connected to the terminal device via a communication line A computer program for performing a data sharing process in which a terminal registration function that records a common share and a terminal identifier requested to be registered in association with a terminal device, encrypted data requested to be stored from the terminal device, and encryption key share And a terminal identifier, a data storage function for associating and recording a set of encryption key shares and terminal identifiers with respect to encrypted data, encrypted data stored in the data storage means requested for reference from the terminal device, Data reference function for sending encryption key share for requesting terminal device to requesting terminal device , Characterized in that to realize the computer.
As a result, the data management apparatus described above can be realized using a computer.

本発明によれば、グループメンバの所有する端末装置から鍵が漏洩するような場合の共有データの安全性確保に貢献すると共に、共有データ公開時などの処理負荷軽減を図ることができるという効果が得られる。   According to the present invention, it is possible to contribute to ensuring the safety of shared data when a key leaks from a terminal device owned by a group member, and to reduce the processing load when the shared data is disclosed. can get.

以下、図面を参照し、本発明の実施形態について説明する。
図1は、本発明の一実施形態に係るデータ共有システムの全体構成を示すブロック図である。図1において、図1において、グループメンバ端末1は、メンバ間でデータを共有するグループに属するメンバの端末装置である。図1にはN台のグループメンバ端末1−1〜Nが示されている。グループメンバ端末(以下、端末と称する)1は、通信ネットワーク4を介してストレージサーバ2にアクセスし、ストレージサーバ2との間でデータを送受することができる。なお、通信ネットワーク4は、無線ネットワークであっても、有線ネットワークであってもよい。例えば、通信ネットワーク4は、インターネットと固定電話網や移動電話網などから構成されてもよい。
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
FIG. 1 is a block diagram showing the overall configuration of a data sharing system according to an embodiment of the present invention. In FIG. 1, a group member terminal 1 is a member terminal device belonging to a group that shares data among members. FIG. 1 shows N group member terminals 1-1 to N. A group member terminal (hereinafter referred to as a terminal) 1 can access the storage server 2 via the communication network 4 and send / receive data to / from the storage server 2. The communication network 4 may be a wireless network or a wired network. For example, the communication network 4 may be composed of the Internet, a fixed telephone network, a mobile telephone network, and the like.

端末1は、移動しながら使用可能な装置(例えば、携帯型装置)であってもよく、或いは、固定して使用される装置(例えば、パーソナルコンピュータ等の据置き型装置)であってもよい。また、携帯型の端末装置としては、例えば、移動通信事業者が提供する移動通信網の端末装置(例えば、データ通信機能を有する携帯電話機、データ通信端末装置等)、PDA(Personal Digital Assistants:個人用情報機器)などが挙げられる。また、PDAの場合、通信手段を内蔵していてもよく、外部から通信手段を接続するものであってもよい。   The terminal 1 may be a device that can be used while moving (for example, a portable device), or may be a device that is used fixedly (for example, a stationary device such as a personal computer). . 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は、演算処理部、記憶部、通信部、入力部、表示部、外部インタフェースなどを備える。演算処理部は、CPU(中央処理装置)およびメモリ等から構成される。記憶部は、例えば、ハードディスク装置、光磁気ディスク装置、DVD(Digital Versatile Disk)等の光ディスク装置、フラッシュメモリ等の不揮発性のメモリ、DRAM(Dynamic Random Access Memory)等の揮発性のメモリ、などの記憶装置、あるいはそれらの組み合わせにより構成される。記憶部は、CPUで実行されるコンピュータプログラム等の各種データを記憶する。通信部は、通信ネットワーク4を介したデータ通信を行う。入力部は、キーボード、テンキー、マウス等の入力デバイスから構成され、ユーザの操作に応じたデータ入力を行う。表示部は、CRT(Cathode Ray Tube)や液晶表示装置等の表示デバイスから構成され、データ表示を行う。外部インタフェースは、外部機器との間で有線又は無線により直接にデータを送受する。   The terminal 1 includes 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 is, 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, a volatile memory such as a DRAM (Dynamic Random Access Memory), etc. It is comprised by a memory | storage device 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 communication network 4. The input unit includes input devices such as a keyboard, a numeric keypad, and a mouse, and performs data input according to user operations. The display unit includes a display device such as a CRT (Cathode Ray Tube) or a liquid crystal display device, and performs data display. The external interface directly transmits / receives data to / from an external device by wire or wireless.

端末1は、CPUがコンピュータプログラムを実行することにより、データ共有機能を実現する。データ共有機能を実現するためのコンピュータプログラムは、端末1に固定的にインストールされていてもよく、或いは、サーバ上にあるコンピュータプログラムが必要なときに通信回線を介してダウンロードされてもよい。   The terminal 1 implements a data sharing function when the CPU executes a computer program. The computer program for realizing the data sharing function may be fixedly installed in the terminal 1, or may be downloaded via a communication line when the computer program on the server is necessary.

ストレージサーバ2は、CPUおよびメモリ等から構成される演算処理部、ハードディスク装置等の記憶装置から構成される記憶部、通信部などを備える。記憶部は、端末1から送られてきたデータ等、各種データを記憶する。ストレージサーバ2のデータ保管機能は、ストレージサーバ2のCPUがデータ保管機能を実現するためのコンピュータプログラムを実行することにより実現される。   The storage server 2 includes an arithmetic processing unit including a CPU and a memory, a storage unit including a storage device such as a hard disk device, a communication unit, and the like. The storage unit stores various data such as data sent from the terminal 1. The data storage function of the storage server 2 is realized by the CPU of the storage server 2 executing a computer program for realizing the data storage function.

鍵管理サーバ3は、CPUおよびメモリ等から構成される演算処理部、ハードディスク装置等の記憶装置から構成される記憶部などを備える。記憶部は、鍵管理に係る各種データを記憶する。鍵管理サーバ3の鍵管理機能は、鍵管理サーバ3のCPUが鍵管理機能を実現するためのコンピュータプログラムを実行することにより実現される。なお、鍵管理サーバ3は、通信部を有し通信ネットワーク4に接続されていてもよく、或いは、通信部を有さず通信ネットワーク4に接続されていなくてもよい。鍵管理サーバ3は、通信ネットワーク4に接続されている場合、通信ネットワーク4を介して端末1及びストレージサーバ2との間でデータを送受することができる。鍵管理サーバ3は、通信ネットワーク4に接続されていない場合には、外部デバイス5を介して端末1及びストレージサーバ2との間でデータを送受する。外部デバイス5は、データの書き込み及び読み出しが可能な記録媒体である。外部デバイス5としては、例えば、メモリカード、ICカード、USB(Universal Serial Bus)メモリなどが利用可能である。   The key management server 3 includes an arithmetic processing unit including a CPU and a memory, a storage unit including a storage device such as a hard disk device, and the like. The storage unit stores various data related to key management. The key management function of the key management server 3 is realized by the CPU of the key management server 3 executing a computer program for realizing the key management function. The key management server 3 may have a communication unit and be connected to the communication network 4, or may not have the communication unit and be not connected to the communication network 4. When connected to the communication network 4, the key management server 3 can send and receive data between the terminal 1 and the storage server 2 via the communication network 4. The key management server 3 transmits and receives data between the terminal 1 and the storage server 2 via the external device 5 when not connected to the communication network 4. The external device 5 is a recording medium capable of writing and reading data. As the external device 5, for example, a memory card, an IC card, a USB (Universal Serial Bus) memory, or the like can be used.

以下、図1に示すデータ共有システムの動作を順次詳細に説明する。   Hereinafter, the operation of the data sharing system shown in FIG. 1 will be sequentially described in detail.

[メンバ端末登録段階]
まず図2を参照してメンバ端末登録段階の処理を説明する。
図2は、本実施形態に係るデータ共有処理のメンバ端末登録段階の手順を示すシーケンスチャートである。図2においては、グループメンバ(ユーザ識別子(ユーザID)=UIDi)の端末1−i(端末識別子(端末ID)=IDi)が登録されるとする。
[Member terminal registration stage]
First, the member terminal registration process will be described with reference to FIG.
FIG. 2 is a sequence chart showing the procedure of the member terminal registration stage of the data sharing process according to the present embodiment. In Figure 2, the group members (user identifier (user ID) = UID i) of the terminal 1-i (terminal identifier (terminal ID) = ID i) is to be registered.

ステップP1−0;鍵管理サーバ3は、あらかじめグループ用の共通シェア用鍵CKGを生成する。
ステップP1−1;鍵管理サーバ3は、端末1−iに対して、共通シェア用鍵CKGを配布する。この鍵配布方法は、セキュリティの確保された通信路を介して配布してもよいし、外部デバイス5を介して配布してもよい。また、鍵管理サーバ3は、端末1−iのメンバのユーザID(UIDi)と認証情報AUTHiをストレージサーバに送る。
Step P1-0; key management server 3 generates a common share key CK G in advance for the group.
Step P1-1; key management server 3 to the terminal 1-i, to distribute a common share key CK G. This key distribution method may be distributed via a secure communication path or may be distributed via the external device 5. Further, the key management server 3 sends the user ID (UID i ) of the member of the terminal 1-i and the authentication information AUTH i to the storage server.

ステップP1−2;端末1−iは、マスターシェアMSiをランダムに生成する。マスターシェアMSiは次式により算出する。
MSi=(XMS,i,YMS,i)
XMS,i=h(IDi)
但し、hはハッシュ関数である。YMS,iはランダムに生成する。ここで、XMS,i及びYMS,iの絶対値は、共通鍵暗号方式の鍵長b以下である。
Step P1-2: The terminal 1-i randomly generates a master share MS i . The master share MS i is calculated by the following formula.
MS i = (X MS, i , Y MS, i )
X MS, i = h (ID i )
Here, h is a hash function. Y MS, i is generated randomly. Here, the absolute values of XMS, i and YMS, i are not more than the key length b of the common key cryptosystem.

ステップP1−3;端末1−iは、共通シェア用鍵CKGとマスターシェアMSiから、共通シェアCSiを生成する。共通シェアCSiは次式により算出する。
CSi=(XCS,i,YCS,i)
XCS,i=h(IDi||r1)
YCS,i=fi(XCS,i)
但し、「IDi||r1」はIDiとr1の連結データである。r1は乱数である。fi(x)は「fi(x)={(YMS,i−CKG)/XMS,i}×x+CKG mod(2b−1)」となる多項式である。x mod(y)は、xに対してモジュロyをとった値である。
Step P1-3; terminal 1-i from the key CK G and the master share MS i for the common share generates a common share CS i. The common share CS i is calculated by the following formula.
CS i = (X CS, i , Y CS, i )
X CS, i = h (ID i || r 1 )
Y CS, i = f i (X CS, i )
However, “ID i || r 1 ” is concatenated data of ID i and r 1 . r 1 is a random number. f i (x) is a polynomial such that “f i (x) = {(Y MS, i −CK G ) / X MS, i } × x + CK G mod (2 b −1)”. x mod (y) is a value obtained by taking modulo y with respect to x.

ステップP1−4;端末1−iは、ユーザに対して認証情報の入力を促す。ユーザは、ユーザ認証用のための情報として、ユーザID(UIDi)と認証情報AUTHi’を入力する。
ステップP1−5;端末1−iは、端末ID(IDi)、ユーザID(UIDi)、認証情報AUTHi’及び共通シェアCSiをストレージサーバ2に送信する。
Step P1-4: The terminal 1-i prompts the user to input authentication information. The user inputs a user ID (UID i ) and authentication information AUTH i ′ as information for user authentication.
Step P1-5: The terminal 1-i transmits the terminal ID (ID i ), user ID (UID i ), authentication information AUTHi ′, and common share CS i to the storage server 2.

ステップP1−6;ストレージサーバ2は、鍵管理サーバ3から受け取ったユーザID及び認証情報に基づいて、端末1−iから受け取ったユーザID(UIDi)および認証情報AUTHi’を検証する。ストレージサーバ2は、端末1−iの使用者が正当なユーザであると確認できた場合に、端末1−iから受け取った端末ID(IDi)及び共通シェアCSiを関連付けて記録する。 Step P1-6: The storage server 2 verifies the user ID (UID i ) and authentication information AUTHi ′ received from the terminal 1-i based on the user ID and authentication information received from the key management server 3. When the storage server 2 can confirm that the user of the terminal 1-i is a valid user, the storage server 2 records the terminal ID (ID i ) and the common share CS i received from the terminal 1- i in association with each other.

ステップP1−7;端末1−iは、共通シェア用鍵CKG及び共通シェアCSiを消去する。なお、共通シェア用鍵CKGが外部デバイス5を介して配布された場合は、外部デバイス5内の共通シェア用鍵CKGも消去する。
端末1−iは、端末ID(IDi)とマスターシェアMSiを保持する。
Step P1-7; terminal 1-i deletes the key CK G and the common share CS i for the common share. Incidentally, if the common share key CK G is distributed via the external device 5, also erases the common share key CK G in the external device 5.
The terminal 1-i holds a terminal ID (ID i ) and a master share MS i .

[データ保存段階]
次に、図3を参照してデータ保存段階の処理を説明する。
図3は、本実施形態に係るデータ共有処理のデータ保存段階の手順を示すシーケンスチャートである。図3において、ユーザは、端末1−iにより、共有データMGをストレージサーバ2に保存するための操作を行う。
[Data storage stage]
Next, the data storage stage process will be described with reference to FIG.
FIG. 3 is a sequence chart showing the procedure of the data storage stage of the data sharing process according to the present embodiment. In FIG. 3, the user performs an operation for saving the shared data MG in the storage server 2 using the terminal 1-i.

ステップW1−1;ユーザは、端末1−iを操作して共有データMGを生成する。
ステップW1−2;端末1−iは、暗号鍵Kdをランダムに生成し、暗号鍵Kdを用いて共通鍵暗号方式により共有データMGを暗号化し、暗号化データEKd(MG)を生成する。暗号化後、共有データMGを消去する。
Step W1-1; user, generates a shared data M G by operating the terminal 1-i.
Step W1-2; terminal 1-i is a cryptographic key K d randomly generated by encrypting the shared data M G by a common key encryption method using an encryption key K d, the encrypted data E Kd (M G) Is generated. After encryption, the shared data MG is deleted.

ステップW1−3;端末1−iは、マスターシェアMSiを用いて暗号鍵シェアSKd,iを生成する。暗号鍵シェアSKd,iは次式により算出する。
SKd,i=(XKd,i,YKd,i)
XKd,i=XCS,i
YKd,i=gd(XKd,i)
但し、gd(x)は「gd(x)={(YMS,i−Kd)/XMS,i}×x+Kd mod(2b−1)」となる多項式である。又、マスターシェアMSi=(XMS,i,YMS,i)である。
Step W1-3: The terminal 1-i generates an encryption key share S Kd, i using the master share MS i . The encryption key share S Kd, i is calculated by the following equation.
S Kd, i = (X Kd, i , Y Kd, i )
X Kd, i = X CS, i
Y Kd, i = g d (X Kd, i )
Here, g d (x) is a polynomial that becomes “g d (x) = {(Y MS, i −K d ) / X MS, i } × x + K d mod (2 b −1)”. Master share MS i = (X MS, i , Y MS, i ).

ステップW1−4;端末1−iは、ユーザに対して認証情報の入力を促す。ユーザは、ユーザ認証用のための情報として、ユーザID(UIDi)と認証情報AUTHi’を入力する。
ステップW1−5;端末1−iは、端末ID(IDi)、ユーザID(UIDi)、認証情報AUTHi’、暗号化データEKd(MG)、暗号鍵シェアSKd,i及びデータラベルLdをストレージサーバ2に送信し、データ保存を要求する。
Step W1-4: The terminal 1-i prompts the user to input authentication information. The user inputs a user ID (UID i ) and authentication information AUTH i ′ as information for user authentication.
Step W1-5; the terminal 1-i has a terminal ID (ID i ), a user ID (UID i ), authentication information AUTHi ′, encrypted data E Kd (M G ), encryption key share S Kd, i, and data label L d is transmitted to the storage server 2 to request data storage.

なお、暗号化データEKd(MG)の送信に関しては、端末アイドル時、大容量通信利用可能時など、暗号鍵シェアSKd,iの送信タイミングとは別のタイミングで送信するようにしてもよい。 The encrypted data E Kd (M G ) may be transmitted at a timing different from the transmission timing of the encryption key share S Kd, i , such as when the terminal is idle or when large capacity communication is available. Good.

ステップW1−6;ストレージサーバ2は、鍵管理サーバ3から受け取ったユーザID及び認証情報に基づいて、端末1−iから受け取ったユーザID(UIDi)および認証情報AUTHi’を検証する。ストレージサーバ2は、端末1−iの使用者が正当なユーザであると確認できた場合に、端末1−iから受け取った端末ID(IDi)、暗号化データEKd(MG)、暗号鍵シェアSKd,i及びデータラベルLdを関連付けて記録する。さらに、該記録データに対してデータ識別子(データID)「DIDd」を割り当てて、該記録データとデータID(DIDd)を関連付ける。さらに、該記録時点の時刻TS,dを、該記録データの最終更新時刻として該記録データに追加する。
なお、データラベルとは、データの内容や形態を表す名称であり、例えばファイル名である。
Step W1-6: The storage server 2 verifies the user ID (UID i ) and authentication information AUTHi ′ received from the terminal 1-i based on the user ID and authentication information received from the key management server 3. When the storage server 2 can confirm that the user of the terminal 1-i is an authorized user, the storage server 2 receives the terminal ID (ID i ), the encrypted data E Kd (M G ), the encryption received from the terminal 1-i. The key share S Kd, i and the data label L d are recorded in association with each other. Furthermore, a data identifier (data ID) “DID d ” is assigned to the recording data, and the recording data is associated with the data ID (DID d ). Further, the time T S, d at the time of recording is added to the recording data as the last update time of the recording data.
Note that the data label is a name representing the content and form of data, for example, a file name.

ステップW1−7;ストレージサーバ2は、データ保存が完了したことを伝えるために、データID(DIDd)及び最終更新時刻TS,dを含む応答(ACK)メッセージを端末1−iに送信する。
ステップW1−8;端末1−iは、ストレージサーバ2からのACKメッセージを受信すると、暗号鍵Kdと暗号鍵シェアSKd,iを消去する。さらに、ローカルデータリストに当該共有データのエントリを新規に作成し、データID(DIDd)、最終更新時刻TS,d、暗号化データEKd(MG)及びデータラベルLdを組にして格納する。但し、ストレージサーバ2から通知された最終更新時刻TS,dは、最終参照時刻(Ti,d=TS,d)として格納する。図4に端末記憶部の構成が示されている。
Step W1-7: The storage server 2 transmits a response (ACK) message including the data ID (DID d ) and the last update time T S, d to the terminal 1-i to notify that the data storage is completed. .
Step W1-8; terminal 1-i deletes receives the ACK message from the storage server 2, encryption key K d and the encryption key shares S Kd, the i. Further, a new entry of the shared data is created in the local data list, and the data ID (DID d ), the last update time T S, d , the encrypted data E Kd (M G ), and the data label L d are combined. Store. However, the last update time T S, d notified from the storage server 2 is stored as the last reference time (T i, d = T S, d ). FIG. 4 shows the configuration of the terminal storage unit.

なお、暗号化データEKd(MG)については端末1−iで保持せず、消去するようにしてもよい。その暗号化データEKd(MG)の消去に関しては、設定ファイルなどにより、消去する/しないの設定を行うようにしてもよい。 The encrypted data E Kd (M G ) may be erased without being held in the terminal 1-i. With regard to erasure of the encrypted data E Kd (M G ), it may be set to be erased or not by a setting file or the like.

図5に、ストレージサーバ2の記憶部の構成が示されている。データを共有するグループの識別子(GID)に関連付けて、当該グループで共有されるデータレコードが記憶される。個々のデータレコードにはデータID(DID)が付与される。図6に、データレコードの構成が示されている。データレコードは、データラベル、最終更新時刻、暗号化データ、端末ID及び暗号鍵シェアを含む。端末ID及び暗号鍵シェアは、端末別のデータである。   FIG. 5 shows the configuration of the storage unit of the storage server 2. A data record shared by the group is stored in association with the identifier (GID) of the group sharing the data. Each data record is given a data ID (DID). FIG. 6 shows the structure of the data record. The data record includes a data label, last update time, encrypted data, terminal ID, and encryption key share. The terminal ID and encryption key share are data for each terminal.

図7に本実施形態に係る鍵配布図を示す。図7において、鍵管理サーバ3は、共通シェア用鍵CKGを保管する。共通シェア用鍵CKGは、外部デバイス5等を介してデータ共有グループに属するメンバの端末1−1〜Nへ配布される。端末1−i(i=1〜N)は、自己に固有のマスターシェアMSiを有する。ストレージサーバ2は、端末1−iの共通シェアCSiを保管する。さらに、ストレージサーバ2は、共有される暗号化データに関連付けて端末1−iの暗号鍵シェアSKd,iを記録する。 FIG. 7 shows a key distribution diagram according to this embodiment. 7, the key management server 3 stores the common share key CK G. Key CK G for the common share is distributed to the terminal 1-1~N of members belonging to the data sharing group via the external device 5 and the like. The terminal 1-i (i = 1 to N) has its own master share MS i . The storage server 2 stores the common share CS i of the terminal 1-i. Further, the storage server 2 records the encryption key share S Kd, i of the terminal 1-i in association with the encrypted data to be shared.

[データ参照段階]
次に、図8を参照してデータ参照段階の処理を説明する。
図8は、本実施形態に係るデータ共有処理のデータ参照段階の手順を示すシーケンスチャートである。図8において、ユーザは、端末1−jにより、ストレージサーバ2に保存されている暗号化データEKd(MG)を初めて参照するための操作を行う。
[Data reference stage]
Next, the data reference stage process will be described with reference to FIG.
FIG. 8 is a sequence chart showing the procedure of the data reference stage of the data sharing process according to the present embodiment. In FIG. 8, the user performs an operation for referring to the encrypted data E Kd (M G ) stored in the storage server 2 for the first time using the terminal 1-j.

ステップR1−0;ストレージサーバ2は、各端末1にデータリストを送信する。図9にデータリストの構成が示されている。データリストには、送信先の端末1が属するグループで共有される全てのデータレコードの情報(データラベル、データID及び最終更新時刻)が記載される。   Step R1-0: The storage server 2 transmits a data list to each terminal 1. FIG. 9 shows the structure of the data list. In the data list, information (data label, data ID, and last update time) of all data records shared by the group to which the destination terminal 1 belongs is described.

なお、データリストの送信タイミングは、データリストの更新時であってもよく、或いは、端末1からの要求時であってもよい。   Note that the data list transmission timing may be when the data list is updated, or when the data list is requested.

ステップR1−1;ユーザは、端末1−jを操作し、データリスト中の所望のデータラベルのデータID(DIDd)を指定してデータ参照要求を行う。端末1−jは、ユーザによるデータ参照要求に応じて、ユーザに対して認証情報の入力を促す。ユーザは、ユーザ認証用のための情報として、ユーザID(UIDj)と認証情報AUTHj’を入力する。
ステップR1−2;端末1−jは、参照対象の暗号化データEKd(MG)に関するデータID(DIDd)、端末ID(IDj)、ユーザID(UIDj)、認証情報AUTHj’をデータ要求メッセージに含めてストレージサーバ2に送信する。
Step R1-1: The user operates the terminal 1-j to designate a data ID (DID d ) of a desired data label in the data list and make a data reference request. The terminal 1-j prompts the user to input authentication information in response to a data reference request from the user. The user inputs a user ID (UID j ) and authentication information AUTH j ′ as information for user authentication.
Step R1-2: The terminal 1-j receives the data ID (DID d ), the terminal ID (ID j ), the user ID (UID j ), and the authentication information AUTHj ′ related to the encrypted data E Kd (M G ) to be referenced. It is included in the data request message and transmitted to the storage server 2.

ステップR1−3;ストレージサーバ2は、鍵管理サーバ3から受け取ったユーザID及び認証情報に基づいて、端末1−jから受け取ったユーザID(UIDj)および認証情報AUTHj’を検証する。
ステップR1−4;ストレージサーバ2は、端末1−jの使用者が正当なユーザであると確認できた場合に、端末1−jから受け取ったデータID(DIDd)に対応するデータレコードを参照し、端末1−jの暗号鍵シェアSKd,jがあるか調べる。ここでは、初めての参照なので、端末1−jの暗号鍵シェアSKd,jは当該データレコードに含まれていない。
Step R1-3: The storage server 2 verifies the user ID (UID j ) and authentication information AUTHj ′ received from the terminal 1-j based on the user ID and authentication information received from the key management server 3.
Step R1-4: The storage server 2 refers to the data record corresponding to the data ID (DID d ) received from the terminal 1-j when it can be confirmed that the user of the terminal 1-j is a valid user. Then, it is checked whether there is an encryption key share S Kd, j of the terminal 1-j. Here, since it is the first reference, the encryption key share S Kd, j of the terminal 1-j is not included in the data record.

ステップR1−5;ストレージサーバ2は、端末1−jの暗号鍵シェアSKd,jがデータレコードに含まれていないことを確認すると、当該データレコード内の任意の端末1−iの暗号鍵シェアSKd,i、該端末1−iの共通シェアCSi及び端末1−jの共通シェアCSjを取得する。そして、その取得した暗号鍵シェアSKd,i、共通シェアCSi,CSjを用いて、端末1−jの暗号鍵シェアSKd,jを生成する。暗号鍵シェアSKd,jは次式により算出する。
SKd,j=(XKd,j,YKd,j)
XKd,j=XCS,j
YKd,j=YCS,j+(Li/Lj)×(YKd,i−YCS,i)mod(2b−1)
但し、Lr=XMS,r/(XMS,r−XCS,r)mod(2b−1)、である。又、共通シェアCSi=(XCS,i,YCS,i)である。
Step R1-5: When the storage server 2 confirms that the encryption key share S Kd, j of the terminal 1-j is not included in the data record, the encryption key share of any terminal 1-i in the data record S Kd, i , the common share CS i of the terminal 1- i and the common share CS j of the terminal 1- j are acquired. Then, the encryption key share S Kd, j of the terminal 1- j is generated using the acquired encryption key share S Kd, i and the common shares CS i and CS j . The encryption key share S Kd, j is calculated by the following equation.
S Kd, j = (X Kd, j , Y Kd, j )
X Kd, j = X CS, j
Y Kd, j = Y CS, j + (L i / L j ) × (Y Kd, i −Y CS, i ) mod (2 b −1)
However, Lr = X MS, r / (X MS, r −X CS, r ) mod (2 b −1). The common share CS i = (X CS, i , Y CS, i ).

ステップR1−6;ストレージサーバ2は、当該データレコード内の暗号化データEKd(MG)、最終更新時刻TS,d及び暗号鍵シェアSKd,jを端末1−jに送信する。又、ストレージサーバ2は、端末1−jの端末ID(IDj)及び暗号鍵シェアSKd,jを当該データレコードに追加し記録する。 Step R1-6: The storage server 2 transmits the encrypted data E Kd (M G ), the last update time T S, d and the encryption key share S Kd, j in the data record to the terminal 1-j. Further, the storage server 2 adds the terminal ID (ID j ) and encryption key share S Kd, j of the terminal 1-j to the data record and records them.

ステップR1−7;端末1−jは、ストレージサーバ2から受け取った暗号鍵シェアSKd,j及び自己のマスターシェアMSjを用いて、暗号鍵Kdを復元する。暗号鍵Kdは次式により算出する。
Kd=YMS,j×XKd,j/(XKd,j−XMS,j)+YKd,j×XMS,j/(XMS,j−XKd,j) mod(2b−1)
但し、マスターシェアMSj=(XMS,j,YMS,j)である。
ステップR1−8;端末1−jは、暗号鍵Kdを用いて暗号化データEKd(MG)を復号し、共有データMGを得る。
Step R1-7; terminal 1-j is the encryption key shares S Kd received from the storage server 2, using j and its master share MS j, to recover the encryption key K d. The encryption key Kd is calculated by the following equation.
K d = Y MS, j × X Kd, j / (X Kd, j −X MS, j ) + Y Kd, j × X MS, j / (X MS, j −X Kd, j ) mod (2 b − 1)
However, the master share MS j = (X MS, j , Y MS, j ).
Step R1-8: The terminal 1-j decrypts the encrypted data E Kd (M G ) using the encryption key K d to obtain shared data M G.

ステップR1−9;端末1−jは、データ参照後に、暗号鍵Kd、暗号鍵シェアSKd,j及び共有データMGを消去する。端末1−jは、当該共有データMGに関するローカルデータリスト中のエントリを、ストレージサーバ2から通知された最終更新時刻TS,dにより最終参照時刻(Tj,d=TS,d)として更新する。なお、暗号化データEKd(MG)の消去に関しては、設定ファイルなどにより、消去する/しないの設定を行うようにしてもよい。 Step R1-9; terminal 1-j after data referenced deletes the encryption key K d, the encryption key shares S Kd, the j and shared data M G. Terminal 1-j is the entry in the local data list related to the shared data M G, last update time notified from the storage server 2 T S, the last reference time by d (T j, d = T S, d) as Update. Note that regarding the erasure of the encrypted data E Kd (M G ), it may be set to be erased or not by a setting file or the like.

次に、図10を参照して2回目以降のデータ参照段階の処理を説明する。
図10は、本実施形態に係るデータ共有処理の2回目以降のデータ参照段階の手順を示すシーケンスチャートである。図10において、ユーザは、端末1−iにより、ストレージサーバ2に保存されている暗号化データEKd(MG)を再度参照するための操作を行う。
Next, the second and subsequent data reference stages will be described with reference to FIG.
FIG. 10 is a sequence chart showing the procedure of the data reference stage after the second time of the data sharing processing according to the present embodiment. In FIG. 10, the user performs an operation for referring again to the encrypted data E Kd (M G ) stored in the storage server 2 using the terminal 1-i.

ステップR2−0;ストレージサーバ2は、各端末1にデータリストを送信する。
ステップR2−1;ユーザは、端末1−iを操作し、データリスト中の所望のデータラベル(データID(DIDd))を指定してデータ参照要求を行う。端末1−iは、ユーザによるデータ参照要求に応じて、ユーザに対して認証情報の入力を促す。ユーザは、ユーザ認証用のための情報として、ユーザID(UIDj)と認証情報AUTHj’を入力する。
ステップR2−2;端末1−iは、参照対象の暗号化データEKd(MG)に関するデータID(DIDd)、端末ID(IDi)、ユーザID(UIDi)、認証情報AUTHi’をデータ要求メッセージに含めてストレージサーバ2に送信する。
Step R2-0: The storage server 2 transmits a data list to each terminal 1.
Step R2-1: The user operates the terminal 1-i to make a data reference request by designating a desired data label (data ID (DID d )) in the data list. The terminal 1-i prompts the user to input authentication information in response to a data reference request from the user. The user inputs a user ID (UID j ) and authentication information AUTH j ′ as information for user authentication.
Step R2-2: The terminal 1-i receives the data ID (DID d ), terminal ID (ID i ), user ID (UID i ), and authentication information AUTHi ′ related to the encrypted data E Kd (M G ) to be referenced. It is included in the data request message and transmitted to the storage server 2.

ステップR2−3;ストレージサーバ2は、鍵管理サーバ3から受け取ったユーザID及び認証情報に基づいて、端末1−iから受け取ったユーザID(UIDi)および認証情報AUTHi’を検証する。
ステップR2−4;ストレージサーバ2は、端末1−iの使用者が正当なユーザであると確認できた場合に、端末1−iから受け取ったデータID(DIDd)に対応するデータレコードを参照し、端末1−iの暗号鍵シェアSKd,iがあるか調べる。ここでは、2回目以降の参照なので、端末1−iの暗号鍵シェアSKd,iは当該データレコードに含まれている。
Step R2-3: The storage server 2 verifies the user ID (UID i ) and authentication information AUTHi ′ received from the terminal 1-i based on the user ID and authentication information received from the key management server 3.
Step R2-4: The storage server 2 refers to the data record corresponding to the data ID (DID d ) received from the terminal 1-i when the user of the terminal 1-i can be confirmed as a valid user. Then, it is checked whether there is an encryption key share S Kd, i of the terminal 1-i. Here, since it is the second and subsequent references, the encryption key share S Kd, i of the terminal 1-i is included in the data record.

ステップR2−5;ストレージサーバ2は、端末1−iの暗号鍵シェアSKd,iがデータレコードに含まれていることを確認すると、当該データレコードから端末1−iの暗号鍵シェアSKd,i、暗号化データEKd(MG)及び最終更新時刻TS,dを取得する。そして、その取得した暗号鍵シェアSKd,i、暗号化データEKd(MG)及び最終更新時刻TS,dを端末1−iに送信する。 Step R2-5: When the storage server 2 confirms that the encryption key share S Kd, i of the terminal 1-i is included in the data record, the storage server 2 uses the encryption key share S Kd, of the terminal 1-i from the data record . i , the encrypted data E Kd (M G ) and the last update time T S, d are acquired. Then, the obtained encryption key share S Kd, i , encrypted data E Kd (M G ), and last update time T S, d are transmitted to the terminal 1-i.

ステップR2−6;端末1−iは、ストレージサーバ2から受け取った暗号鍵シェアSKd,i及び自己のマスターシェアMSiを用いて、暗号鍵Kdを復元する。暗号鍵Kdは次式により算出する。
Kd=YMS,i×XKd,i/(XKd,i−XMS,i)+YKd,i×XMS,i/(XMS,i−XKd,i) mod(2b−1)
但し、マスターシェアMSi=(XMS,i,YMS,i)である。
ステップR2−7;端末1−iは、暗号鍵Kdを用いて暗号化データEKd(MG)を復号し、共有データMGを得る。
Step R2-6; terminal 1-i is the encryption key shares S Kd received from the storage server 2, using a i and its master share MS i, to recover the encryption key K d. The encryption key Kd is calculated by the following equation.
K d = Y MS, i × X Kd, i / (X Kd, i −X MS, i ) + Y Kd, i × X MS, i / (X MS, i −X Kd, i ) mod (2 b − 1)
However, the master share MS i = (X MS, i , Y MS, i ).
Step R2-7: The terminal 1-i decrypts the encrypted data E Kd (M G ) using the encryption key K d to obtain shared data M G.

ステップR2−8;端末1−iは、データ参照後に、暗号鍵Kd、暗号鍵シェアSKd,i及び共有データMGを消去する。端末1−iは、当該共有データMGに関するローカルデータリスト中のエントリを、ストレージサーバ2から通知された最終更新時刻TS,dにより最終参照時刻(Ti,d=TS,d)として更新する。なお、暗号化データEKd(MG)の消去に関しては、設定ファイルなどにより、消去する/しないの設定を行うようにしてもよい。 Step R2-8; terminal 1-i after data referenced deletes the encryption key K d, the encryption key shares S Kd, i and shared data M G. Terminal 1-i is an entry in the local data list related to the shared data M G, last update time notified from the storage server 2 T S, the last reference time by d (T i, d = T S, d) as Update. Note that regarding the erasure of the encrypted data E Kd (M G ), it may be set to be erased or not by a setting file or the like.

[データ更新段階]
次に、図11を参照してデータ更新段階の処理を説明する。
図11は、本実施形態に係るデータ共有処理のデータ更新段階の手順を示すシーケンスチャートである。図11において、ユーザは、端末1−jにより、ストレージサーバ2に保存されている暗号化データEKd(MG)を更新するための操作を行う。
[Data update stage]
Next, processing in the data update stage will be described with reference to FIG.
FIG. 11 is a sequence chart showing the procedure of the data update stage of the data sharing process according to the present embodiment. In FIG. 11, the user performs an operation for updating the encrypted data E Kd (M G ) stored in the storage server 2 using the terminal 1-j.

ステップW2−1;ユーザは、端末1−jを操作し、更新対象のデータラベル(データID(DIDd))を指定して共有データMG2を生成する。
ステップW2−2;端末1−jは、暗号鍵Kd2をランダムに生成し、暗号鍵Kd2を用いて共通鍵暗号方式により共有データMG2を暗号化し、暗号化データEKd2(MG2)を生成する。暗号化後、共有データMG2を消去する。
Step W2-1: The user operates the terminal 1-j to specify the data label to be updated (data ID (DID d )) and generate the shared data M G2 .
Step W2-2; terminal 1-j is the encryption key K d2 generated at random, it encrypts the shared data M G2 by a common key encryption method using an encryption key K d2, encrypted data E Kd2 (M G2) Is generated. After encryption, the shared data MG2 is deleted.

ステップW2−3;端末1−jは、マスターシェアMSjを用いて暗号鍵シェアSKd2,jを生成する。暗号鍵シェアSKd2,jは次式により算出する。
SKd2,j=(XKd2,j,YKd2,j)
XKd2,j=XCS,j
YKd2,j=gd2(XKd2,j)
但し、gd2(x)は「gd2(x)={(YMS,j−Kd2)/XMS,j}×x+Kd2 mod(2b−1)」となる多項式である。
Step W2-3: The terminal 1-j generates an encryption key share S Kd2, j using the master share MS j . The encryption key share S Kd2, j is calculated by the following equation.
S Kd2, j = (X Kd2, j , Y Kd2, j )
X Kd2, j = X CS, j
Y Kd2, j = g d2 (X Kd2, j )
However, g d2 (x) is a polynomial that becomes “g d2 (x) = {(Y MS, j −K d2 ) / X MS, j } × x + K d2 mod (2 b −1)”.

ステップW2−4;端末1−jは、ユーザに対して認証情報の入力を促す。ユーザは、ユーザ認証用のための情報として、ユーザID(UIDj)と認証情報AUTHj’を入力する。
ステップW2−5;端末1−jは、更新対象のデータID(DIDd)、端末ID(IDj)、ユーザID(UIDj)、認証情報AUTHj’、暗号化データEKd2(MG2)、暗号鍵シェアSKd2,j及びデータラベルLd2をストレージサーバ2に送信し、データ更新を要求する。
Step W2-4: The terminal 1-j prompts the user to input authentication information. The user inputs a user ID (UID j ) and authentication information AUTH j ′ as information for user authentication.
Step W2-5; the terminal 1-j updates the data ID (DID d ), terminal ID (ID j ), user ID (UID j ), authentication information AUTHj ′, encrypted data E Kd2 (M G2 ), The encryption key share S Kd2, j and the data label L d2 are transmitted to the storage server 2 to request data update.

ステップW2−6;ストレージサーバ2は、鍵管理サーバ3から受け取ったユーザID及び認証情報に基づいて、端末1−jから受け取ったユーザID(UIDj)および認証情報AUTHj’を検証する。ストレージサーバ2は、端末1−jの使用者が正当なユーザであると確認できた場合に、更新対象のデータID(DIDd)のデータレコードを書き換える。このデータレコード書き換えでは、データラベル、暗号化データをそれぞれデータラベルLd2、暗号化データEKd2(MG2)に書き換える。さらに、端末ID(IDj)の暗号鍵シェアを暗号鍵シェアSKd2,jに書き換える。さらに、最終更新時刻を現在時刻TS,d2に書き換える。 Step W2-6: The storage server 2 verifies the user ID (UID j ) and authentication information AUTHj ′ received from the terminal 1-j based on the user ID and authentication information received from the key management server 3. When the storage server 2 can confirm that the user of the terminal 1-j is a valid user, the storage server 2 rewrites the data record of the data ID (DID d ) to be updated. In this data record rewriting, the data label and the encrypted data are rewritten to the data label L d2 and the encrypted data E Kd2 (M G2 ), respectively. Further, the encryption key share of the terminal ID (ID j ) is rewritten to the encryption key share S Kd2, j . Further, the last update time is rewritten to the current time T S, d2 .

ステップW2−7;ストレージサーバ2は、データ更新が完了したことを伝えるために、データID(DIDd)及び最終更新時刻TS,d2を含む応答(ACK)メッセージを端末1−jに送信する。
ステップW2−8;端末1−jは、ストレージサーバ2からのACKメッセージを受信すると、暗号鍵Kd2と暗号鍵シェアSKd2,jを消去する。さらに、ローカルデータリスト中の当該共有データのエントリを、最終参照時刻(Ti,d=TS,d2)、暗号化データEKd2(MG2)及びデータラベルLd2で書き換える。
Step W2-7: The storage server 2 transmits a response (ACK) message including the data ID (DID d ) and the last update time T S, d2 to the terminal 1-j in order to notify that the data update is completed. .
Step W2-8; terminal 1-j receives the ACK message from the storage server 2 deletes the encryption key K d2 and the encryption key shares S Kd2, j. Further, the entry of the shared data in the local data list is rewritten with the last reference time (T i, d = T S, d2 ), the encrypted data E Kd2 (M G2 ), and the data label L d2 .

ステップW2−9;ストレージサーバ2は、端末1−j以外の他の端末1−iに関し、更新対象のデータID(DIDd)のデータレコードに更新前の暗号鍵Kdに対応する暗号鍵シェアSKd,iがある場合、該暗号鍵シェアを更新後の暗号鍵Kd2に対応する暗号鍵シェアSKd2,iに更新する。暗号鍵シェアSKd2,iは次式により算出する。
SKd2,i=(XKd2,i,YKd2,i)
XKd2,i=XCS,i
YKd2,i=YCS,i+(Lj/Li)×(YKd2,j−YCS,j)mod(2b−1)
但し、Lr=XMS,r/(XMS,r−XCS,r)mod(2b−1)、である。
Step W2-9; storage server 2 relates another terminal 1-i other than the terminal 1-j, encryption key shares corresponding to the encryption key K d for before updating the data records of the data ID of the update target (DID d) If S Kd, i exists, the encryption key share is updated to the encryption key share S Kd2, i corresponding to the updated encryption key K d2 . The encryption key share S Kd2, i is calculated by the following equation.
S Kd2, i = (X Kd2, i , Y Kd2, i )
X Kd2, i = X CS, i
Y Kd2, i = Y CS, i + (L j / L i ) × (Y Kd2, j −Y CS, j ) mod (2 b −1)
However, Lr = X MS, r / (X MS, r −X CS, r ) mod (2 b −1).

なお、端末1−j以外の他の端末1−iの暗号鍵シェアの更新は、他の端末1−iが当該データレコードへのアクセスを要求した際に行うようにしてもよい。この場合、当該データレコードに、暗号鍵シェアの更新状況(未更新/更新済)を示す情報を含めておく。   The update of the encryption key share of the terminal 1-i other than the terminal 1-j may be performed when the other terminal 1-i requests access to the data record. In this case, information indicating the update status (unupdated / updated) of the encryption key share is included in the data record.

[環境移行段階]
次に、図12を参照して環境移行段階の処理を説明する。
図12は、本実施形態に係るデータ共有処理の環境移行段階の手順を示すシーケンスチャートである。環境移行段階は、ユーザが端末を紛失等した場合に、該端末の環境を他の端末に移行するためのものである。図12において、ユーザは、端末1−iの環境を他の端末1−i’に移行する。端末1−i’の端末IDはIDi'である。
[Environmental transition stage]
Next, processing in the environment transition stage will be described with reference to FIG.
FIG. 12 is a sequence chart showing the procedure of the environment transition stage of the data sharing process according to the present embodiment. The environment transition stage is for shifting the environment of the terminal to another terminal when the user loses the terminal or the like. In FIG. 12, the user shifts the environment of the terminal 1-i to another terminal 1-i ′. The terminal ID of the terminal 1-i ′ is ID i ′ .

ステップRE1−1;ユーザは、端末1−i’を操作し、端末1−iの環境を端末1−i’に移行することを鍵管理サーバ3に通知する。なお、この環境移行通知はオフラインで行ってもよい。
ステップRE1−2;鍵管理サーバ3は、端末1−i’に対して、端末1−iが属するグループ用の共通シェア用鍵CKGを配布する。この共通シェア用鍵CKGの配布は、セキュリティの確保された通信路を介して配布してもよいし、或いは、外部デバイス5を介して配布してもよい。さらに、鍵管理サーバ3は、端末1−iが当該グループに所属のメンバの端末として失効したことをストレージサーバ2に通知する。
Step RE1-1: The user operates the terminal 1-i ′ to notify the key management server 3 that the environment of the terminal 1-i is to be shifted to the terminal 1-i ′. This environment transition notification may be performed offline.
Step RE1-2; key management server 3 to the terminal 1-i ', for distributing a common share key CK G for the group to which the terminal 1-i belongs. Distribution of this common share key CK G may be distributed through a communication channel reserved for security, or may be distributed through the external device 5. Furthermore, the key management server 3 notifies the storage server 2 that the terminal 1-i has expired as a member terminal belonging to the group.

ステップRE1−3;ストレージサーバ2は、端末1−iに関するデータ(暗号鍵シェア等)を全て消去する。
ステップRE1−4;端末1−i’は、マスターシェアMSi'をランダムに生成する。マスターシェアMSi'は次式により算出する。
MSi'=(XMS,i',YMS,i')
XMS,i'=h(IDi')
但し、hはハッシュ関数である。YMS,i'はランダムに生成する。ここで、XMS,i'及びYMS,i'の絶対値は、共通鍵暗号方式の鍵長b以下である。
Step RE1-3: The storage server 2 erases all data (such as encryption key share) related to the terminal 1-i.
Step RE1-4: The terminal 1-i ′ generates a master share MS i ′ at random. The master share MS i ′ is calculated by the following formula.
MS i ' = (X MS, i' , Y MS, i ' )
X MS, i ' = h (ID i' )
Here, h is a hash function. Y MS, i ′ is randomly generated. Here, the absolute values of X MS, i ′ and Y MS, i ′ are less than or equal to the key length b of the common key cryptosystem.

ステップRE1−5;端末1−i’は、共通シェア用鍵CKGとマスターシェアMSi'から、共通シェアCSi'を生成する。共通シェアCSi'は次式により算出する。
CSi'=(XCS,i',YCS,i')
XCS,i'=h(IDi'||r1)
YCS,i'=fi'(XCS,i')
但し、「IDi'||r1」はIDi'とr1の連結データである。r1は乱数である。fi'(x)は「fi'(x)={(YMS,i'−CKG)/XMS,i'}×x+CKG mod(2b−1)」となる多項式である。
Step RE1-5; terminal 1-i ', the key CK G and the master share MS i for the common share' from generates a common share CS i '. The common share CS i ′ is calculated by the following formula.
CS i ' = (X CS, i' , Y CS, i ' )
X CS, i ' = h (ID i' || r 1 )
Y CS, i ' = f i' (X CS, i ' )
However, “ID i ′ || r 1 ” is concatenated data of ID i ′ and r 1 . r 1 is a random number. f i ′ (x) is a polynomial that becomes “f i ′ (x) = {(Y MS, i ′ −CK G ) / X MS, i ′ } × x + CK G mod (2 b −1)”.

ステップRE1−6;端末1−i’は、ユーザに対して認証情報の入力を促す。ユーザは、ユーザ認証用のための情報として、ユーザID(UIDi)と認証情報AUTHi’を入力する。
ステップRE1−7;端末1−i’は、端末ID(IDi')、ユーザID(UIDi)、認証情報AUTHi’及び共通シェアCSi'をストレージサーバ2に送信する。
Step RE1-6: The terminal 1-i ′ prompts the user to input authentication information. The user inputs a user ID (UID i ) and authentication information AUTH i ′ as information for user authentication.
Step RE1-7: The terminal 1-i ′ transmits the terminal ID (ID i ′ ), the user ID (UID i ), the authentication information AUTHi ′, and the common share CS i ′ to the storage server 2.

ステップRE1−8;ストレージサーバ2は、鍵管理サーバ3から受け取ったユーザID及び認証情報に基づいて、端末1−i’から受け取ったユーザID(UIDi)および認証情報AUTHi’を検証する。ストレージサーバ2は、端末1−i’の使用者が正当なユーザであると確認できた場合に、端末1−i’から受け取った端末ID(IDi')及び共通シェアCSi'を関連付けて記録する。 Step RE1-8: The storage server 2 verifies the user ID (UID i ) and authentication information AUTHi ′ received from the terminal 1-i ′ based on the user ID and authentication information received from the key management server 3. When the storage server 2 can confirm that the user of the terminal 1-i ′ is a valid user, the storage server 2 associates the terminal ID (ID i ′ ) and the common share CS i ′ received from the terminal 1-i ′. Record.

ステップRE1−9;端末1−i’は、共通シェア用鍵CKG及び共通シェアCSi'を消去する。なお、共通シェア用鍵CKGが外部デバイス5を介して配布された場合は、外部デバイス5内の共通シェア用鍵CKGも消去する。
端末1−i’は、端末ID(IDi')とマスターシェアMSi'を保持する。
Step RE1-9; terminal 1-i 'is the common share key CK G and the common share CS i' to erase. Incidentally, if the common share key CK G is distributed via the external device 5, also erases the common share key CK G in the external device 5.
The terminal 1-i ′ holds a terminal ID (ID i ′ ) and a master share MS i ′ .

以上が本実施形態に係るデータ共有システムの動作の説明である。   The above is the description of the operation of the data sharing system according to the present embodiment.

上述した実施形態によれば、以下に示すような効果が得られる。
(1)共有データの暗号化に使用している暗号鍵は、ストレージサーバで保管される暗号鍵シェアが無いと復元できないので、盗難、紛失などにより端末がグループメンバ以外の者の手に渡ったとしても、共有データの漏洩を防ぐ効果が得られる。又、同じグループに属する複数のメンバの端末がグループメンバ以外の者の手に渡ったとしても、同様に暗号鍵の復元を行うことができないので、共有データの安全性確保に貢献することができる。又、ストレージサーバで保管される共通シェア及び暗号鍵シェアがたとえ漏洩したとしても、端末で保持される端末固有のマスターシェアが無いと暗号鍵を復元できないので、共有データの安全性確保に貢献することができる。
According to the embodiment described above, the following effects can be obtained.
(1) Since the encryption key used for encryption of shared data cannot be restored without the encryption key share stored in the storage server, the terminal was handed over to someone other than the group member due to theft or loss. However, the effect of preventing the leakage of shared data can be obtained. In addition, even if the terminals of a plurality of members belonging to the same group reach the hands of persons other than the group members, the encryption key cannot be restored in the same manner, which can contribute to ensuring the safety of the shared data. . In addition, even if the common share and encryption key share stored in the storage server are leaked, the encryption key cannot be restored without the terminal-specific master share held in the terminal, which contributes to ensuring the safety of the shared data. be able to.

(2)公開鍵暗号方式を利用せずに、(2,2)しきい値秘密分散法と共通鍵暗号方式のみで実現できるため、データ共有システム全体の処理負荷を軽減することができる。また、グループ内データ共有機能を容易に実現することが可能になる。 (2) Since it can be realized only by the (2, 2) threshold secret sharing method and the common key encryption method without using the public key encryption method, the processing load of the entire data sharing system can be reduced. In addition, the intra-group data sharing function can be easily realized.

なお、(k,n)しきい値秘密分散法とは、秘密分散法の一種であり、秘密情報をn個の分割情報(シェア)に分割してそれぞれ保管し、その内のk個以上の分割情報を入手することができれば、元の秘密情報を復元することができるものである。秘密分散法とは、秘密情報を数人で分散して保管することで、元の秘密情報を安全に保管する方法である。   Note that the (k, n) threshold secret sharing method is a kind of secret sharing method, which divides secret information into n pieces of divided information (shares) and stores each of them in k pieces or more. If the division information can be obtained, the original secret information can be restored. The secret sharing method is a method for securely storing original secret information by distributing and storing secret information by several people.

なお、図2、3、8、10〜12に示す各ステップを実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより、データ共有処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものであってもよい。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、フラッシュメモリ等の書き込み可能な不揮発性メモリ、DVD(Digital Versatile Disk)等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
In addition, the program for realizing each step shown in FIGS. 2, 3, 8, 10 to 12 is recorded on a computer-readable recording medium, and the program recorded on the recording medium is read into a computer system and executed. By doing so, data sharing processing may be performed. Here, the “computer system” may include an OS and hardware such as peripheral devices.
“Computer-readable recording medium” refers to a flexible disk, a magneto-optical disk, a ROM, a writable nonvolatile memory such as a flash memory, a portable medium such as a DVD (Digital Versatile Disk), and a built-in computer system. A storage device such as a hard disk.

さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(例えばDRAM(Dynamic Random Access Memory))のように、一定時間プログラムを保持しているものも含むものとする。
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。
Further, the “computer-readable recording medium” means a volatile memory (for example, DRAM (Dynamic DRAM) in a computer system that becomes a server or a client when a program is transmitted through a network such as the Internet or a communication line such as a telephone line. Random Access Memory)), etc., which hold programs for a certain period of time.
The program may be transmitted from a computer system storing the program in a storage device or the like to another computer system via a transmission medium or by a transmission wave in the transmission medium. Here, the “transmission medium” for transmitting the program refers to a medium having a function of transmitting information, such as a network (communication network) such as the Internet or a communication line (communication line) such as a telephone line.
The program may be for realizing a part of the functions described above. Furthermore, what can implement | achieve the function mentioned above in combination with the program already recorded on the computer system, and what is called a difference file (difference program) may be sufficient.

以上、本発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等も含まれる。   As mentioned above, although embodiment of this invention was explained in full detail with reference to drawings, the specific structure is not restricted to this embodiment, The design change etc. of the range which does not deviate from the summary of this invention are included.

本発明の一実施形態に係るデータ共有システムの全体構成を示すブロック図である。1 is a block diagram showing an overall configuration of a data sharing system according to an embodiment of the present invention. 同実施形態に係るデータ共有処理のメンバ端末登録段階の手順を示すシーケンスチャートである。It is a sequence chart which shows the procedure of the member terminal registration step of the data sharing process which concerns on the embodiment. 同実施形態に係るデータ共有処理のデータ保存段階の手順を示すシーケンスチャートである。It is a sequence chart which shows the procedure of the data preservation | save stage of the data sharing process which concerns on the embodiment. 図1に示す端末1の記憶部の構成例である。It is a structural example of the memory | storage part of the terminal 1 shown in FIG. 図1に示すストレージサーバ2の記憶部の構成例である。It is a structural example of the memory | storage part of the storage server 2 shown in FIG. 図5に示すデータレコードの構成例である。6 is a configuration example of a data record shown in FIG. 本発明の一実施形態に係る鍵配布図である。It is a key distribution chart concerning one embodiment of the present invention. 同実施形態に係るデータ共有処理のデータ参照段階の手順を示すシーケンスチャートである。It is a sequence chart which shows the procedure of the data reference step of the data sharing process which concerns on the embodiment. 同実施形態に係るデータリストの構成例である。It is a structural example of the data list which concerns on the same embodiment. 同実施形態に係るデータ共有処理の2回目以降のデータ参照段階の手順を示すシーケンスチャートである。It is a sequence chart which shows the procedure of the data reference step after the 2nd time of the data sharing process which concerns on the embodiment. 同実施形態に係るデータ共有処理のデータ更新段階の手順を示すシーケンスチャートである。It is a sequence chart which shows the procedure of the data update step of the data sharing process which concerns on the embodiment. 同実施形態に係るデータ共有処理の環境移行段階の手順を示すシーケンスチャートである。It is a sequence chart which shows the procedure of the environment transfer stage of the data sharing process which concerns on the embodiment.

符号の説明Explanation of symbols

1…グループメンバ端末(端末装置)、2…ストレージサーバ(データ管理装置)、3…鍵管理サーバ、4…通信ネットワーク、5…外部デバイス DESCRIPTION OF SYMBOLS 1 ... Group member terminal (terminal device), 2 ... Storage server (data management device), 3 ... Key management server, 4 ... Communication network, 5 ... External device

Claims (10)

メンバ間でデータを共有するグループに属するメンバの端末装置と、前記端末装置と通信回線を介して接続されるデータ管理装置とを有するデータ共有システムにおける前記端末装置であり、
前記グループ内で共通の共通シェア用鍵と自端末固有のマスターシェアとから共通シェアを生成し、該共通シェア及び自己の端末識別子を前記データ管理装置に送り登録要求する端末登録手段と、
暗号鍵を用いて共通鍵暗号方式により共有データを暗号化し、該暗号鍵と前記マスターシェアとから暗号鍵シェアを生成し、該暗号化データ、暗号鍵シェア及び自己の端末識別子を前記データ管理装置に送り保存要求するデータ保存手段と、
前記データ管理装置から暗号化データ及び自己用の暗号鍵シェアを取得し、該暗号鍵シェア及び前記マスターシェアを用いて暗号鍵を復元し、該暗号鍵を用いて前記データ管理装置から取得した暗号化データを復号するデータ参照手段と、
を備えたことを特徴とする端末装置。
The terminal device in a data sharing system having a terminal device of a member belonging to a group sharing data between members and a data management device connected to the terminal device via a communication line,
A terminal registration unit that generates a common share from a common share key that is common within the group and a master share that is unique to the terminal, sends the common share and the terminal identifier of the terminal to the data management device, and requests registration.
The shared data is encrypted by a common key cryptosystem using an encryption key, an encryption key share is generated from the encryption key and the master share, and the encrypted data, the encryption key share, and its own terminal identifier are stored in the data management device. Data storage means for sending and requesting storage;
Obtaining encrypted data and a self-use encryption key share from the data management device, restoring the encryption key using the encryption key share and the master share, and obtaining the encryption from the data management device using the encryption key Data reference means for decoding the encrypted data;
A terminal device comprising:
メンバ間でデータを共有するグループに属するメンバの端末装置と、前記端末装置と通信回線を介して接続されるデータ管理装置とを有するデータ共有システムにおける前記データ管理装置であり、
端末装置から登録要求された共通シェア及び端末識別子を関連付けて記録する端末登録手段と、
端末装置から保存要求された暗号化データ、暗号鍵シェア及び端末識別子に関し、暗号化データに対して暗号鍵シェアと端末識別子の組を関連付けて記録するデータ保存手段と、
前記端末装置から参照要求された前記データ保存手段に格納される暗号化データと、該要求元の端末装置用の暗号鍵シェアとを該要求元の端末装置に送るデータ参照手段と、を備え
前記データ参照手段は、データ参照要求元の端末装置用の暗号鍵シェアが参照対象の暗号化データに関連付けて記録されていない場合、参照対象の暗号化データに関連付けて記録されている任意の端末装置用の暗号鍵シェア及び該端末装置の共通シェア、並びにデータ参照要求元の端末装置の共通シェアから、データ参照要求元の端末装置用の暗号鍵シェアを生成し、該データ参照要求元の端末装置用の暗号鍵シェアを参照対象の暗号化データに関連付けて記録する、
ことを特徴とするデータ管理装置。
The data management device in a data sharing system comprising: a terminal device of a member belonging to a group that shares data between members; and a data management device connected to the terminal device via a communication line;
A terminal registration means for recording the common share and the terminal identifier requested to be registered from the terminal device in association with each other;
Data storage means for recording the encryption data, encryption key share, and terminal identifier requested to be stored from the terminal device in association with the encrypted data and a pair of the terminal identifier and the encrypted data;
Data reference means for sending the encrypted data stored in the data storage means requested to be referred to from the terminal device and the encryption key share for the requesting terminal device to the requesting terminal device ;
If the encryption key share for the terminal device that is the data reference request is not recorded in association with the reference target encrypted data, the data reference means is an arbitrary terminal recorded in association with the reference target encrypted data Generating an encryption key share for the terminal device of the data reference request source from the encryption key share for the device, the common share of the terminal device, and the common share of the terminal device of the data reference request source, and the terminal of the data reference request source Record the device's encryption key share in association with the reference encryption data.
A data management apparatus characterized by that.
暗号鍵を用いて共通鍵暗号方式により更新対象の共有データを暗号化し、該暗号鍵と前記マスターシェアとから暗号鍵シェアを生成し、該暗号化データ、暗号鍵シェア及び自己の端末識別子を前記データ管理装置に送り更新要求するデータ更新手段を備えたことを特徴とする請求項1に記載の端末装置。   Encrypt shared data to be updated by a common key cryptosystem using an encryption key, generate an encryption key share from the encryption key and the master share, and store the encrypted data, the encryption key share, and the terminal identifier of the self The terminal device according to claim 1, further comprising a data update unit that sends a data update request to the data management device. 前記端末装置から受け取った更新対象の暗号化データ、暗号鍵シェア及び端末識別子によって更新対象の保存データを書き換えるデータ更新手段を備えたことを特徴とする請求項2に記載のデータ管理装置。   3. The data management apparatus according to claim 2, further comprising a data updating unit that rewrites the storage data to be updated with the encrypted data to be updated, the encryption key share, and the terminal identifier received from the terminal device. 前記データ更新手段は、更新対象の暗号化データに関連付けて記録されている未更新の暗号鍵シェアを、更新後の暗号鍵に対応する暗号鍵シェアに更新することを特徴とする請求項に記載のデータ管理装置。 Wherein the data updating means, the un-updated encryption key shares are recorded in association with the updated encrypted data, updating the encryption key shares corresponding to the encryption key updated to claim 4, wherein The data management device described. 前記データ更新手段は、前記暗号鍵シェアの更新をまとめて行うことを特徴とする請求項に記載のデータ管理装置。 The data management apparatus according to claim 5 , wherein the data update unit collectively updates the encryption key share. 前記データ更新手段は、前記暗号鍵シェアの更新を、端末装置毎にデータ参照時に行うことを特徴とする請求項に記載のデータ管理装置。 6. The data management apparatus according to claim 5 , wherein the data update unit updates the encryption key share at the time of data reference for each terminal apparatus. 前記グループに属するメンバの端末装置として失効した端末装置に関するデータを全て消去する環境移行手段を備えたことを特徴とする請求項2、、5、6、7のいずれか1項に記載のデータ管理装置。 The data according to any one of claims 2, 4 , 5, 6, and 7, further comprising environment transition means for erasing all data relating to terminal devices that have expired as terminal devices of members belonging to the group. Management device. メンバ間でデータを共有するグループに属するメンバの端末装置と、前記端末装置と通信回線を介して接続されるデータ管理装置とを有するデータ共有システムの前記端末装置におけるデータ共有処理を行うためのコンピュータプログラムであって、
前記グループ内で共通の共通シェア用鍵と自端末固有のマスターシェアとから共通シェアを生成し、該共通シェア及び自己の端末識別子を前記データ管理装置に送り登録要求する端末登録機能と、
暗号鍵を用いて共通鍵暗号方式により共有データを暗号化し、該暗号鍵と前記マスターシェアとから暗号鍵シェアを生成し、該暗号化データ、暗号鍵シェア及び自己の端末識別子を前記データ管理装置に送り保存要求するデータ保存機能と、
前記データ管理装置から暗号化データ及び自己用の暗号鍵シェアを取得し、該暗号鍵シェア及び前記マスターシェアを用いて暗号鍵を復元し、該暗号鍵を用いて前記データ管理装置から取得した暗号化データを復号するデータ参照機能と、
をコンピュータに実現させることを特徴とするコンピュータプログラム。
A computer for performing data sharing processing in a terminal device of a data sharing system having a terminal device of a member belonging to a group sharing data between members and a data management device connected to the terminal device via a communication line A program,
A terminal registration function for generating a common share from a common share key common within the group and a master share unique to the terminal, sending the common share and the terminal identifier of the terminal to the data management device, and requesting registration,
The shared data is encrypted by a common key cryptosystem using an encryption key, an encryption key share is generated from the encryption key and the master share, and the encrypted data, the encryption key share, and its own terminal identifier are stored in the data management device. A data storage function to send and request storage,
Obtaining encrypted data and a self-use encryption key share from the data management device, restoring the encryption key using the encryption key share and the master share, and obtaining the encryption from the data management device using the encryption key A data reference function for decrypting encrypted data;
A computer program for causing a computer to realize the above.
メンバ間でデータを共有するグループに属するメンバの端末装置と、前記端末装置と通信回線を介して接続されるデータ管理装置とを有するデータ共有システムの前記データ管理装置におけるデータ共有処理を行うためのコンピュータプログラムであって、
端末装置から登録要求された共通シェア及び端末識別子を関連付けて記録する端末登録機能と、
端末装置から保存要求された暗号化データ、暗号鍵シェア及び端末識別子に関し、暗号化データに対して暗号鍵シェアと端末識別子の組を関連付けて記録するデータ保存機能と、
前記端末装置から参照要求された前記データ保存機能に格納される暗号化データと、該要求元の端末装置用の暗号鍵シェアとを該要求元の端末装置に送るデータ参照機能と、をコンピュータに実現させるためのコンピュータプログラムであり、
前記データ参照機能は、データ参照要求元の端末装置用の暗号鍵シェアが参照対象の暗号化データに関連付けて記録されていない場合、参照対象の暗号化データに関連付けて記録されている任意の端末装置用の暗号鍵シェア及び該端末装置の共通シェア、並びにデータ参照要求元の端末装置の共通シェアから、データ参照要求元の端末装置用の暗号鍵シェアを生成し、該データ参照要求元の端末装置用の暗号鍵シェアを参照対象の暗号化データに関連付けて記録する、
ことを特徴とするコンピュータプログラム。
Data sharing processing in the data management device of a data sharing system having a terminal device of a member belonging to a group sharing data between members and a data management device connected to the terminal device via a communication line A computer program,
A terminal registration function that records the common share and the terminal identifier requested to be registered from the terminal device;
A data storage function for recording the encryption data, the encryption key share, and the terminal identifier that are requested to be stored from the terminal device, by associating the encryption data with a set of the encryption key share and the terminal identifier
A data reference function for sending to the computer the encrypted data stored in the data storage function requested by the terminal device and the encryption key share for the requesting terminal device to the requesting terminal device. A computer program for realizing,
If the encryption key share for the terminal device that is the data reference request source is not recorded in association with the reference target encrypted data, the data reference function is any terminal that is recorded in association with the reference target encrypted data. Generating an encryption key share for the terminal device of the data reference request source from the encryption key share for the device, the common share of the terminal device, and the common share of the terminal device of the data reference request source, and the terminal of the data reference request source Record the device's encryption key share in association with the reference encryption data.
A computer program characterized by the above.
JP2007341082A 2007-12-28 2007-12-28 Terminal device, data management device, and computer program Expired - Fee Related JP5014977B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007341082A JP5014977B2 (en) 2007-12-28 2007-12-28 Terminal device, data management device, and computer program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007341082A JP5014977B2 (en) 2007-12-28 2007-12-28 Terminal device, data management device, and computer program

Publications (2)

Publication Number Publication Date
JP2009163415A JP2009163415A (en) 2009-07-23
JP5014977B2 true JP5014977B2 (en) 2012-08-29

Family

ID=40965977

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007341082A Expired - Fee Related JP5014977B2 (en) 2007-12-28 2007-12-28 Terminal device, data management device, and computer program

Country Status (1)

Country Link
JP (1) JP5014977B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114244513B (en) * 2021-12-31 2024-02-09 日晷科技(上海)有限公司 Key negotiation method, device and storage medium

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3587045B2 (en) * 1998-02-04 2004-11-10 三菱電機株式会社 Authentication management device and authentication management system
JP3662828B2 (en) * 2000-10-04 2005-06-22 北陸日本電気ソフトウェア株式会社 File encryption system
JP2002198947A (en) * 2000-12-26 2002-07-12 Mitsubishi Materials Corp Information reserving server, information reserving method, and recording medium
JP2004234344A (en) * 2003-01-30 2004-08-19 Kddi Corp Database access system

Also Published As

Publication number Publication date
JP2009163415A (en) 2009-07-23

Similar Documents

Publication Publication Date Title
Yan et al. Heterogeneous data storage management with deduplication in cloud computing
CN102546176B (en) DNS security is supported in multiagent environment
CN110704860A (en) Longitudinal federal learning method, device and system for improving safety and storage medium
CN113346998B (en) Key updating and file sharing method, device, equipment and computer storage medium
CN102571329B (en) Password key management
US20110320815A1 (en) Key Sharing System, Communication Terminal, Management Device, Key Sharing Method, and Computer Program
JP6404481B2 (en) Method and apparatus for managing heterogeneous data storage in cloud computing
CN101019368A (en) Method of delivering direct proof private keys to devices using a distribution CD
WO2014034018A1 (en) Re-encryption system, re-encryption method and re-encryption program
CN113098849A (en) Access control method based on attribute and identity encryption, terminal and storage medium
JP2018148434A (en) Key generation device and key generation method
CN110417547B (en) Secret key updating method and system for secret communication based on certificateless cryptography
JPWO2018016330A1 (en) Communication terminal, server device, program
CN114679340A (en) File sharing method, system, device and readable storage medium
US20240086562A1 (en) User data management method and related device
JP2024025805A (en) Storage system download terminal, key terminal, and storage server processing encrypted file while keeping private key hidden in key terminal
JP6294882B2 (en) Key storage device, key storage method, and program thereof
JP2006279269A (en) Information management device, information management system, network system, user terminal, and their programs
JP5103095B2 (en) Key generation device, terminal device, storage server, and computer program
JP5014977B2 (en) Terminal device, data management device, and computer program
CN108495309B (en) Information processing method, electronic device, and storage medium
CN113824713B (en) Key generation method, system and storage medium
JP2019121999A (en) Data sharing method, data sharing system, communication terminal, data sharing server, and program
JP5046852B2 (en) Key generation device, terminal device, storage server, and computer program
KR102512871B1 (en) Centralized private key management method for multiple user devices related to a single public key

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100716

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20100720

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120131

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120228

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120427

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20120501

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

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

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150615

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