+

WO2025169283A1 - Asymmetric secret sharing device, secret information recovery device, asymmetric secret sharing program, and secret information recovery program - Google Patents

Asymmetric secret sharing device, secret information recovery device, asymmetric secret sharing program, and secret information recovery program

Info

Publication number
WO2025169283A1
WO2025169283A1 PCT/JP2024/003782 JP2024003782W WO2025169283A1 WO 2025169283 A1 WO2025169283 A1 WO 2025169283A1 JP 2024003782 W JP2024003782 W JP 2024003782W WO 2025169283 A1 WO2025169283 A1 WO 2025169283A1
Authority
WO
WIPO (PCT)
Prior art keywords
secret information
secret
values
shares
asymmetric
Prior art date
Application number
PCT/JP2024/003782
Other languages
French (fr)
Japanese (ja)
Inventor
惠一 岩村
Original Assignee
株式会社Fiytty
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 株式会社Fiytty filed Critical 株式会社Fiytty
Priority to PCT/JP2024/003782 priority Critical patent/WO2025169283A1/en
Priority to PCT/JP2024/037289 priority patent/WO2025169543A1/en
Publication of WO2025169283A1 publication Critical patent/WO2025169283A1/en

Links

Definitions

  • the technology disclosed herein relates to an asymmetric secret sharing device, a secret information recovery device, an asymmetric secret sharing program, and a secret information recovery program.
  • Cloud computing is a technology that distributes and stores user data in large-capacity virtual storage on multiple servers on a network known as the cloud, allowing users to access that data as needed from anywhere via the network.
  • data distributed and stored on the cloud will be able to be used to perform various confidential calculations while keeping the data confidential.
  • IoT Internet of Things
  • Conventional secret sharing systems consist of n data servers that store shares, a dealer (i.e., a communication terminal) that distributes the secret information, and a restorer (i.e., a communication terminal) that restores the secret information.
  • a dealer i.e., a communication terminal
  • a restorer i.e., a communication terminal
  • the owner of the secret information acts as the dealer and shares the information, or requests a dealer who exists only during secret sharing to share the secret information.
  • the dealer then performs the secret sharing process, calculates n shares, and distributes and stores these values across n data servers.
  • a restorer collects and restores k shares from the n shared values.
  • the dealer substitutes each server ID for x i in the above formula (1), calculates the variance value W i , and distributes (x i , W i ) to each server. [Decryption] 1.
  • [Additive secret sharing method] [Dispersion] 1. The dealer generates k-1 random numbers S 1 to S k-1 . 2. The dealer calculates the following for the secret information s:
  • Non-Patent Document 1 a ramp secret sharing scheme, as shown in Non-Patent Document 1, is known, in which the secret information is divided into 1/L and used as the coefficients of the sharing formula. This allows the size of the shares to be reduced, thereby reducing the memory capacity.
  • a technique called asymmetric secret sharing, as shown in Patent No. 6893708, has also been proposed.
  • Asymmetric secret sharing schemes reduce the memory capacity (number of servers) by reducing the number of shares stored, rather than the size of the shares.
  • [Restore] 1.
  • a user who restores secret information s i selects k arbitrary servers from n servers x 1 , . . . , x n and sends the ID [y] of user y and the data identifier dID[s i ] of secret information s i to the selected servers. 2.
  • the key j used for encryption may be identified by analysis using a quantum computer or the like. If the key is identified, qm + 1 for the subsequent secret information sm+1 will be leaked. Therefore, even if sm +1 is not disclosed, the secret information sm+1 will be leaked from the transmitted Wm +1 and the identified qm +1 .
  • a1 is determined as a true random number. Therefore, even if secret information s1 is made public, a different true random number is used for the next secret information s2 . This prevents the key from being analyzed, and the security of sm +1 is maintained even if s2 , ..., sm are made public.
  • the disclosed technology aims to provide an asymmetric secret sharing device, a secret information recovery device, an asymmetric secret sharing program, and a secret information recovery program that can make analyzing secret information more difficult than conventional technology.
  • a first aspect of the technology disclosed herein is an asymmetric secret sharing device for a system in which one piece of secret information is distributed into n shared values, where n is an integer greater than or equal to 2 and k is an integer with a minimum value of 2 and a maximum value of n, and the secret information can be restored by collecting k of the shared values, but not by collecting k-1 or fewer of the shared values.
  • the device is characterized by having: a generation unit that obtains one or more true random numbers as first secret information, and generates t ( ⁇ k) shared values for each true random number from a first key; and a calculation unit that calculates n-t shared values from the t shared values and the first secret information.
  • a fifth aspect is an asymmetric secret sharing apparatus for a system in which n is an integer greater than or equal to 2, k is an integer with a minimum value of 2 and a maximum value of n, one piece of secret information is shared into n shares, and the secret information can be restored by collecting k of the shares, but not by collecting k-1 or fewer of the shares.
  • the asymmetric secret sharing apparatus has a first calculation unit that calculates t ( ⁇ k) shares from a key, and a second calculation unit that calculates n-t shares from the calculated t shares and the secret information.
  • the secret sharing apparatus further comprises a true random number generation unit that generates true random numbers using a natural phenomenon that cannot be controlled by humans, and at least one of the t shares and the n-t shares is calculated further using the true random numbers.
  • FIG. 1 is a block diagram of a distribution and decryption system 10 according to a first embodiment.
  • FIG. 1 is a block diagram of the owner 12R1.
  • 10 is a flowchart of a distribution program 26P1 according to the first embodiment.
  • FIG. 10 is a diagram illustrating processing of a distribution unit 22A according to the first embodiment.
  • 10 is a flowchart of a restoration program 26P2 according to the first embodiment.
  • FIG. 10 is a diagram illustrating processing of a restoration unit 22B according to the first embodiment.
  • 10 is a flowchart of a distribution program 26P1 according to the second embodiment.
  • 10 is a flowchart of a restoration program 26P2 according to the second embodiment.
  • 13 is a flowchart of a restoration program 26P2 according to the fourth embodiment.
  • the proposed method is information-theoretically secure even if the information W 1 , ..., W m of the communication path and all data servers is known to an attacker, and furthermore, even if the secret information s 1 , ..., s m is made public, the pseudo-random numbers cannot be analyzed, and the next secret information s m+1 is as secure as conventional secret sharing.
  • Figure 1 shows a block diagram of a distribution and decryption system 10 according to a first embodiment.
  • n is an integer greater than or equal to 2 and k is an integer with a minimum value of 2 and a maximum value of n
  • one piece of secret information is distributed into n distribution values, and the secret information can be restored by collecting k of the distribution values, but cannot be restored by collecting k-1 or fewer.
  • the distribution and decryption system 10 comprises r (i.e., a natural number) owners 12R1 to 12Rr and n-t data servers 14Kt+1 to 14Kn.
  • the owners 12R1 to 12Rr and the data servers 14Kt+1 to 14Kn are connected to each other via a network 16 (e.g., the Internet) so that they can communicate with each other.
  • a network 16 e.g., the Internet
  • Data servers 14Kt+1 to 14Kn each have a storage device 14M that stores their own ID.
  • the storage device 14M of data server 14Kt+1 stores the ID xt+1, and also has a storage device that stores the distribution values sent from the owner.
  • Owner 12R1 is composed of a computer. Owner 12R1 is a communications terminal. Specifically, Owner 12R1 includes a CPU (Central Processing Unit) 22, RAM (Random Access Memory) 24, a storage device 26, a true random number generator 28, and a communications device 30. The CPU 22, RAM 24, storage device 26, true random number generator 28, and communications device 30 are interconnected via a bus 32 so that they can communicate with each other.
  • CPU Central Processing Unit
  • RAM Random Access Memory
  • the CPU 22, RAM 24, storage device 26, true random number generator 28, and communications device 30 are interconnected via a bus 32 so that they can communicate with each other.
  • the storage device 26 includes a secret information storage area 26M1 that stores the data identifier dID[S i ] of the secret information S i .
  • the storage device 26 includes a program storage area 26MP that stores a distribution program 26P1 and a restoration program 26P2.
  • the storage device 26 includes an ID storage area 26M4 that stores the IDs (x 1 , ..., x t , x t+1 , x t+2 , ..., xn) of the key servers 14K1 to 14Kt and the data servers 14Kt+1 to 14Kn.
  • IDs x 1 , ..., x t , x t+1 , x t+2 , ..., xn
  • each time secret information is generated the shared values are stored in the data server, and the shared values are called up as needed to restore the secret information.
  • the storage area for data identifiers in 26M1 does not need to be stored if the method for constructing data identifiers is fixed.
  • the CPU 22 functions as the distribution unit 22A and the restoration unit 22B by reading and executing the distribution program 26P1 and the restoration program 26P2 from the program storage area 26MP to the RAM 24.
  • the communication device 30 sends and receives data via the network 16.
  • Key1j and key2j may be generated from a single key keyj .
  • the shares Wr1 and W1 obtained in [shares] 1 and 2 may be sent separately, they are sent simultaneously to reduce the number of communications.
  • t > 1 it is desirable to conceal the t pseudo-random numbers generated by the key server with t true random numbers.
  • the generated true random number is one and concealed with the same true random number. Therefore, for ease of understanding, the number of true random numbers concealing the pseudo-random numbers generated by the key server is assumed to be one.
  • the pseudo-random numbers generated by the key server are to be kept secret using different true random numbers, this can be done as shown in the second embodiment.
  • the rest is the same as the asymmetric secret sharing scheme.
  • Figure 3A is a flowchart of the distribution program 26P1 according to the first embodiment
  • Figure 3B is a diagram showing the processing of the distribution unit 22A according to the first embodiment.
  • the CPU 22 executes the distribution program 26P1 to perform distributed processing.
  • step 42 the sharing unit 22A obtains a true random number r i as first secret information for its own secret information s i from the true random number generation device 28.
  • qr ij is used as t sharing values.
  • qr ij Enc(dID[s i ], key 1j ) (19)
  • the key key1,j is an example of a "first key” in the technology of the present disclosure.
  • the process of step 44 is an example of a process of a "generation unit" in the technology of the present disclosure.
  • step 46 the sharing unit 22A sets the secret information s i shown in the asymmetric secret sharing scheme as a true random number r i , and the pseudo-random numbers (t shared values) qr ij as q ij , and performs processes 4 and 5 of the asymmetric secret sharing scheme [Sharing] to calculate n-t shared values Wr i,t+1 , ..., Wr i,n from the t shared values qr ij and the first secret information r i .
  • step 46 is an example of the processing of the "calculation unit" of the technology disclosed herein.
  • the distribution unit 22A directly uses the pseudo-random numbers qr ij to conceal the true random numbers (first secret information).
  • the processing of distribution 1 is an example of the processing of the "first concealment unit” of the technology disclosed herein.
  • Distribution unit 22A of distribution 1 is an example of the "generation unit” and "calculation unit” of the technology disclosed herein.
  • q ij Enc(dID[s i ], key 2j ) (20) key2,j is an example of a "second key" in the technique of the present disclosure.
  • the sharing unit 22A sets its own secret information (i.e., the second secret information) as s i , sets the key server's share value as q ij + r i , and performs processes 4 and 5 of the asymmetric secret sharing scheme [Sharing] to calculate n-t share values W i,t+1 , ..., W i,n from the t share values q ij and the second secret information s i .
  • the sharing unit 22A sets its own secret information (i.e., the second secret information) as s i , sets the key server's share value as q ij + r i , and performs processes 4 and 5 of the asymmetric secret sharing scheme [Sharing] to calculate n-t share values W i,t+1 , ..., W i,n from the t share values q ij and the second secret information s i .
  • the sharing unit 22A does not directly use the pseudo-random numbers q ij but uses true random numbers to conceal the shared values and conceal the secret information. This is a difference from distribution 1.
  • the distribution unit 22A transmits dID[s i ], the calculated distribution values W i,t+1 , ..., W i,n, and the distribution values Wr i,t+1 , ..., Wr i,n to the data servers x t+1 , ..., x n , thereby completing the execution of the distribution program 26P1.
  • the data server associates dID[s i ], Wri ,t+1 , ..., Wri ,n with Wi ,t+1 , ..., Wi ,n and stores them.
  • the processing of distribution 2 is an example of the processing of the "second concealment unit" of the technology disclosed herein.
  • Distribution unit 22A of distribution 2 is an example of the "second concealment unit” of the technology disclosed herein.
  • the distribution unit 22A is an example of the "first concealment unit” (specifically, the “generation unit” and “calculation unit”) and “second concealment unit” of the technology disclosed herein.
  • Figure 4A is a flowchart of the restoration program 26P2 according to the first embodiment
  • Figure 4B is a diagram showing the processing of the restoration unit 22B according to the first embodiment. The restoration processing is performed by the CPU 22 executing the restoration program 26P2.
  • step 62 the restoration unit 22B receives the associated and stored shared values Wr i,t +1 , ..., Wr i, n and W i ,t+1 , ..., W i,n from an owner who wants to restore secret information s i by sending dID[s i ] to n-t data servers x t+ 1 , ... , xn .
  • step 66 the restoration unit 22B calculates qr ij from equation (19) using the key key 1j managed by itself, and restores the first secret information r i by combining it with Wr i.t+1 , . . . , Wr i,n .
  • step 68 the restoration unit 22B calculates q ij from equation (20) using the key key 2j that it manages, and restores the secret information s i by combining the shared values generated by the key server as q ij +r i with W i,t+1 , ..., W i,n .
  • the number of key servers is t ⁇ k, so one or two can be selected.
  • t 1 in [Share] 1
  • Wr i2 and Wr i3 shown below are calculated by process 4 of asymmetric secret sharing using an additional true random number r 2 corresponding to A(i) k-1-t in asymmetric secret sharing [Share] 4, and sent to data servers x2 and x3.
  • t pseudo-random numbers q ij generated using key 2j are concealed by first secret information r i , which is a true random number.
  • true random number r i may be generated as t shares without addition with q ij and used directly.
  • the same number of true random numbers as the key servers are required to change the value of the shares.
  • r 1 and r 2 may be used instead of a 1 and a 2 , and in this case, ordinary secret sharing can be used instead of asymmetric secret sharing. Note that the concealment of secret information is achieved by the secret sharing itself.
  • the following methods can be used to make the asymmetric secret sharing scheme information-theoretically secure.
  • the owner obtains a true random number r1 that is not 0, x1 , or x2 , and performs asymmetric secret sharing of the true random number r1 .
  • the owner asymmetrically shares secret information s1 by dividing r1 into x2 .
  • r1 x2'.
  • the restorer restores x2'.
  • the restorer restores the secret information s1 using the restored x2' as x2 .
  • the true random number r1 is also the first secret information
  • the owner's secret information s1 is the second secret information
  • distribution and restoration are performed in two stages, r1 and s1 .
  • a1 x2' can be known from equation (8), but x2' cannot. Therefore, since a1 is unknown, q1 cannot be known, and equation (17) holds, ensuring information-theoretic security.
  • x2 is defined as the first secret information x2', but x1 may also be defined as the first secret information x1 ', or both x1 ' and x2 ' may be defined as the first secret information.
  • a detailed algorithm is shown below.
  • r1 is defined for the second secret information s1 .
  • all server IDs x1 ', ..., xn ' can be selected as the first secret information.
  • the first secret information may be a single server ID, as in the first embodiment.
  • the number of first secret information in [Sharing] 1 is set to n-t, which is the same number as the number of data servers. Therefore, asymmetric secret sharing is repeated using n-t true random numbers as the first secret information.
  • Other settings are the same as those in the first embodiment.
  • FIG. 5 is a flowchart of distribution program 26P1 according to the second embodiment.
  • the CPU 22 is an example of a "processor" in the technology of this disclosure.
  • processors include dedicated electrical circuits, such as FPGAs (Field-Programmable Gate Arrays), PLDs (Programmable Logic Devices), or ASICs (Application Specific Integrated Circuits), which are processors with a circuit configuration designed specifically to perform specific processing.
  • FPGAs Field-Programmable Gate Arrays
  • PLDs Programmable Logic Devices
  • ASICs Application Specific Integrated Circuits
  • the secret information recovery device in the system described in claim 1 includes a processor, and the processor recovers first secret information and performs a process of recovering second secret information described in Appendix 2 using the recovered first secret information.
  • a secret sharing apparatus for a system in which one piece of secret information is distributed into n shared values, where n is an integer greater than or equal to 2 and k is an integer with a minimum value of 2 and a maximum value of n, and the secret information can be restored by collecting k of the shared values but cannot be restored by collecting k-1 or fewer shared values comprises a processor, which calculates t ( ⁇ k) shared values from a key and executes a process of calculating n-t shared values from the calculated t shared values and the secret information, and the secret sharing apparatus further comprises a true random number generation unit which generates true random numbers using a natural phenomenon that cannot be controlled by humans, and the processor calculates at least one of the t shared values and the n-t shared values using the true random numbers.

Landscapes

  • Storage Device Security (AREA)

Abstract

An asymmetric secret sharing device in a system in which one set of secret information is converted into n distributed values, and the secret information can be recovered by collecting k of the n distributed values, but cannot be recovered by collecting k-1 or fewer of the n distributed values, where n is an integer at least equal to 2 and k is an integer having a minimum value of 2 and a maximum value of n, said asymmetric secret sharing device being characterized by comprising: a generation unit that acquires one or more true random numbers as first secret information and generates t (< k) distributed values for each true random number from a first key; and a calculation unit that calculates n-t distributed values from the t distributed values and the first secret information.

Description

非対称秘密分散装置、秘密情報復元装置、非対称秘密分散プログラム、及び秘密情報復元プログラムAsymmetric secret sharing device, secret information recovery device, asymmetric secret sharing program, and secret information recovery program

 本開示の技術は、非対称秘密分散装置、秘密情報復元装置、非対称秘密分散プログラム、及び秘密情報復元プログラムに関する。 The technology disclosed herein relates to an asymmetric secret sharing device, a secret information recovery device, an asymmetric secret sharing program, and a secret information recovery program.

 近年、新たなネットワーク技術としてクラウドコンピューティングが注目されている。クラウドコンピューティングとはユーザの持つデータをクラウドと呼ばれるネットワーク上の複数サーバによる仮想の大容量ストレージに分散及び保管し、そのデータをどこからでもネットワーク経由でユーザが必要に応じてアクセスすることを可能にする技術である。ただし、安全のためクラウドに保存する情報は暗号化することが望まれている。さらに、データを暗号化して保管するだけでなく、クラウド上に分散及び保管されたデータを用いてデータを秘匿しながら種々の処理を行う秘匿計算が実行できることも期待されている。さらに近年ではIoT(Internet of Things)デバイスの普及に伴い、IoTデバイスからの情報を安全に秘匿通信できるセキュリティ技術も求められている。 In recent years, cloud computing has been attracting attention as a new network technology. Cloud computing is a technology that distributes and stores user data in large-capacity virtual storage on multiple servers on a network known as the cloud, allowing users to access that data as needed from anywhere via the network. However, for security reasons, it is desirable to encrypt information stored in the cloud. Furthermore, in addition to encrypting and storing data, it is also expected that data distributed and stored on the cloud will be able to be used to perform various confidential calculations while keeping the data confidential. Furthermore, with the recent spread of IoT (Internet of Things) devices, there is also a demand for security technology that can safely and confidentially transmit information from IoT devices.

 この様な秘匿保存及び秘匿計算を実現するために秘密分散法の利用が注目されている。秘密分散法とは1個の秘密情報をn(即ち、自然数)個の値(以降、分散値)に変換し、その内、k(即ち、自然数)個(k≦n)の分散値を集めることで元の秘密情報を復元でき、k個未満の分散値からは一切秘密情報に関する情報を得ることができないという特徴を持つ技術である。また。この秘密分散法として、下記に示すShamirによる(k,n)閾値秘密分散法(以降、Shamir法)及び加法的秘密分散法が良く知られている。Shamir法を含む従来の秘密分散システムは分散値を保存するn台のデータサーバと、秘密情報を分散するディーラ(即ち、通信端末)及び秘密情報を復元する復元者(即ち、通信端末)からなる。すなわち、分散時には秘密情報のオーナが自らディーラとなって分散する、または秘密情報の分散を秘密分散時のみ存在するディーラに依頼し、ディーラは秘密分散処理を行いn個の分散値を計算して、その値を各々n個のデータサーバに分散及び保管する。一方、復元は分散されたn個の分散値のうち、復元者がk個の分散値を集めて復元する。 The use of secret sharing schemes has attracted attention as a way to achieve such secret storage and secure computation. Secret sharing schemes are a technology characterized by converting a single piece of secret information into n (i.e., a natural number) values (hereinafter referred to as shares) and allowing the original secret information to be restored by collecting k (i.e., a natural number) shares (k≦n) of these, while no information about the secret information can be obtained from shares less than k. Well-known examples of this type of secret sharing scheme include Shamir's (k,n) threshold secret sharing scheme (hereinafter referred to as the Shamir scheme) and additive secret sharing scheme, as shown below. Conventional secret sharing systems, including the Shamir scheme, consist of n data servers that store shares, a dealer (i.e., a communication terminal) that distributes the secret information, and a restorer (i.e., a communication terminal) that restores the secret information. In other words, when sharing, the owner of the secret information acts as the dealer and shares the information, or requests a dealer who exists only during secret sharing to share the secret information. The dealer then performs the secret sharing process, calculates n shares, and distributes and stores these values across n data servers. On the other hand, when restoring the secret, a restorer collects and restores k shares from the n shared values.

 Shamir法は、以下のようにして行う。
[Shamir法]
 [分散]
1 ディーラは、s(即ち、秘密情報)<pかつn<pである任意の素数pを選ぶ。
2 ディーラは、Z/pZ (即ち、剰余類環)から、異なるn個のx(i=1,2,・・・,n)を選び出し、サーバIDとして公開(即ち、復元者に送信)する。
3 ディーラは、Z/pZから、k-1個の乱数a(l=1,2,・・・,k-1)を選んで,以下の式(以降,分散式と呼ぶ)を生成する。
=s+a+a +・・・+ak-1 k-1(modp)       (1)
4 ディーラは,上記式(1)のxに各サーバIDを代入して,分散値Wを計算し,各サーバに(x,W)を配布する。
[復号]
1 復号に用いる分散値をW(i=1,2,・・・,k)とする。また,その分散値に対応するサーバIDをx(i=1,2,・・・,k)とする。
2 復元者は,k個の(x,W)を集め,分散式にxとWを代入し,k個の連立方程式を解いて,sを得る。sの復元の際には,Lagrangeの補間公式を用いると便利である。
The Shamir method is carried out as follows.
[Shamir method]
[Dispersion]
1. The dealer chooses an arbitrary prime number p such that s (i.e., secret information)<p and n<p.
2. The dealer selects n different x i (i=1, 2, . . . , n) from Z/pZ (i.e., the coset ring) and publishes them as server IDs (i.e., sends them to the restorer).
3 The dealer selects k-1 random numbers a l (l=1, 2, ..., k-1) from Z/pZ and generates the following formula (hereinafter referred to as the distribution formula):
W i =s+a 1 x i +a 2 x i 2 +...+a k-1 x i k-1 (modp) (1)
4. The dealer substitutes each server ID for x i in the above formula (1), calculates the variance value W i , and distributes (x i , W i ) to each server.
[Decryption]
1. Let W i (i=1, 2, ..., k) be the share used for decryption, and let x i (i=1, 2, ..., k) be the server ID corresponding to that share.
2 The restorer collects k (x i , W i ), substitutes x i and W i into the variance formula, and solves k simultaneous equations to obtain s. When restoring s, it is convenient to use the Lagrange interpolation formula.

 また、加法的秘密分散法は以下のようになる。以下ではn=kの場合を説明する。
[加法的秘密分散法]
 [分散]
1 ディーラは,k-1個の乱数S~Sk-1を生成する。
2 ディーラは,秘密情報sに対して以下を計算する。
The additive secret sharing scheme is as follows: The case where n=k will be explained below.
[Additive secret sharing method]
[Dispersion]
1. The dealer generates k-1 random numbers S 1 to S k-1 .
2. The dealer calculates the following for the secret information s:

 Sk=s-S-・・・-Sk-1
3 ディーラは,k台のサーバに識別子x(i=1,2,・・・,k)を選択し、サーバxにSを分散値として配布する。
[復号]
1 復元者は,k個のSを集め,s=S1+・・・+Skを計算し、秘密情報sを復元する。
Sk=s-S 1 -...-S k-1
3. The dealer selects identifiers x i (i=1, 2, . . . , k) for k servers and distributes S i to the servers x i as distribution values.
[Decryption]
1. The restorer collects k S i s , calculates s = S 1 + ... + Sk s, and restores the secret information s.

 n=k+1とする場合、ディーラはサーバxにS,Si+1を配布する。ただし、便宜上Sk+1をS1とみなす。 When n=k+1, the dealer distributes S i and S i+1 to the server x i , where Sk+1 is regarded as S1 for convenience.

 ただし、秘密分散法の問題点として1つの秘密情報がn個の分散値になるためメモリ容量(換言すると、サーバ容量)が増大するという点がある。それに対して、秘密情報を1/Lに分割し、分散式の係数とする非特許文献1に示すランプ型秘密分散法が知られている。これによって、分散値のサイズの小型化が実現でき、メモリ容量が削減される。また、特許第6893708に示される非対称秘密分散法と呼ばれる手法も提案されている。非対称秘密分散法は分散値のサイズではなく、保存する分散値の数を減らすことによってメモリ容量(サーバ数)を削減する。以下にShamir法に対する非対称秘密分散法を示す(非対称秘密分散法は加法的秘密分散法に対しても適応できる)。
(非特許文献1)
 山本博資.”(k,L,n)しきい値秘密分散システム”.電子通信学会論文誌.vol.J68-A,no.9,pp.945-952(1985)
 [非対称秘密分散法]
 クラウドシステムを構成するn台のサーバからt(即ち、自然数)台(t<k)を選択し,鍵サーバとする。これらの鍵サーバは分散値を保存せず,擬似乱数を生成するための鍵のみを持つ。鍵サーバ以外のサーバをデータサーバと呼び,これらはディーラであるユーザ(即ち、通信端末)から送られた分散値を保管する。また,秘密情報を分散するr(即ち、自然数)個のユーザに対して、各々のユーザyにはユーザ識別のためID[y](y=1,・・・,r)が割り当てられており,ユーザyが持つm個の秘密情報s,・・・,sにもそれぞれデータ識別のためdID[s](i=1,・・・,m)が割り振られているものとする。また,Enc(a,b)はaをbという鍵を用いて暗号化する処理を表すものとする。以下にユーザyがディーラとなって非対称秘密分散を行う場合を説明する。
However, a problem with secret sharing schemes is that one piece of secret information becomes n shares, which increases the memory capacity (in other words, the server capacity). To address this issue, a ramp secret sharing scheme, as shown in Non-Patent Document 1, is known, in which the secret information is divided into 1/L and used as the coefficients of the sharing formula. This allows the size of the shares to be reduced, thereby reducing the memory capacity. A technique called asymmetric secret sharing, as shown in Patent No. 6893708, has also been proposed. Asymmetric secret sharing schemes reduce the memory capacity (number of servers) by reducing the number of shares stored, rather than the size of the shares. Below, we will show an asymmetric secret sharing scheme for the Shamir scheme (asymmetric secret sharing schemes can also be applied to additive secret sharing schemes).
(Non-Patent Document 1)
Hirosuke Yamamoto. "(k, L, n) Threshold Secret Sharing System." Transactions of the Institute of Electronics and Communication Engineers, vol. J68-A, no. 9, pp. 945-952 (1985)
[Asymmetric Secret Sharing Scheme]
Of the n servers constituting the cloud system, t (i.e., a natural number) servers (t<k) are selected and designated as key servers. These key servers do not store shares, but only have keys for generating pseudorandom numbers. Servers other than the key servers are called data servers, and these store shares sent from users (i.e., communication terminals) who are dealers. Furthermore, for r (i.e., a natural number) users to whom secret information is shared, each user y is assigned an ID[y] (y = 1, ..., r) for user identification, and each of the m pieces of secret information s 1 , ..., s m held by user y is assigned a dID[s i ] (i = 1, ..., m) for data identification. Furthermore, Enc(a, b) represents the process of encrypting a using key b. Below, we will explain the case where user y acts as the dealer and performs asymmetric secret sharing.

 [分散]
1 ユーザyは自身のID[y]を鍵サーバx,・・・,xに送る。
2 ID[y]を受け取った鍵サーバは自身の持つ暗号装置と鍵key(j=1,・・・,t)を利用して式(2)より,Eid(y,j)を生成し,ユーザyに送る。
Eid(y,j)=Enc(ID[y],key)(j=1,・・・,t)       (2)
 
3 これを受け取ったユーザyは自身の秘密情報に関するデータ識別子dID[s](i=1,・・・,m)を用いて式(3)より,擬似乱数qijを生成する。
ij=Enc(dID[s],Eid(y,j))      (3)
4 ユーザyはまず式(1)のk-1次の分散式の係数ベクトルA(i)=[s,ai1,・・・,aik-1におけるk-1-t次の部分ベクトルA(i)k-1-t=[ait+1,・・・,aik-1を真正乱数を用いてiごとに定める。その後,手順(3)で生成したt次の擬似乱数系列Q=[qi1,・・・,qit及び鍵サーバのID系列から計算される下記
[Dispersion]
1. User y sends his ID[y] to key servers x 1 , . . . , x t .
2. The key server that receives ID[y] generates Eid(y, j) using its own encryption device and key j (j=1, . . . , t) according to equation (2) and sends it to user y.
Eid (y, j) = Enc (ID [y], key j ) (j = 1, ..., t) (2)

3. User y receives this and generates a pseudo-random number q ij using the data identifier dID[s i ] (i=1, . . . , m) relating to his/her own confidential information according to equation (3).
q ij = Enc(dID[s i ], Eid(y, j)) (3)
4. First, the user y determines the k-1-t-th order partial vector A(i) k-1-t = [a it + 1 , ..., a ik-1 ] T in the coefficient vector A(i) = [s i , a i1, ..., a ik-1 ] T of the k-1-th order distribution formula in formula (1) for each i using true random numbers. Then, the user y determines the following partial vector A(i) k-1 -t = [a it+1 , ..., a ik-1] T calculated from the t-th order pseudorandom number sequence Q = [q i1 , ..., q it ] T generated in step (3) and the ID sequence of the key server:

   

を用いて、下記式(4)より残りの部分ベクトルA(i)=[ai1,・・・,aitをiごとに算出する。 Using the above, the remaining partial vector A(i) t =[a i1 , . . . , a it ] T is calculated for each i using the following equation (4).

   

 ここで上記式においてS=[s,・・・,sとすると、
A(i)k-1=X′-1(Q-S) (5)
 これにより,ユーザはk-1次の分散式の係数ベクトルA(i)=[s,ai1,・・・,aik-1をすべて決定することができる。
5 また,ユーザはデータサーバxt+1,・・・,xに関する分散値Wit+1,・・・,Winを手順(4)で生成した係数行列を利用して(k,n)閾値秘密分散法と同様の手順(上記Shamir法[分散]4参照)により算出する。
6 ユーザyは各データサーバに生成した分散値W1j,・・・,Wmj(j=t+1,・・・,n)を送る。
[復元]
1 秘密情報sを復元するユーザはn個のサーバx,・・・,xから任意のk個のサーバを選択し,選択したサーバに対してユーザyのID[y]及び秘密情報sのデータ識別子dID[s]を送る。
2 鍵サーバの中で,(ID[y],dID[s])を受け取った鍵サーバは自身の持つ鍵key及び暗号装置を利用して,式(2)よりEid(y,j)を生成し,式(3)より擬似乱数qijを生成してユーザに送る。
3 データサーバの中で,(ID[y],dID[s])を受け取ったデータサーバはこれらのID情報に対応する分散情報Wijをユーザに送る。
4 サーバにより生成された分散情報及び擬似乱数を受け取ったユーザは,これらを利用して(k,n)閾値秘密分散法と同様の手段で,秘密情報sを復元する。
Here, if S=[s i , . . . , s i ] T in the above formula, then
A(i) k-1 =X'- 1 (Q-S) (5)
This allows the user to determine all of the coefficient vectors A(i)=[s i , a i1 , . . . , a ik-1 ] T of the k-1th order dispersion equation.
5. In addition, the user calculates the distribution values W it+1 , ..., W in for the data servers x t+1 , ..., x n using the coefficient matrix generated in step (4) using a procedure similar to the (k, n) threshold secret sharing scheme (see Shamir's method [distribution] 4 above).
6. User y sends the generated variance values W 1j , ..., W mj (j=t+1, ..., n) to each data server.
[Restore]
1. A user who restores secret information s i selects k arbitrary servers from n servers x 1 , . . . , x n and sends the ID [y] of user y and the data identifier dID[s i ] of secret information s i to the selected servers.
2. Among the key servers, the key server that receives (ID[y], dID[s i ]) uses its own key j and encryption device to generate Eid(y, j) using equation (2), and generates a pseudo-random number q ij using equation (3) and sends it to the user.
3. Among the data servers, the data server that receives (ID[y], dID[s i ]) sends the shared information W ij corresponding to this ID information to the user.
4. The user who receives the shares and pseudo-random numbers generated by the server uses them to restore the secret information s i in the same way as in the (k, n) threshold secret sharing scheme.

 上記非対称秘密分散法は例えばt=k-1の場合、t台の鍵サーバが自身の鍵を用いて生成したt=k-1個のqij(j=1,・・・,t)を分散値として、それと秘密情報から式(1)を満たすaij(j=1,・・・,k-1)の係数を計算する。t<k-1の場合、最初にk-1-t個のaij(j=1,・・・,k-1-t)を真正乱数から定め、式(1)を満たす残りの係数を求めて全てのaijを計算するというものである。鍵サーバがもつ鍵keyをオーナが管理するとすれば、鍵サーバという物理的なサーバは不要となるので、物理的なサーバ数をnではなく、n―tとできメモリ容量(サーバ数)を削減できる。この場合、秘密情報の復元はオーナが管理する鍵から生成される分散値なしに行うことができないという特徴をもつ。 In the asymmetric secret sharing scheme, for example, when t=k-1, t key servers generate t=k-1 q ij (j=1, ..., t) using their own keys as shares, and calculate the coefficients of a ij (j=1, ..., k-1) that satisfy equation (1) using these shares and secret information. When t<k-1, first, k-1-t a ij (j=1, ..., k-1-t) are determined from true random numbers, and the remaining coefficients that satisfy equation (1) are found to calculate all a ij . If the owner manages the key j held by the key server, a physical server called a key server is not required, so the number of physical servers can be n-t instead of n, thereby reducing memory capacity (number of servers). In this case, the secret information cannot be restored without shares generated from the key managed by the owner.

 近年、量子計算機の研究が進んでおり、量子計算機が実現されれば現在の計算量的安全性しか持たない暗号は容易に解析可能と言われている。ちなみに、計算量的安全性とは攻撃者が想定以上の計算能力を持っていれば解くことができる安全性を意味し、攻撃者が無限の計算能力を持っていても情報が足りないため解くことができない安全性を情報理論的安全性と呼ぶ。 Research into quantum computers has progressed in recent years, and it is said that once quantum computers are realized, cryptography that currently only has computational security will be easily analyzed. Incidentally, computational security means security that can be solved if the attacker has greater computational power than expected, while security that cannot be solved even if the attacker has infinite computational power due to insufficient information is called information-theoretic security.

 例えば、非対称秘密分散法は1個の秘密情報s1に対して鍵サーバが暗号装置を用いて擬似乱数q1jを生成し、それからデータサーバが保存する分散値W1,t+1,・・・,W1,nを計算し保存する。Shamir法やランプ型秘密分散法は情報理論的安全性をもつ(ただし、ランプ型秘密分散法は集まった分散値の数に応じて段階的に安全性が劣化する)ことが知られているが、非対称秘密分散法は情報理論的安全性ではなく、qijを生成する暗号装置に依存する計算量的安全性をもつ。よって、非対称秘密分散法は量子計算機によって解析される危険性をもつ。例えばn=k=2の場合、秘密情報sに対して鍵サーバで生成した式(6)で表されるqを基に、データサーバに送られるWを式(7)を介して式(8)のように計算する。簡単のためjや(modp)などの表記は省略している。以下の式(6)は、式(4)から得られる。n=k=2の場合、式(4)は、qi1=s+xとなるので、これをa=に変形すれば式(7)になる。また、式(8)はデータサーバIDがxなので、非対称秘密分散法の5にあるように、得られたaを用いて計算される。それを同様にa=に変形すれば式(7)のもう1つの式が得られる。
=s+a  (6)
=(q-s)/x=(W-s)/x  (7)
=s+a  (8)
 式(6)(7)のq,aの値はディーラのみが知るが、攻撃者はデータサーバに送信される式(8)のWを知る。ここで、既知平文攻撃に相当する秘密情報sが公開される場合を考える。この場合、攻撃者は式(7)からaを定め(W,xは既知)、式(6)からqの値を知ることができる。例えば、dID[s]を公開の情報とすれば、qはdID[s]を暗号化した値であり、複数の秘密情報s,・・・,sが公開されれば、量子計算機などを用いた解析によって暗号化に用いられた鍵keyが特定される可能性がある。鍵が特定されればこの後の秘密情報sm+1に対するqm+1が漏洩するので、sm+1は公開されないとしても、送信されるWm+1と特定されたqm+1から秘密情報sm+1が漏洩する。
For example, in the asymmetric secret sharing scheme, the key server generates a pseudorandom number q1j for one piece of secret information s1 using a cryptographic device, and then calculates and stores the shares W1 ,t+1 , ..., W1 ,n to be stored by the data server. While the Shamir scheme and ramp secret sharing scheme are known to have information-theoretic security (although the security of ramp secret sharing schemes gradually deteriorates depending on the number of shares collected), the asymmetric secret sharing scheme does not have information-theoretic security, but rather has computational security that depends on the cryptographic device that generates qij . Therefore, the asymmetric secret sharing scheme is at risk of being analyzed by a quantum computer. For example, when n = k = 2, based on q1 expressed by equation (6) generated by the key server for secret information s1 , W1 to be sent to the data server is calculated via equation (7) as shown in equation (8). For simplicity, notations such as j and (modp) are omitted. The following equation (6) is obtained from equation (4). When n = k = 2, equation (4) becomes q i1 = s 1 + x 1 a 1 , which can be transformed to a 1 = to obtain equation (7). Also, since the data server ID in equation (8) is x 2 , it is calculated using the obtained a 1 as in 5 of the asymmetric secret sharing method. Similarly, by transforming this to a 1 =, another equation of equation (7) can be obtained.
q 1 = s 1 + a 1 x 1 (6)
a 1 = (q 1 - s 1 )/x 1 = (W 1 - s 1 )/x 2 (7)
W 1 = s 1 + a 1 x 2 (8)
The values of q1 and a1 in equations (6) and (7) are known only to the dealer, but the attacker knows W1 in equation (8) transmitted to the data server. Consider the case where secret information s1 , which corresponds to a known plaintext attack, is made public. In this case, the attacker can determine a1 from equation (7) ( W1 and x2 are known) and know the value of q1 from equation (6). For example, if dID[ s1 ] is public information, q1 is the encrypted value of dID[ s1 ], and if multiple pieces of secret information s2 , ..., sm are made public, the key j used for encryption may be identified by analysis using a quantum computer or the like. If the key is identified, qm + 1 for the subsequent secret information sm+1 will be leaked. Therefore, even if sm +1 is not disclosed, the secret information sm+1 will be leaked from the transmitted Wm +1 and the identified qm +1 .

 それに対して、従来の秘密分散法ではaは真正乱数として定められるので、秘密情報sが公開されても次のsには別の真正乱数が用いられるので、鍵などが解析されることはなく、s,・・・,sが公開されたとしてもsm+1の安全性は維持される。 In contrast, in conventional secret sharing schemes, a1 is determined as a true random number. Therefore, even if secret information s1 is made public, a different true random number is used for the next secret information s2 . This prevents the key from being analyzed, and the security of sm +1 is maintained even if s2 , ..., sm are made public.

 よって、非対称秘密分散法の安全性を向上させることにより、秘密情報の解析を困難にする必要がある。 Therefore, it is necessary to make it more difficult to analyze secret information by improving the security of asymmetric secret sharing schemes.

 本開示の技術は、秘密情報の解析を、従来技術より困難にすることの可能な非対称秘密分散装置、秘密情報復元装置、非対称秘密分散プログラム、及び秘密情報復元プログラムを提供することを目的する。 The disclosed technology aims to provide an asymmetric secret sharing device, a secret information recovery device, an asymmetric secret sharing program, and a secret information recovery program that can make analyzing secret information more difficult than conventional technology.

 本開示の技術の第1の態様は、nを2以上の整数、kを最小値が2で最大値がnの整数とし、1個の秘密情報をn個の分散値に分散し、そのうちk個の分散値を集めれば秘密情報を復元でき、k-1個以下では秘密情報を復元できないシステムにおける非対称秘密分散装置であって、第1の秘密情報として1つ以上の真正乱数を取得し、各真正乱数に対してt(<k)個の分散値を第1の鍵から生成する生成部と、前記t個の分散値と第1の秘密情報とからn―t個の分散値を計算する計算部と、を有することを特徴とする。 A first aspect of the technology disclosed herein is an asymmetric secret sharing device for a system in which one piece of secret information is distributed into n shared values, where n is an integer greater than or equal to 2 and k is an integer with a minimum value of 2 and a maximum value of n, and the secret information can be restored by collecting k of the shared values, but not by collecting k-1 or fewer of the shared values. The device is characterized by having: a generation unit that obtains one or more true random numbers as first secret information, and generates t (<k) shared values for each true random number from a first key; and a calculation unit that calculates n-t shared values from the t shared values and the first secret information.

 第2の態様は、nを2以上の整数、kを最小値が2で最大値がnの整数とし、1個の秘密情報をn個の分散値に分散し、そのうちk個の分散値を集めれば秘密情報を復元でき、k-1個以下では秘密情報を復元できないシステムにおける非対称秘密分散装置であって、真正乱数を第1の秘密情報として秘匿する第1の秘匿部と、第2の秘密情報を前記第1の秘密情報を用いて前記第1の秘密情報と異なる形で秘匿する第2の秘匿部と、を有することを特徴とする。 The second aspect is an asymmetric secret sharing device for a system in which n is an integer equal to or greater than 2, k is an integer with a minimum value of 2 and a maximum value of n, one piece of secret information is distributed into n shared values, and the secret information can be restored by collecting k of the shared values, but cannot be restored by collecting k-1 or fewer shared values, and is characterized by having a first concealment unit that conceals a true random number as first secret information, and a second concealment unit that uses the first secret information to conceal second secret information in a form different from the first secret information.

 第3の態様は、第1の態様のシステムにおける秘密情報復元装置であって、第1の秘密情報を復元する第1の復元部と、復元された前記第1の秘密情報を用いて第2の態様の第2の秘密情報を復元する第2の復元部と、を有することを特徴とする。 The third aspect is a secret information restoration device for the system of the first aspect, characterized in that it has a first restoration unit that restores first secret information, and a second restoration unit that uses the restored first secret information to restore the second secret information of the second aspect.

 第4の態様は、nを2以上の整数、kを最小値が2で最大値がnの整数とし、1個の秘密情報をn個の分散値に分散し、そのうちk個の分散値を集めれば秘密情報を復元でき、k-1個以下では秘密情報を復元できないシステムにおける秘密情報復元装置であって、第1の態様の鍵から生成したt個の分散値とn―t個の分散値を順に組み合わせを変えて復元する復元部を備えることを特徴とする。 The fourth aspect is a secret information recovery device for a system in which n is an integer equal to or greater than 2, k is an integer with a minimum value of 2 and a maximum value of n, one piece of secret information is distributed into n shares, and the secret information can be recovered by collecting k of the shares, but cannot be recovered by collecting k-1 or fewer shares, and is characterized by having a recovery unit that recovers the t shares and n-t shares generated from the key of the first aspect by sequentially changing the combination.

 第5の態様は、nを2以上の整数、kを最小値が2で最大値がnの整数とし、1個の秘密情報をn個の分散値に分散し、そのうちk個の分散値を集めれば秘密情報を復元でき、k-1個以下では秘密情報を復元できないシステムにおける非対称秘密分散装置であって、鍵からt(<k)個の分散値を計算する第1の計算部と、計算された前記t個の分散値と秘密情報とからn―t個の分散値を計算する第2の計算部と、を有し、前記秘密分散装置は、人的制御が不可能な自然現象を使用して真正乱数を生成する真正乱数生成部を更に備え、前記t個の分散値と前記n―t個の分散値との少なくとも一方は、前記真正乱数を更に用いて計算される。 A fifth aspect is an asymmetric secret sharing apparatus for a system in which n is an integer greater than or equal to 2, k is an integer with a minimum value of 2 and a maximum value of n, one piece of secret information is shared into n shares, and the secret information can be restored by collecting k of the shares, but not by collecting k-1 or fewer of the shares. The asymmetric secret sharing apparatus has a first calculation unit that calculates t (<k) shares from a key, and a second calculation unit that calculates n-t shares from the calculated t shares and the secret information. The secret sharing apparatus further comprises a true random number generation unit that generates true random numbers using a natural phenomenon that cannot be controlled by humans, and at least one of the t shares and the n-t shares is calculated further using the true random numbers.

 第6の態様の非対称秘密分散プログラムは、nを2以上の整数、kを最小値が2で最大値がnの整数とし、1個の秘密情報をn個の分散値に分散し、そのうちk個の分散値を集めれば秘密情報を復元でき、k-1個以下では秘密情報を復元できないシステムにおける非対称秘密分散装置のコンピュータを、第1の秘密情報として1つ以上の真正乱数を取得し、各真正乱数に対してt(<k)個の分散値を第1の鍵から生成する生成部、及び前記t個の分散値と第1の秘密情報とからn―t個の分散値を計算する計算部として機能させる。 In a sixth aspect of the asymmetric secret sharing program, where n is an integer greater than or equal to 2 and k is an integer with a minimum value of 2 and a maximum value of n, one piece of secret information is distributed into n shares, and the secret information can be restored by collecting k of the shares, but not by collecting k-1 or fewer. The asymmetric secret sharing program causes the computer of the asymmetric secret sharing device in this system to function as a generation unit that obtains one or more true random numbers as first secret information and generates t (<k) shares for each true random number from a first key, and a calculation unit that calculates n-t shares from the t shares and the first secret information.

 第7の態様の非対称秘密分散プログラムは、nを2以上の整数、kを最小値が2で最大値がnの整数とし、1個の秘密情報をn個の分散値に分散し、そのうちk個の分散値を集めれば秘密情報を復元でき、k-1個以下では秘密情報を復元できないシステムにおける非対称秘密分散装置のコンピュータを、真正乱数を第1の秘密情報として秘匿する第1の秘匿部、及び第2の秘密情報を前記第1の秘密情報を用いて前記第1の秘密情報と異なる形で秘匿する第2の秘匿部として機能させる。 The seventh aspect of the asymmetric secret sharing program is an asymmetric secret sharing program in which n is an integer greater than or equal to 2, k is an integer with a minimum value of 2 and a maximum value of n, one piece of secret information is distributed into n distribution values, and the secret information can be restored by collecting k of the distribution values, but cannot be restored by collecting k-1 or fewer of the distribution values. The program causes the computer of the asymmetric secret sharing device in the system to function as a first concealment unit that conceals a true random number as first secret information, and a second concealment unit that uses the first secret information to conceal second secret information in a form different from the first secret information.

 第8の態様の秘密情報復元プログラムは、第1の態様のシステムにおける秘密情報復元装置のコンピュータを、第1の秘密情報を復元する第1の復元部、及び復元された前記第1の秘密情報を用いて第2の態様の第2の秘密情報を復元する第2の復元部として機能させる。 The secret information restoration program of the eighth aspect causes the computer of the secret information restoration device in the system of the first aspect to function as a first restoration unit that restores first secret information, and as a second restoration unit that restores second secret information of the second aspect using the restored first secret information.

 第9の態様の秘密情報復元プログラムは、nを2以上の整数、kを最小値が2で最大値がnの整数とし、1個の秘密情報をn個の分散値に分散し、そのうちk個の分散値を集めれば秘密情報を復元でき、k-1個以下では秘密情報を復元できないシステムにおける秘密情報復元装置のコンピュータを、第1の態様の鍵から生成したt個の分散値とn―t個の分散値を順に組み合わせを変えて復元する復元部として機能させる。 The secret information recovery program of the ninth aspect, where n is an integer greater than or equal to 2 and k is an integer with a minimum value of 2 and a maximum value of n, distributes one piece of secret information into n shares, and allows the secret information to be recovered by collecting k shares, but not by collecting k-1 or fewer shares. In this system, the program causes a computer of a secret information recovery device to function as a recovery unit that recovers the t shares and n-t shares generated from the key of the first aspect by sequentially changing their combinations.

 第10の態様の非対称秘密分散プログラムは、nを2以上の整数、kを最小値が2で最大値がnの整数とし、1個の秘密情報をn個の分散値に分散し、そのうちk個の分散値を集めれば秘密情報を復元でき、k-1個以下では秘密情報を復元できないシステムにおける非対称秘密分散装置のコンピュータを、鍵からt(<k)個の分散値を生成する生成部、及び計算された前記t個の分散値と秘密情報とからn―t個の分散値を計算する計算部として機能させる。非対称秘密分散装置は、人的制御が不可能な自然現象を使用して真正乱数を生成する真正乱数生成部を更に備え、t個の分散値とn―t個の分散値との少なくとも一方は、真正乱数を更に用いて計算される。 In a tenth aspect of the asymmetric secret sharing program, where n is an integer greater than or equal to 2 and k is an integer with a minimum value of 2 and a maximum value of n, one piece of secret information is distributed into n shares, and the secret information can be restored by collecting k of the shares, but not by collecting k-1 or fewer. The asymmetric secret sharing program causes the computer of the asymmetric secret sharing device in this system to function as a generation unit that generates t (<k) shares from a key, and a calculation unit that calculates n-t shares from the calculated t shares and the secret information. The asymmetric secret sharing device further includes a true random number generation unit that generates true random numbers using a natural phenomenon that cannot be controlled by humans, and at least one of the t shares and the n-t shares is further calculated using the true random numbers.

 本開示の技術は、非対称秘密分散法の安全性を向上させることにより、秘密情報の解析を困難にすることができる。 The technology disclosed herein improves the security of asymmetric secret sharing schemes, making it difficult to analyze secret information.

第1の実施の形態の分散及び復号システム10のブロックである。1 is a block diagram of a distribution and decryption system 10 according to a first embodiment. オーナ12R1のブロック図である。FIG. 1 is a block diagram of the owner 12R1. 第1の実施の形態の分散プログラム26P1のフローチャートである。10 is a flowchart of a distribution program 26P1 according to the first embodiment. 分散部22Aの第1の実施の形態の処理を示す図である。FIG. 10 is a diagram illustrating processing of a distribution unit 22A according to the first embodiment. 第1の実施の形態の復元プログラム26P2のフローチャートである。10 is a flowchart of a restoration program 26P2 according to the first embodiment. 復元部22Bの第1の実施の形態の処理を示す図である。FIG. 10 is a diagram illustrating processing of a restoration unit 22B according to the first embodiment. 第2の実施の形態の分散プログラム26P1のフローチャートである。10 is a flowchart of a distribution program 26P1 according to the second embodiment. 第2の実施の形態の復元プログラム26P2のフローチャートである。10 is a flowchart of a restoration program 26P2 according to the second embodiment. 第4の実施の形態の復元プログラム26P2のフローチャートである。13 is a flowchart of a restoration program 26P2 according to the fourth embodiment.

 以下、図面を参照して本発明の実施の形態の一例を詳細に説明する。
<第1の実施の形態>
 計算量的安全性を持つ暗号によって計算した分散値を情報理論的安全性をもつ分散値に変換する手法を以下に示す。まず簡単のため、n=k=2として本実施の形態の概要を説明する。
[分散]
1 オーナは、第1の秘密情報として、0でない真正乱数(真性乱数)rを生成し、真正乱数rを非対称秘密分散する。
2 オーナは鍵key2jから生成した擬似乱数qにrを足したq+rを分散値として第2の秘密情報sを非対称秘密分散する。
[復元]
1 復元者は第1の秘密情報rを復元する。
2 復元者は鍵key2jから生成した擬似乱数qにrを足したq+rを分散値として第2の秘密情報sを復元する。
An embodiment of the present invention will now be described in detail with reference to the accompanying drawings.
First Embodiment
A method for converting shares calculated by a computationally secure cryptosystem into shares with information-theoretic security will be described below. First, for simplicity, an outline of this embodiment will be described assuming n=k=2.
[Dispersion]
1. The owner generates a non-zero true random number (true random number) r1 as first secret information, and performs asymmetric secret sharing of the true random number r1 .
2. The owner performs asymmetric secret sharing of the second secret information s1 using q1 + r1 , which is the sum of r1 and a pseudo-random number q1 generated from the key key2j , as a share value.
[Restore]
1. The restorer restores the first secret information r1 .
2. The restorer restores the second secret information s1 using q1 + r1 , which is the pseudorandom number q1 generated from the key key2j plus r1 , as the distribution.

 上記において真正乱数rを第1の秘密情報とし、オーナの秘密情報sを第2の秘密情報として、分散と復元はrとsの2段階で行われる。まず、rの分散を行う[分散]1において、非対称秘密分散におけるaをarと表し、qをqr、WをWrと表すと式(7)は以下のように書ける。
ar=(qr-r)/x=(Wr-r)/x   (9)
 ここで、第1の秘密情報rは真正乱数であるのでarは擬似乱数qrを真正乱数rで秘匿した形となり、バーナム暗号のようにar自体を真正乱数とみなすことができ、qrに関する情報を与えない。すなわち、Wr,x,xは攻撃者も知るが、rの全ての値に対して攻撃者はarを想定することができるのでarの値を絞ることができず、qrに関する値も絞ることはできない。すなわち、情報理論的安全性をもつ。
In the above, the true random number r1 is the first secret information, and the owner's secret information s1 is the second secret information, and sharing and recovery are performed in two stages: r1 and s1 . First, in [Sharing]1, which shares r1 , if a1 in asymmetric secret sharing is expressed as ar1 , q1 as qr1 , and W1 as Wr1 , then equation (7) can be written as follows:
ar 1 = (qr 1 - r 1 )/x 1 = (Wr 1 - r 1 )/x 2 (9)
Here, since the first secret information r1 is a true random number, ar1 is a pseudo-random number qr1 concealed by the true random number r1 , and ar1 itself can be regarded as a true random number like the Vernam cipher, and no information regarding qr1 is given. In other words, although Wr1 , x1 , and x2 are known to the attacker, the attacker can guess ar1 for all values of r1 , and therefore cannot narrow down the value of ar1 , nor can he narrow down the value related to qr1 . In other words, it has information-theoretic security.

 よって、そのarとrを用いて計算した式(8)のWrも真正乱数とみなせるので攻撃者は送信されたWrから第1の秘密情報rまたはqrを類推できず、情報理論的安全性が成立していると言える。別の角度から考えると真正乱数rを定数項ではなく、1次の項の係数として用いると以下となる。
qr=a+r   (10)
=qr-r   (11)
Wr=a+r   (12)
 式(10)(12)は式(11)で表される秘密情報aを秘匿する従来の秘密分散の形となっている。秘密情報に当たるaは式(11)から擬似乱数qrを含み、真正乱数rで秘匿した値となっている。また、式(11)(12)から以下となり、aを分散値とみなせば、これは秘密情報qrを式(11)(13)で直接秘匿した形となっている(xをx-xとみなす)。
Wr=qr-r(x-x)  (13)
 よって、[分散]1では従来の秘密分散と同様に情報理論的安全性が成立し、qrに関する情報を与えないことが言える(第1の秘密情報は定数項ではなく1次以上の項の係数として用いてもよい)。また、Wrとsは無関係であるので、[分散]1でWrとsが知られても以下が成り立つ。なお、H(x)は、xに関する情報量またはエントロピーを表し、
Therefore, Wr1 in equation (8) calculated using ar1 and r1 can also be considered a true random number, so an attacker cannot infer the first secret information r1 or qr1 from the transmitted Wr1 , and it can be said that information-theoretic security is established. From another perspective, if the true random number r1 is used as a coefficient of a first-order term instead of a constant term, then the following is obtained.
qr 1 = a 0 + r 1 x 1 (10)
a 0 = qr 1 - r 1 x 1 (11)
Wr 1 = a 0 + r 1 x 2 (12)
Equations (10) and (12) are in the form of conventional secret sharing that conceals the secret information a0 expressed in equation (11). The secret information a0 includes the pseudo-random number qr1 from equation (11) and is a value concealed using the true random number r1x1 . Furthermore, equations (11) and (12) give the following, and if a0 is considered to be a shared value, this is a form in which the secret information qr1 is directly concealed using equations (11) and (13) ( x2 is considered to be x1 - x2 ).
Wr 1 = qr 1 - r 1 (x 1 - x 2 ) (13)
Therefore, it can be said that information-theoretic security is established in [share]1, as in conventional secret sharing, and information about qr1 is not given (the first secret information may be used as a coefficient of a term of first order or higher, rather than as a constant term). Also, since Wr and s1 are unrelated, the following holds even if Wr1 and s1 are known in [share]1. Note that H(x) represents the amount of information or entropy about x,

   

はyという情報を知っているという前提でのxに関する条件付き情報量を表す。よって、式(14)はWrとsを知っていてもqrに関する情報量が変わらないことを意味する。すなわち、[分散]1から攻撃者が得られるWrを知ってもqrを解析するのに役に立っていないことになり、これが情報理論的な安全性をもつことを意味する。 represents the conditional amount of information about x on the assumption that information y is known. Therefore, equation (14) means that the amount of information about qr1 does not change even if Wr1 and s1 are known. In other words, even if an attacker knows Wr1, which can be obtained from [variance]1, it is not useful for analyzing qr1 , which means that the system has information-theoretic security.

   

 次に、sの分散を行う[分散]2において鍵key2jから計算されたqは真正乱数である第1の秘密情報rで秘匿され、これもバーナム暗号と同様にqに関する情報を与えない。すなわち、[分散]2における分散値は式(16)を介して式(15)(17)のようになる。
+r=s+a       (15)
={(q+r)-s}/x  (16)
=s+a          (17)
 ここで、第1の秘密情報rは真正乱数であるのでaは擬似乱数qを真正乱数rで秘匿した形となり、バーナム暗号のように真正乱数とみなすことができる。よって、そのaを用いて計算した式(15)(17)は従来の秘密分散と同様に情報理論的安全性をもつと言える。すなわち、攻撃者は送信されたWから第2の秘密情報sまたはqを類推できず、すべてのsまたはqが想定できる。
Next, in [Sharing] 2, which distributes s1 , q1 calculated from the key key2j is kept secret using first secret information r1 , which is a true random number, and similarly to the Vernam cipher, this does not provide any information about q1 . That is, the distribution values in [Sharing] 2 are expressed as in equations (15) and (17) via equation (16).
q 1 + r 1 = s 1 + a 1 x 1 (15)
a 1 = {(q 1 + r 1 )-s 1 }/x 1 (16)
W 1 = s 1 + a 1 x 2 (17)
Here, since the first secret information r1 is a true random number, a1 is a pseudo-random number q1 concealed by the true random number r1 , and can be considered a true random number like the Vernam cipher. Therefore, it can be said that equations (15) and (17) calculated using a1 have information-theoretic security similar to conventional secret sharing. In other words, an attacker cannot infer the second secret information s1 or q1 from the transmitted W1 , and all s1 or q1 can be assumed.

 ここで、第2の秘密情報s,・・・,sが公開されたとすると、式(17)からa,・・・,aが漏洩するが、第1の秘密情報r,・・・,rは漏洩しないので、q,・・・,qはわからない。また、式(15)からq+rはわかるが、qはわからないことが言える。よって、式(18)が成立し、[分散]2も情報理論的安全性をもつと言える。 Here, if the second secret information s1 , ..., sm is made public, a1 , ..., am will be leaked from equation (17), but the first secret information r1 , ..., rm will not be leaked, so q1 , ..., qm will not be known. Also, from equation (15), it can be said that q1 + r1 is known, but q1 is unknown. Therefore, equation (18) holds, and it can be said that [distribution]2 also has information-theoretic security.

   

 以上より、提案法は通信路及び全データサーバの情報W,・・・,Wが攻撃者に知られても情報理論的に安全で、さらに秘密情報s,・・・,sが公開されたとしても擬似乱数を解析されることがなく次の秘密情報sm+1は従来の秘密分散と同様に安全であると言える。 From the above, it can be said that the proposed method is information-theoretically secure even if the information W 1 , ..., W m of the communication path and all data servers is known to an attacker, and furthermore, even if the secret information s 1 , ..., s m is made public, the pseudo-random numbers cannot be analyzed, and the next secret information s m+1 is as secure as conventional secret sharing.

 次に、オーナが架空の鍵サーバの鍵を管理する場合の具体的な内容を説明する。 Next, we will explain the specific details of when an owner manages keys for a fictitious key server.

 図1は、第1の実施の形態の分散及び復号システム10のブロックである。分散及び復号システム10は、nを2以上の整数、kを最小値が2で最大値がnの整数とし、1個の秘密情報をn個の分散値に分散し、そのうちk個の分散値を集めれば秘密情報を復元でき、k-1個以下では秘密情報を復元できないシステムである。 Figure 1 shows a block diagram of a distribution and decryption system 10 according to a first embodiment. In the distribution and decryption system 10, where n is an integer greater than or equal to 2 and k is an integer with a minimum value of 2 and a maximum value of n, one piece of secret information is distributed into n distribution values, and the secret information can be restored by collecting k of the distribution values, but cannot be restored by collecting k-1 or fewer.

 分散及び復号システム10は、r(即ち、自然数)個のオーナ12R1~12Rrと、n-t個のデータサーバ14Kt+1~14Knと、を備える。オーナ12R1~12Rrと、データサーバ14Kt+1~14Knとは、ネットワーク16(例えば、インターネット)により、相互に通信可能に接続される。 The distribution and decryption system 10 comprises r (i.e., a natural number) owners 12R1 to 12Rr and n-t data servers 14Kt+1 to 14Kn. The owners 12R1 to 12Rr and the data servers 14Kt+1 to 14Kn are connected to each other via a network 16 (e.g., the Internet) so that they can communicate with each other.

 ユーザyをオーナと呼ぶ。 User y is called the owner.

 データサーバ14Kt+1~14Knは、自身のIDを記憶する記憶装置14Mを備える。例えば、データサーバ14Kt+1の記憶装置14Mには、IDであるxt+1が記憶され、オーナから送られる分散値を記憶する記憶装置を持つ。 Data servers 14Kt+1 to 14Kn each have a storage device 14M that stores their own ID. For example, the storage device 14M of data server 14Kt+1 stores the ID xt+1, and also has a storage device that stores the distribution values sent from the owner.

 オーナ12R1~12Rrは、本開示の技術の「非対称秘密分散装置」及び「秘密情報復元装置」の一例である。なお、本開示の技術では、オーナ12R1~12Rrは、本開示の技術の「非対称秘密分散装置」の機能を有し、分散及び復号システム10は、オーナ12R1~12Rrとは別の復元装置(「秘密情報復元装置」の一例)を備えてもよい。 Owners 12R1 to 12Rr are examples of the "asymmetric secret sharing device" and "secret information recovery device" of the technology disclosed herein. Note that in the technology disclosed herein, owners 12R1 to 12Rr have the functions of the "asymmetric secret sharing device" of the technology disclosed herein, and the sharing and decryption system 10 may also include a recovery device (an example of a "secret information recovery device") separate from owners 12R1 to 12Rr.

 図2は、オーナ12R1のブロック図である。なお、その他のオーナ12R2~12Rrの構成は、オーナ12R1の構成と同様であるので、その説明を省略する。 Figure 2 is a block diagram of owner 12R1. Note that the configurations of the other owners 12R2 to 12Rr are similar to that of owner 12R1, so their explanations will be omitted.

 オーナ12R1は、コンピュータで構成される。オーナ12R1は、通信端末である。具体的には、オーナ12R1は、CPU(Central Processing Unit)22、RAM(Random Access Memory)24、記憶装置26、真正乱数生成装置28、及び通信装置30を備える。CPU22、RAM24、記憶装置26、真正乱数生成装置28、及び通信装置30は、バス32を介して、相互に通信可能に接続される。 Owner 12R1 is composed of a computer. Owner 12R1 is a communications terminal. Specifically, Owner 12R1 includes a CPU (Central Processing Unit) 22, RAM (Random Access Memory) 24, a storage device 26, a true random number generator 28, and a communications device 30. The CPU 22, RAM 24, storage device 26, true random number generator 28, and communications device 30 are interconnected via a bus 32 so that they can communicate with each other.

 CPU22は、分散部22A及び復元部22Bを備える。 The CPU 22 includes a distribution unit 22A and a restoration unit 22B.

 記憶装置26は、秘密情報Sのデータ識別子dID[S]を記憶する秘密情報記憶領域26M1を備える。記憶装置26は、架空の鍵サーバ14K1~14Ktが管理する鍵key1j,key2j(j=1,・・・,t)を記憶する鍵記憶領域26M2、26M3を備える。記憶装置26は、分散プログラム26P1及び復元プログラム26P2を記憶するプログラム記憶領域26MPを備える。記憶装置26は、鍵サーバ14K1~14Ktとデータサーバ14Kt+1~14KnとのID(x、・・・x、xt+1、xt+2、・・・xn)を記憶するID記憶領域26M4を備える。ただし、データサーバを含め分散値計算に必要なIDのみの記憶でもよく、すべてのIDの記憶は必須ではない。また、秘密情報は発生する度に本提案によってデータサーバに分散値を保存させ、必要に応じて分散値を呼び出して秘密情報を復元する。また、26M1のデータ識別子の記憶領域はデータ識別子の構成法が決まっていれば保存しておく必要はない。例えば、定期的に秘密情報が発生するとすれば定まった日時からデータ識別子は生成できる。さらに、鍵key1j,key2jを記憶する鍵記憶領域26M2、26M3を1つの鍵keyから生成する場合、オーナがkeyを記憶しておけばよいので、この記憶部も必須ではない。 The storage device 26 includes a secret information storage area 26M1 that stores the data identifier dID[S i ] of the secret information S i . The storage device 26 includes key storage areas 26M2 and 26M3 that store keys key 1j and key 2j (j = 1, ..., t) managed by the fictitious key servers 14K1 to 14Kt. The storage device 26 includes a program storage area 26MP that stores a distribution program 26P1 and a restoration program 26P2. The storage device 26 includes an ID storage area 26M4 that stores the IDs (x 1 , ..., x t , x t+1 , x t+2 , ..., xn) of the key servers 14K1 to 14Kt and the data servers 14Kt+1 to 14Kn. However, it is not necessary to store all IDs, and it is acceptable to store only the IDs necessary for distribution value calculation, including the data servers. Furthermore, according to this proposal, each time secret information is generated, the shared values are stored in the data server, and the shared values are called up as needed to restore the secret information. Furthermore, the storage area for data identifiers in 26M1 does not need to be stored if the method for constructing data identifiers is fixed. For example, if secret information is generated periodically, data identifiers can be generated from a fixed date and time. Furthermore, when generating key storage areas 26M2 and 26M3 that store keys key1j and key2j from a single key, the owner only needs to store the key, so this storage unit is not essential.

 分散プログラム26P1は、本開示の技術の「非対称秘密分散プログラム」の一例である。復元プログラム26P2は、本開示の技術の「秘密情報復元プログラム」の一例である。 Sharing program 26P1 is an example of an "asymmetric secret sharing program" in the technology of the present disclosure. Reconstruction program 26P2 is an example of a "secret information reconstruction program" in the technology of the present disclosure.

 CPU22は、プログラム記憶領域26MPからRAM24に分散プログラム26P1及び復元プログラム26P2を読み出し実行することにより、分散部22A及び復元部22Bとして機能する。 The CPU 22 functions as the distribution unit 22A and the restoration unit 22B by reading and executing the distribution program 26P1 and the restoration program 26P2 from the program storage area 26MP to the RAM 24.

 通信装置30は、ネットワーク16を介して、データの送受信を行う。 The communication device 30 sends and receives data via the network 16.

 オーナ12R1は鍵サーバ14K1~14Ktが管理する鍵key1j,key2j(j=1,・・・,t)を自ら秘密に持ち、dID[s]を暗号化する鍵Eid(y,j)として用いる。key1j,key2jは1つの鍵keyから生成してもよい。また、[分散]1,2で得られた分散値Wr,Wは別々に送ってもよいが、通信回数を減らすために同時に送るとする。また、t>1の場合、鍵サーバで生成されるt個の擬似乱数をt個の真正乱数で秘匿することが望ましいが、生成する真正乱数を1個として同一の真正乱数で秘匿しても後述するように問題ないので、ここではわかりやすくするため鍵サーバで生成する擬似乱数を秘匿する真正乱数の数を1個とする。 The owner 12R1 secretly holds keys key1j and key2j (j = 1, ..., t) managed by the key servers 14K1 to 14Kt, and uses them as key Eid(y, j) to encrypt dID[s i ]. Key1j and key2j may be generated from a single key keyj . Furthermore, although the shares Wr1 and W1 obtained in [shares] 1 and 2 may be sent separately, they are sent simultaneously to reduce the number of communications. Furthermore, when t > 1, it is desirable to conceal the t pseudo-random numbers generated by the key server with t true random numbers. However, as will be described later, there is no problem if the generated true random number is one and concealed with the same true random number. Therefore, for ease of understanding, the number of true random numbers concealing the pseudo-random numbers generated by the key server is assumed to be one.

 鍵サーバが生成する擬似乱数を異なる真正乱数で秘匿する場合は、第2の実施の形態に示すようにすればよい。他は非対称秘密分散法と同様である。 If the pseudo-random numbers generated by the key server are to be kept secret using different true random numbers, this can be done as shown in the second embodiment. The rest is the same as the asymmetric secret sharing scheme.

 <分散>
 次に、図3A及び図3Bを参照して、分散プログラム26P1を説明する。図3Aは、第1の実施の形態の分散プログラム26P1のフローチャートであり、図3Bは、分散部22Aの第1の実施の形態の処理を示す図である。CPU22が分散プログラム26P1を実行することにより分散処理が実行される。
<Dispersion>
Next, the distribution program 26P1 will be described with reference to Figures 3A and 3B. Figure 3A is a flowchart of the distribution program 26P1 according to the first embodiment, and Figure 3B is a diagram showing the processing of the distribution unit 22A according to the first embodiment. The CPU 22 executes the distribution program 26P1 to perform distributed processing.

 [分散1]
 分散部22Aは、ステップ42で、真正乱数生成装置28から自身の秘密情報sに対して、第1の秘密情報として真正乱数rを取得する。
[Variance 1]
In step 42, the sharing unit 22A obtains a true random number r i as first secret information for its own secret information s i from the true random number generation device 28.

 分散部22Aは、ステップ44で、自身の秘密情報sに関するデータ識別子dID[s](i=1,・・・,m)を用いて擬似乱数qrij(j=1,・・・,t)を以下のように生成する。以降、qrijはt個の分散値として用いられる。
qrij=Enc(dID[s],key1j)  (19)
 鍵key1,jは、本開示の技術の「第1の鍵」の一例である。ステップ44の処理は、本開示の技術の「生成部」の処理の一例である。
In step 44, the sharing unit 22A generates pseudo-random numbers qr ij (j=1, ..., t) using the data identifier dID[s i ] (i=1, ..., m) related to its own secret information s i as follows: Hereafter, qr ij is used as t sharing values.
qr ij = Enc(dID[s i ], key 1j ) (19)
The key key1,j is an example of a "first key" in the technology of the present disclosure. The process of step 44 is an example of a process of a "generation unit" in the technology of the present disclosure.

 分散部22Aは、ステップ46で、前記非対称秘密分散法に示す秘密情報sを真正乱数rとし、擬似乱数(t個の分散値)qrijをqijとして、非対称秘密分散法[分散]の4、5の処理を行って、t個の分散値qrijと第1の秘密情報rから、n-t個の分散値Wri,t+1,・・・,Wri,nを計算する。 In step 46, the sharing unit 22A sets the secret information s i shown in the asymmetric secret sharing scheme as a true random number r i , and the pseudo-random numbers (t shared values) qr ij as q ij , and performs processes 4 and 5 of the asymmetric secret sharing scheme [Sharing] to calculate n-t shared values Wr i,t+1 , ..., Wr i,n from the t shared values qr ij and the first secret information r i .

 ステップ46の処理は、本開示の技術の「計算部」の処理の一例である。 The processing of step 46 is an example of the processing of the "calculation unit" of the technology disclosed herein.

 このように分散1では、分散部22Aは、擬似乱数qrijを直接用いて真正乱数(第1の秘密情報)を秘匿する。 In this way, in distribution 1, the distribution unit 22A directly uses the pseudo-random numbers qr ij to conceal the true random numbers (first secret information).

 分散1の処理は、本開示の技術の「第1の秘匿部」の処理の一例である。分散1の分散部22Aは、本開示の技術の「生成部」及び「計算部」の一例である。 The processing of distribution 1 is an example of the processing of the "first concealment unit" of the technology disclosed herein. Distribution unit 22A of distribution 1 is an example of the "generation unit" and "calculation unit" of the technology disclosed herein.

 [分散2]
 分散部22Aは、ステップ48で、データ識別子dID[s](i=1,・・・,m)を用いて、以下の式(20)から、鍵key2,jからt個の擬似乱数qijを生成する。以降、qijもt個の分散値として用いられる。ただし、[分散1]の真正乱数rで秘匿されたqij+rの形でt個の分散値となる。
ij=Enc(dID[s],key2j)  (20)
 key2,jは、本開示の技術の「第2の鍵」の一例である。
[Dispersion 2]
In step 48, the sharing unit 22A uses the data identifier dID[s i ] (i = 1, ..., m) to generate t pseudo-random numbers q ij from the key key 2,j according to the following equation (20). Thereafter, q ij is also used as the t shares. However, the t shares are in the form of q ij + ri, which are concealed by the true random number ri of [share 1].
q ij = Enc(dID[s i ], key 2j ) (20)
key2,j is an example of a "second key" in the technique of the present disclosure.

 分散部22Aは、ステップ50で、自身の秘密情報(即ち、第2の秘密情報)をsとして、鍵サーバの分散値をqij+rとし、非対称秘密分散法[分散]の4、5の処理を行って、t個の分散値qijと第2の秘密情報sからn―t個の分散値Wi,t+1,・・・,Wi,nを計算する。 In step 50, the sharing unit 22A sets its own secret information (i.e., the second secret information) as s i , sets the key server's share value as q ij + r i , and performs processes 4 and 5 of the asymmetric secret sharing scheme [Sharing] to calculate n-t share values W i,t+1 , ..., W i,n from the t share values q ij and the second secret information s i .

 このように分散2では、分散部22Aは、擬似乱数qijを直接用いず、真正乱数で分散値を秘匿して秘密情報を秘匿する。この点が、分散1と異なる形である。 In this way, in distribution 2, the sharing unit 22A does not directly use the pseudo-random numbers q ij but uses true random numbers to conceal the shared values and conceal the secret information. This is a difference from distribution 1.

 分散部22Aは、ステップ52で、dID[s]と計算された分散値Wi,t+1,・・・,Wi,nと前記分散値Wri,t+1,・・・,Wri,nをデータサーバxt+1,・・・,xに送信する。これにより、分散プログラム26P1の実行が終了する。 In step 52, the distribution unit 22A transmits dID[s i ], the calculated distribution values W i,t+1 , ..., W i,n, and the distribution values Wr i,t+1 , ..., Wr i,n to the data servers x t+1 , ..., x n , thereby completing the execution of the distribution program 26P1.

 データサーバはdID[s],Wri,t+1,・・・,Wri,nとWi,t+1,・・・,Wi,nを関連付けて保存する。 The data server associates dID[s i ], Wri ,t+1 , ..., Wri ,n with Wi ,t+1 , ..., Wi ,n and stores them.

 分散2の処理は、本開示の技術の「第2の秘匿部」の処理の一例である。分散2の分散部22Aは、本開示の技術の「第2の秘匿部」の一例である。 The processing of distribution 2 is an example of the processing of the "second concealment unit" of the technology disclosed herein. Distribution unit 22A of distribution 2 is an example of the "second concealment unit" of the technology disclosed herein.

 以上のように分散部22Aは、本開示の技術の「第1の秘匿部」(具体的には、「生成部」及び「計算部」)、及び「第2の秘匿部」の一例である。 As described above, the distribution unit 22A is an example of the "first concealment unit" (specifically, the "generation unit" and "calculation unit") and "second concealment unit" of the technology disclosed herein.

 <復元>
 次に、図4A及び図4Bを参照して、復元プログラム26P2を説明する。図4Aは、第1の実施の形態の復元プログラム26P2のフローチャートであり、図4Bは、復元部22Bの第1の実施の形態の処理を示す図である。CPU22が復元プログラム26P2を実行することにより復元処理が実行される。
<Restoration>
Next, the restoration program 26P2 will be described with reference to Figures 4A and 4B. Figure 4A is a flowchart of the restoration program 26P2 according to the first embodiment, and Figure 4B is a diagram showing the processing of the restoration unit 22B according to the first embodiment. The restoration processing is performed by the CPU 22 executing the restoration program 26P2.

 [復元1]
 復元部22Bは、ステップ62で、秘密情報sを復元したいオーナはn-t台のデータサーバxt+1,・・・,xnにdID[s]を送り、ステップ64で、関連付けて保存された分散値Wri,t+1,・・・,Wri,nとWi,t+1,・・・,Wi,nを受信する。
[Restoration 1]
In step 62, the restoration unit 22B receives the associated and stored shared values Wr i,t +1 , ..., Wr i, n and W i ,t+1 , ..., W i,n from an owner who wants to restore secret information s i by sending dID[s i ] to n-t data servers x t+ 1 , ... , xn .

 復元部22Bは、ステップ66で、自ら管理する鍵key1jを用いて式(19)からqrijを計算し、Wri.t+1,・・・,Wri,nと合わせて、第1の秘密情報rを復元する。 In step 66, the restoration unit 22B calculates qr ij from equation (19) using the key key 1j managed by itself, and restores the first secret information r i by combining it with Wr i.t+1 , . . . , Wr i,n .

 [復元2]
 復元部22Bは、ステップ68で、自ら管理する鍵key2jを用いて式(20)からqijを計算し、鍵サーバが生成する分散値をqij+rとして、Wi,t+1,・・・,Wi,nと合わせて、秘密情報sを復元する。
[Restoration 2]
In step 68, the restoration unit 22B calculates q ij from equation (20) using the key key 2j that it manages, and restores the secret information s i by combining the shared values generated by the key server as q ij +r i with W i,t+1 , ..., W i,n .

 以下、より具体的に説明する。 A more detailed explanation follows.

 n=k=2とする場合、鍵サーバの数は1個であるので、1個の真正乱数で前述のように情報理論的安全性が実現できる。 When n = k = 2, there is one key server, so information-theoretic security can be achieved with one true random number, as mentioned above.

 n=k=3とする場合、鍵サーバ数はt<kであるので1個または2個を選択できる。[分散]1でt=1とすると、1個の擬似乱数qri1が鍵サーバで生成され、非対称秘密分散[分散]4のA(i)k-1-tに相当する追加の真正乱数rを用いて非対称秘密分散の4.の処理より以下に示すWri2,Wri3が計算され、データサーバx2,x3に送られる。ここで、qri1,Wri2,Wri3の関係は以下となり、前述のようにrとarを入れ替えて考えると従来の秘密分散と同じ形になり、情報理論的安全性が成立していることが言える。 When n = k = 3, the number of key servers is t < k, so one or two can be selected. When t = 1 in [Share] 1, one pseudo-random number qr i1 is generated by the key server, and Wr i2 and Wr i3 shown below are calculated by process 4 of asymmetric secret sharing using an additional true random number r 2 corresponding to A(i) k-1-t in asymmetric secret sharing [Share] 4, and sent to data servers x2 and x3. Here, the relationship between qr i1 , Wr i2 , and Wr i3 is as follows, and if r 1 and ar 2 are swapped as described above, the form becomes the same as conventional secret sharing, and it can be said that information-theoretic security is established.

   

 t=2とすると2個の擬似乱数qri1,qri2が鍵サーバで生成され、非対称秘密分散の4.の処理より以下のar,arを経て式(26)のWri3が計算され、データサーバx3に送られる(追加の真正乱数r2は用いられない)。 If t=2, two pseudo-random numbers qr i1 and qr i2 are generated by the key server, and Wr i3 in equation (26) is calculated via ar 1 and ar 2 in the process 4 of asymmetric secret sharing, and sent to the data server x3 (the additional true random number r2 is not used).

   

 この場合、真正乱数はrのみであるが、1つの真正乱数が残っているので、情報理論的安全性は維持される。また、データサーバ数は1個であるので、それ以上の真正乱数を削除する処理はできず、t=1の場合と同様に情報理論的安全性が成立する。 In this case, the only true random number is r1 , but since one true random number remains, information-theoretic security is maintained. Also, since there is only one data server, processing to delete any more true random numbers is not possible, and information-theoretic security is maintained in the same way as when t = 1.

 次に、[分散2]でt=2の場合、鍵サーバが生成した擬似乱数q,qをq+r,q+rとして以下の関係となる。 Next, in the case of [distribution 2] where t=2, the pseudo-random numbers q 1 and q 2 generated by the key server are set to q 1 +r 1 and q 2 +r 1, respectively, to obtain the following relationship.

   

 攻撃者が知るのはWri3(,Wi3)だけであるので、真正乱数が1個でも問題がないことが言える(式(27)~(29)におけるa,aは式(24)(25)のqr,qrをq+r,q+rとしたものになる)。次に[分散2]でt=1としても追加の乱数が加えられ、式(21)のqri1がq+rとなるが同様に問題ないことが言える。 Since the attacker only knows Wr i3 (, W i3 ), it can be said that there is no problem even if there is only one true random number (a 1 and a 2 in equations (27) to (29) are obtained by replacing qr 1 and qr 2 in equations (24) and (25) with q 1 + r 1 and q 2 + r 1 ). Next, even if t = 1 in [Distribution 2], an additional random number is added and qr i1 in equation (21) becomes q 1 + r 1 , but it can also be said that there is no problem.

 また、[分散2]ではkey2jを用いて生成したt個の擬似乱数qijを真正乱数である第1の秘密情報rで秘匿したが、qijとの加算を行わず真正乱数rを、t個の分散値として生成して、直接用いてもよい。この場合、分散値の値を変えるために、鍵サーバと同数の真正乱数が必要である。例えば、式(27)~(29)においてq+rをr、q+rをrとしても従来の秘密分散と同じ形になり、問題は発生しない。また、r,rをa,aの代わりに用いてもよく、この場合非対称秘密分散とせず、通常の秘密分散とすることができる。なお、秘密情報の秘匿は秘密分散を行うこと自体で行われる。 In addition, in [Sharing 2], t pseudo-random numbers q ij generated using key 2j are concealed by first secret information r i , which is a true random number. However, true random number r i may be generated as t shares without addition with q ij and used directly. In this case, the same number of true random numbers as the key servers are required to change the value of the shares. For example, even if q 1 +r 1 is replaced with r 1 and q 2 +r 1 is replaced with r 2 in equations (27) to (29), the formula will be the same as conventional secret sharing and no problems will arise. Also, r 1 and r 2 may be used instead of a 1 and a 2 , and in this case, ordinary secret sharing can be used instead of asymmetric secret sharing. Note that the concealment of secret information is achieved by the secret sharing itself.

 以上より、本開示の技術の提案法はn,k,tを任意に設定でき、n=k=2と同様に情報理論的安全性と等価な安全性が実現できると言える。 From the above, it can be said that the method proposed by the technology disclosed herein allows n, k, and t to be set arbitrarily, and can achieve security equivalent to information-theoretic security, just like when n = k = 2.

 <第2の実施の形態>
 次に、第2の実施の形態を説明する。第2の実施の形態の構成は、第1の実施の形態の構成と同様であるので、その説明を省略する。以下、第2の実施の形態の作用を説明する。
Second Embodiment
Next, a second embodiment will be described. The configuration of the second embodiment is the same as that of the first embodiment, so the description thereof will be omitted. The operation of the second embodiment will be described below.

 第1の実施の形態の処理の他に非対称秘密分散法を情報理論的安全性にする手法として以下がある。 In addition to the processing in the first embodiment, the following methods can be used to make the asymmetric secret sharing scheme information-theoretically secure.

 Shamir法において式(1)を用いて分散値を計算する場合、式(1)にサーバIDである公知のxを代入して、それに対応する分散値Wを得る。一般に、公知となっているxがわからなければ、分散値をk個集めても復元することはできない。よって、以下のようにすることによって、第2の秘密情報s1がわかっても非対称秘密分散法を情報理論的に安全にすることができる。以下に、簡単のためn=k=2として概要を説明する。 When calculating shares using formula (1) in the Shamir scheme, publicly known x i, which is the server ID, is substituted into formula (1) to obtain the corresponding share W i . Generally, if the publicly known x i is unknown, it is not possible to recover the shares even if k shares are collected. Therefore, by doing the following, the asymmetric secret sharing scheme can be made information-theoretically secure even if the second secret information s1 is known. The following outline will be given assuming n=k=2 for simplicity.

 [分散]
 オーナは0及びx,xでない真正乱数rを取得し、真正乱数rを非対称秘密分散する。
[Dispersion]
The owner obtains a true random number r1 that is not 0, x1 , or x2 , and performs asymmetric secret sharing of the true random number r1 .

 オーナはrをxとして秘密情報sを非対称秘密分散する。以降、r=x2′とする。
[復元]
 復元者はx2′を復元する。
The owner asymmetrically shares secret information s1 by dividing r1 into x2 . Hereinafter, r1 = x2'.
[Restore]
The restorer restores x2'.

 復元者は復元されたx2′をxとして秘密情報sを復元する。 The restorer restores the secret information s1 using the restored x2' as x2 .

 上記においても真正乱数rを第1の秘密情報とし、オーナの秘密情報sを第2の秘密情報として、分散と復元はrとsの2段階で行われる。第1の実施の形態と同様に第1の秘密情報rに対して情報理論的安全性が実現できることは明らかである。よって、r=x2′がわからなければ式(1)は解けず、すべてのx2′に対して第2の秘密情報sは解が存在することから情報理論的な安全性が成立することが言える。また、第2の秘密情報s1が類推または公開されても式(8)からax2′はわかるがx2′はわからない。よって、aはわからないためqはわからず、式(17)が成立し情報理理論的安全性が保証される。 In the above, the true random number r1 is also the first secret information, and the owner's secret information s1 is the second secret information, and distribution and restoration are performed in two stages, r1 and s1 . As in the first embodiment, it is clear that information-theoretic security can be achieved for the first secret information r1 . Therefore, unless r1 = x2' is known, equation (1) cannot be solved, and since a solution exists for the second secret information s1 for all x2', it can be said that information-theoretic security is achieved. Furthermore, even if the second secret information s1 is inferred or made public, a1 x2' can be known from equation (8), but x2' cannot. Therefore, since a1 is unknown, q1 cannot be known, and equation (17) holds, ensuring information-theoretic security.

 また、上記においてはxのみを第1の秘密情報x2′としたが、xを第1の秘密情報x′としてもよく、x′,x′ともに第1の秘密情報としてもよい。以下に詳細なアルゴリズムを示す。第1の実施の形態では第1の秘密情報として複数選べるにも関わらず、第2の秘密情報sに対してrのみとした。本実施の形態でも第1の秘密情報は全てのサーバIDであるx′,・・・,x′を選択できるが、1個のサーバIDがわからないだけでも秘密情報はわからないので、第1の実施の形態と同様に第1の秘密情報を1つのサーバIDとしてもよい。しかし、ここでは第1の実施の形態との違いを出すため、[分散]1における第1の秘密情報の数をデータサーバと同数のn―tとする。よって、n―t個の真正乱数を第1の秘密情報として非対称秘密分散を繰り返す。ただし、t=k-1の場合、データサーバ数は1となるので第1の秘密情報の数は1個となり、第1の実施の形態と同様になる。他の設定は第1の実施の形態と同様である。 Furthermore, in the above, only x2 is defined as the first secret information x2', but x1 may also be defined as the first secret information x1 ', or both x1 ' and x2 ' may be defined as the first secret information. A detailed algorithm is shown below. In the first embodiment, although multiple first secret information can be selected, only r1 is defined for the second secret information s1 . In this embodiment, all server IDs x1 ', ..., xn ' can be selected as the first secret information. However, since the secret information cannot be known even if only one server ID is unknown, the first secret information may be a single server ID, as in the first embodiment. However, in this embodiment, to differentiate from the first embodiment, the number of first secret information in [Sharing] 1 is set to n-t, which is the same number as the number of data servers. Therefore, asymmetric secret sharing is repeated using n-t true random numbers as the first secret information. However, when t=k-1, the number of data servers is 1, so the number of first secret information is 1, which is the same as in the first embodiment. Other settings are the same as those in the first embodiment.

 次に、図5を参照して、分散プログラム26P1を説明する(図3Bも参照)。図5は、第2の実施の形態の分散プログラム26P1のフローチャートである。 Next, distribution program 26P1 will be described with reference to Figure 5 (see also Figure 3B). Figure 5 is a flowchart of distribution program 26P1 according to the second embodiment.

 [分散1]
 分散部22Aは、ステップ72で、真正乱数生成装置28から自身の秘密情報sに対して0及びサーバIDと一致しない真正乱数ri,h(h=t+1,・・・,n)を取得する。
[Variance 1]
In step 72, the sharing unit 22A obtains from the true random number generation device 28 true random numbers r i,h (h=t+1, . . . , n) that do not match 0 or the server ID for its own secret information s i .

 分散部22Aは、ステップ74で、ri,hに関するデータ識別子dID[ri,h]を用いて擬似乱数qrihj(j=1,・・・,t)を以下のように生成する。前述したように、擬似乱数qrihjは第1の秘密情報ri,h毎のt個の分散値として用いられる。
qrihj=Enc(dID[ri,h],key1j)  (30)
 分散部22Aは、ステップ76で、第1の秘密情報をri,h(h=t+1,・・・,n)とし、qrihjをqijとして、上記非対称秘密分散法の4以降の処理を繰り返し、データサーバxt+1,・・・,xに送る分散値Wri,h,t+1,・・・,Wri,h,n(h=t+1,・・・,n)を計算する。
In step 74, the sharing unit 22A generates pseudo-random numbers qr ihj (j=1, ..., t) using the data identifier dID[r i,h ] for r i,h as follows: As described above, the pseudo-random numbers qr ihj are used as t sharing values for each piece of first secret information r i,h.
qr ihj = Enc(dID[r i,h ], key 1j ) (30)
In step 76, the sharing unit 22A sets the first secret information to r i,h (h = t + 1, ..., n) and qr ihj to q ij , and repeats the processes from step 4 onwards of the asymmetric secret sharing method to calculate the sharing values Wr i,h,t+1 , ..., Wr i,h,n (h = t + 1, ..., n) to be sent to the data servers x t+1 , ..., x n .

 [分散2]
 分散部22Aは、ステップ78で、第2の秘密情報sに関するデータ識別子dID[s](i=1,・・・,m)を用いて擬似乱数qijを生成する。
ij=Enc(dID[s],key2j)  (31)
 鍵Key2iは、本開示の技術の「第2の鍵」の一例である。
[Dispersion 2]
In step 78, the sharing unit 22A generates a pseudo-random number qij using a data identifier dID[s i ] (i=1, . . . , m) related to the second secret information s i .
q ij = Enc(dID[s i ], key 2j ) (31)
The key Key 2i is an example of the "second key" of the technology of the present disclosure.

 分散部22Aは、ステップ80で、データサーバx(h=t+1,・・・,n)のIDを真正乱数ri,hとして、すなわち真正乱数ri,hは分散式(1)の変数として用い、非対称秘密分散法の4、5の処理を行って、t個の分散値qijと第2の秘密情報sとからn―t個の分散値Wi,t+1,・・・,Wi,nを計算する。 In step 80, the sharing unit 22A uses the ID of the data server x h (h=t+1, ..., n) as the true random number r i,h , i.e., the true random number r i,h is used as a variable in the sharing formula (1), and performs processes 4 and 5 of the asymmetric secret sharing method to calculate n-t shared values W i,t+1 , ..., W i,n from the t shared values q ij and the second secret information s i.

 真正乱数ri,hをサーバIDとして用いる点で、分散1と異なる形である。 This differs from distribution 1 in that a true random number r i,h is used as the server ID.

 分散部22Aは、ステップ82で、データサーバxt+1,・・・,xに、dID[s]とWri,h,t+1,・・・,Wri,h,nとWi,t+1,・・・,Wi,nとを送信する。 In step 82, the distribution unit 22A transmits dID[s i ], Wri ,h,t+1, ..., Wri,h,n , and Wi ,t+1, ... , Wi, n to the data servers x t+ 1 , ..., x n .

 データサーバは、それらを関連づけて保存する。 The data server associates and stores them.

 次に、図6を参照して、復元プログラム26P2を説明する(図4Bも参照)。図6は、第2の実施の形態の復元プログラム26P2のフローチャートである。 Next, the restoration program 26P2 will be described with reference to Figure 6 (see also Figure 4B). Figure 6 is a flowchart of the restoration program 26P2 in the second embodiment.

 [復元1]
 秘密情報sを復元したいオーナの復元部22Bは、ステップ92で、n-t台のデータサーバxt+1,・・・,xにdID[s]を送り、ステップ94で、関連付けて保存された分散値Wri,h,t+1,・・・,Wri,h,nとWi,t+1,・・・,Wi,nを受信する。
[Restoration 1]
In step 92, the restoration unit 22B of the owner who wants to restore the secret information s i sends dID[s i ] to n-t data servers x t+1 , ..., x n , and in step 94 receives the associated and stored shared values Wr i,h,t+1 , ..., Wr i,h,n and W i,t+1 , ..., W i,n .

 復元部22Bは、ステップ96で、自ら管理する鍵key1jを用いて式(30)からqrihjを得て、Wri,h,t+1,・・・,Wri,h,nと合わせて、第1の秘密情報ri,h(h=t+1,・・・,n)を復元する。
[復元2]
 復元部22Bは、ステップ98で、自ら管理する鍵key2jを用いて式(31)からqijを得て、データサーバx(h=t+1,・・・,n)のIDをri,hとして、Wi,t+1,・・・,Wi,nと合わせて、第2の秘密情報sを復元する。
In step 96, the restoration unit 22B obtains qr ihj from equation (30) using the key key 1j that it manages, and combines it with Wr i,h,t+1 , ..., Wr i,h,n to restore the first secret information r i,h (h = t+1, ..., n).
[Restoration 2]
In step 98, the restoration unit 22B obtains q ij from equation (31) using the key key 2j that it manages, and restores the second secret information s i by combining it with W i,t+1 , ..., W i, n , with the ID of the data server x h (h = t+1, ..., n) as r i , h.

 上記ではデータサーバIDのみを秘匿したが、鍵サーバIDを含めて秘匿してもよい。 In the above, only the data server ID was kept secret, but the key server ID may also be kept secret.

 また、すべてのサーバIDを真正乱数で決める場合、真正乱数は0及び同じ値でなければよい。 Also, if all server IDs are determined using true random numbers, the true random numbers do not need to be 0 or the same value.

 <第3の実施の形態>
 次に、第3の実施の形態を説明する。第3の実施の形態の構成は、第1の実施の形態の構成と同様であるので、その説明を省略する。以下、第3の実施の形態の作用を説明する。
Third Embodiment
Next, a third embodiment will be described. The configuration of the third embodiment is the same as that of the first embodiment, so the description thereof will be omitted. The operation of the third embodiment will be described below.

 本実施の形態では第2の実施の形態と異なる形で秘密情報が公開されても安全な方法を示す。以下に、簡単のためn=k=2として概要を説明する。 This embodiment demonstrates a method that remains secure even if secret information is made public in a different way than in the second embodiment. For simplicity, the following overview will be given assuming n = k = 2.

 非対称秘密分散法ではオーナは固定の鍵key1j,key2j(j=1,・・・,t)を用いて暗号化を行い、qrij,qijを計算した。ここでいくつかのqrij,qijが類推できた場合、鍵key1j,key2jが解析される可能性がある。そこで、[分散]2における鍵key2jを毎回変えることによって安全性を向上させる手法を以下に示す。第1の実施の形態と同様にn=k=2として概要を説明する。 In the asymmetric secret sharing scheme, the owner performs encryption using fixed keys key1j and key2j (j = 1, ..., t) and calculates qr ij and q ij . If some qr ij and q ij can be inferred, there is a possibility that keys key1j and key2j may be analyzed. Therefore, a method for improving security by changing the key key2j in [share]2 each time will be described below. As in the first embodiment, an overview will be given assuming n = k = 2.

 [分散]
1 分散部22Aは、オーナは真正乱数rを生成して、第1の秘密情報rを非対称秘密分散する。
2 分散部22Aは、key2j+rを新たな鍵key2jとしてqijを計算し、第2の秘密情報sを非対称秘密分散する。
[Dispersion]
The owner generates a true random number r1 and asymmetrically shares the first secret information r1 with the sharing unit 22A.
The 2 sharing unit 22A calculates q ij using key 2j +r 1 as a new key key 2j , and performs asymmetric secret sharing of the second secret information s 1 .

 このように分散部22Aは、真正乱数rを、擬似乱数を発生させるための鍵key2jとして用いて、t個の分散値を生成し、t個の分散値と秘密情報とからn―t個の分散値を計算する。 In this way, the sharing unit 22A uses the true random number r1 as the key key2j for generating pseudo-random numbers to generate t shares, and calculates n-t shares from the t shares and the secret information.

 第3の実施の形態では、真正乱数rを、擬似乱数を発生させるための鍵key2jとして用いる点が分散1と異なる形である。 The third embodiment differs from share 1 in that a true random number r1 is used as a key key2j for generating pseudo-random numbers.

 [復元]
1 復元部22Bは、第1の秘密情報rを復元する。
2 復元部22Bは、r+key2jを新たなkey2jとしてqijを計算し、第2の秘密情報sを復元する。
[Restore]
1. The restoration unit 22B restores the first secret information r1 .
2. The restoration unit 22B calculates q ij using r 1 +key 2j as a new key 2j , and restores the second secret information s 1 .

 上記ではqijを生成する鍵key2jが真正乱数rによって毎回変わるので、過去の送信データなどからqijが解析でき、qijを生成するkey2jが解析できたとしても意味がなくなる。1つの秘密情報s毎に第1の秘密情報rを生成してkey2jを変える場合、詳細なアルゴリズムはkey2jをr+key2jとする以外は第1の実施の形態と同様になる。key2jを毎回変える場合、1組のdID[s]とqijから鍵がわかったとしても、それは次には用いられないので情報理論的安全性と等価な安全性を実現していると言える。解析に数組のdID[s]とqijが必要な場合、その範囲内の複数のsごとにkey2jを変えればよい。この場合、[分散][復元]の1の処理はkey2jを変更するごとに行われる。よってこの場合、非対称秘密分散が行われる回数やデータサーバに保存される分散値の数は第1の実施の形態よりも少なくなる。ただし、第1,第2の実施の形態においても毎回、第1の秘密情報を非対称秘密分散しなくても、複数のsごとに行うこともできる。また、本実施の形態において、毎回第1の秘密情報を非対称秘密分散する場合、第1の実施の形態とほぼ同じになる。また、数回に1回第1の秘密情報を更新する場合、[分散1][復元1]はそのときに行えばよい。よって、詳細なアルゴリズムは省略する。 In the above, the key key2j used to generate qij changes each time depending on the true random number rj , so even if qij can be analyzed from previously transmitted data, etc., and the key2j used to generate qij can be analyzed, it becomes meaningless. When first secret information rj is generated for each piece of secret information sj and key2j is changed, the detailed algorithm is the same as in the first embodiment except that key2j is set to r1 + key2j . When key2j is changed each time, even if the key is determined from one set of dID[ sj ] and qij , it will not be used next time, so it can be said that security equivalent to information-theoretic security is achieved. If several sets of dID[ sj ] and qij are required for analysis, key2j can be changed for each of multiple sj within that range. In this case, process 1 of [distribution] [recovery] is performed each time key2j is changed. Therefore, in this case, the number of times asymmetric secret sharing is performed and the number of shares stored in the data server are fewer than in the first embodiment. However, in the first and second embodiments, asymmetric secret sharing of the first secret does not have to be performed every time, but can be performed for multiple sj . Also, in this embodiment, if asymmetric secret sharing of the first secret is performed every time, it will be almost the same as the first embodiment. Also, if the first secret is updated once every few times, [Share 1] and [Restore 1] can be performed at that time. Therefore, detailed algorithms will be omitted.

 また、2つの真正乱数r1j,r2jを第1の秘密情報とし、key1jをkey1j+r1jとし、key2jをkey2j+r1jとすればkey1jも解析しても無駄にできる。 Furthermore, if two true random numbers r 1j and r 2j are used as the first secret information, and key 1j is set to key 1j +r 1j and key 2j is set to key 2j +r 1j , then even if key 1j is analyzed, it will be useless.

 さらに、第1の秘密情報をkey1j,key2jと加算せず、そのまま更新鍵として用いることもできる。 Furthermore, the first secret information can be used as an update key without being added to key 1j and key 2j .

 <第4の実施の形態>
 次に、第4の実施の形態を説明する。第4の実施の形態の構成は、オーナが図示しない表示装置を備える点以外は、第1の実施の形態の構成と同様であるので、その説明を省略する。以下、第4の実施の形態の作用を説明する。
<Fourth embodiment>
Next, a fourth embodiment will be described. The configuration of the fourth embodiment is the same as that of the first embodiment except that the owner is provided with a display device (not shown), so a description thereof will be omitted. The operation of the fourth embodiment will be described below.

 第1の実施の形態ではデータサーバに保存した分散値が漏洩しても秘密情報は情報理論的安全性と同様の安全性で守られることを示した。本実施の形態では非対称秘密分散においてデータサーバが攻撃者によって改竄された場合、それを検証できる手法を示す。最初に、n=4,k=3,t=2とし、データサーバ数をu=n―t=2として概要を説明する。また、x,xを鍵サーバのIDとし、x,xをデータサーバのIDとする。k=3であれば3つの分散値が揃えば復元できる。よって、オーナがもつ2つの鍵サーバの鍵から生成した分散値に対してデータサーバの分散値を1つずつ替えながら復元し、その結果が一致すればデータサーバの改竄は無しとする。 In the first embodiment, it was shown that even if the shares stored in the data server are leaked, the secret information is protected with the same security as information-theoretic security. In this embodiment, a method is shown that can verify if the data server has been tampered with by an attacker in asymmetric secret sharing. First, an overview will be given assuming n = 4, k = 3, t = 2, and the number of data servers u = n - t = 2. Also, let x 1 and x 2 be the IDs of the key servers, and x 3 and x 4 be the IDs of the data servers. If k = 3, the secret can be restored if all three shares are collected. Therefore, the shares generated from the two key server keys held by the owner are restored by changing the data server shares one by one, and if the results match, it is determined that the data server has not been tampered with.

 [分散]
1 分散部22Aは、真正乱数rをn=4,k=3,t=2,u=2として非対称秘密分散する。
2 分散部22Aは、key2jから生成した擬似乱数qにrを足したq+rを分散値として第2の秘密情報sを非対称秘密分散する。
[Dispersion]
The secret sharing unit 22A asymmetrically shares the true random number r1 with n=4, k=3, t=2, and u=2.
The 2 sharing unit 22A performs asymmetric secret sharing of the second secret information s1 using q1 + r1 , which is the sum of r1 and the pseudo-random number q1 generated from the key 2j , as a sharing value.

 [復元]
1-1.復元部22Bは、x,x,xのサーバの分散値を用いて復元した秘密情報をr′とする。
1-2.復元部22Bは、x,x,xのサーバの分散値を用いて復元した秘密情報をr″とする。
1-3.復元部22Bは、r′=r″であれば改竄無とし、r′≠r1″であれば改竄有として処理をやめる。
2-1.復元部22Bは、x,x,xのサーバの分散値を用いて復元した秘密情報をs1′とする。
2-2.復元部22Bは、x,x,xのサーバの分散値を用いて復元した秘密情報をs″とする。
2-3.復元部22Bは、s′=s″であれば改竄無として採用し、s′≠s″であれば改竄有とする。
[Restore]
1-1. The restoration unit 22B restores secret information using the server's shared values of x 1 , x 2 , and x 3 to r 1 '.
1-2. The restoration unit 22B restores the secret information restored using the server's shared values of x 1 , x 2 , and x 4 to r 1 ″.
1-3. The restoration unit 22B determines that there is no tampering if r 1 '=r 1 ' ', and terminates the process if r 1 '≠r1 ''.
2-1. The restoration unit 22B restores secret information using the server's shared values of x 1 , x 2 , and x 3 to s 1 '.
2-2. The restoration unit 22B restores the secret information restored using the server's shared values of x 1 , x 2 , and x 4 to s 1 ″.
2-3. The restoration unit 22B determines that there is no tampering if s 1 '=s 1 '' and determines that there is tampering if s 1 '≠s 1 ''.

 上記の[分散]1では鍵サーバx,xは以下となる擬似乱数q,qを生成し、データサーバx,xはW,Wが計算され保存される。 In the above [Distribution] 1, the key servers x 1 and x 2 generate the following pseudo-random numbers q 1 and q 2 , and the data servers x 3 and x 4 calculate and store W 3 and W 4 .

   

 a,aはt=2個の鍵サーバが生成したq,qから式(24)(25)のように計算されるが、rを含んだ値となるので真正乱数とみなせる。 a 1 and a 2 are calculated from q 1 and q 2 generated by t=2 key servers as in equations (24) and (25), and can be regarded as true random numbers since they contain r 1 .

 よって、r,a,aから計算されるW,Wも真正乱数とみなすことができ、q,qに関する情報を与えない。また、k=3であるので攻撃者は知ることができるW,Wを解いてrを求めることはできない。また、WからWを引くことによって定数項のrを削除できるが、a,aは前記のようにrを含むので情報理論的な安全性を満たす。 Therefore, W1 and W2 calculated from r1 , a1 , and a2 can also be considered to be true random numbers and do not provide information about q1 and q2 . Furthermore, since k = 3, an attacker cannot find r1 by solving W3 and W4 , which they can know. Furthermore, the constant term r1 can be deleted by subtracting W4 from W3 , but since a1 and a2 contain r1 as described above, information-theoretic security is satisfied.

 これに対して[復元]1ではrの復元をデータサーバの組み合わせを変えて2回行い、その結果が一致すれば改竄無とし、一致しなければ改竄有とする。一般に、分散値は式(1)の座標xにおけるy座標となっており、式(1)は2次元上の曲線を構成する。上記非対称秘密分散ではk=3であるので、オーナはr,q,qの3点を通る曲線を求め(rはx座標が0のときのy座標となる)、その曲線上のx,xにおけるy座標をW,Wとしてデータサーバに保存する。しかし、攻撃者はW,Wの2点しか知ることができないため曲線を知ることはできない。よって、攻撃者がWをW′に改竄したとしても、攻撃者はq,q,W′を通る曲線を知らないため、改竄した曲線上にW′を正しく定めることができない。よって、W,Wを順にq,qと組み合わせて復元を行い、復元結果が一致すればq,q,Wとq,q,Wを通る曲線が一致しており、改竄がないことを意味する。ただし、上記演算がmodp上で行われるとすれば、1/pの確率でW′が偽の曲線上に偶然一致することが考えられる。しかし、pを十分大きな値に設定すれば、1/pは無視できる確率となるため安全性は維持される。 In contrast, in [Recovery] 1, r1 is recovered twice by changing the combination of data servers. If the results match, it is determined that there has been no tampering; if they do not match, it is determined that there has been tampering. Generally, the shared value is the y-coordinate at the coordinate x in equation (1), and equation (1) forms a two-dimensional curve. In the above asymmetric secret sharing, k = 3, so the owner finds a curve passing through three points r1 , q1 , and q2 ( r1 is the y-coordinate when the x-coordinate is 0), and stores the y-coordinates of x3 and x4 on that curve as W3 and W4 on the data server. However, an attacker cannot know the curve because he only knows two points, W3 and W4 . Therefore, even if an attacker tampers with W3 to W3 ', he does not know the curve passing through q1 , q2 , and W3 ', and therefore cannot correctly determine W4 ' on the tampered curve. Therefore, W3 and W4 are combined with q1 and q2 in order to perform restoration, and if the restoration results match, it means that the curves passing through q1 , q2 , W3 and q1 , q2 , W4 match, and there is no tampering. However, if the above calculation is performed on modp, there is a 1/p probability that W4 ' will coincidentally match a false curve. However, if p is set to a sufficiently large value, 1/p becomes a negligible probability, and security is maintained.

 [分散][復元]2で行われる処理も1と同様の安全性をもつことは第1の実施の形態から明らかである。さらに、復元結果が一致すれば復元された第2の秘密情報sは[分散][復元]1と同様に改竄されていないこが言える。 It is clear from the first embodiment that the process performed in [Distribution][Recovery] 2 has the same security as that in 1. Furthermore, if the recovery results match, it can be said that the recovered second secret information s1 has not been tampered with, just like in [Distribution][Recovery] 1.

 次に、図7を参照して、復元プログラム26P2を説明する(図4Bも参照)。分散プログラムはn、k、tの設定を改竄検出できるようにした値であり、その設定に対する第1の実施形態と同様の処理を行えばよい。改竄検出できる設定とはデータサーバ数uは2以上必要であり、データサーバから復元できない設定であるので、1<u=n―t<k(ただし、t<k)となる。よって、k=2ではこの式を満たすn、tがないため、最小の設定はk=3、n―t=2であり、t=2、n=4となる。図7は、第4の実施の形態の復元プログラム26P2のフローチャートである。 Next, the restoration program 26P2 will be explained with reference to Figure 7 (see also Figure 4B). The distribution program is a value that allows the n, k, and t settings to be tamper-detectable, and the same processing as in the first embodiment can be performed on these settings. A setting that allows tamper detection requires the number of data servers u to be 2 or more, and is a setting that cannot be restored from a data server, so 1 < u = n - t < k (where t < k). Therefore, since there are no n or t that satisfy this equation when k = 2, the minimum settings are k = 3, n - t = 2, and so t = 2 and n = 4. Figure 7 is a flowchart of the restoration program 26P2 of the fourth embodiment.

 簡単のためt=k-1とする。t<k-1の場合、データサーバの分散値は組み合わせを変えながら検証される。それ以外の前提は、第1の実施の形態と同様であるので省略する。 For simplicity, let t = k-1. If t < k-1, the variance values of the data servers are verified while changing the combination. Other assumptions are the same as in the first embodiment, so they will be omitted.

 [復元1]
 復元部22Bは、ステップ102で、u台のデータサーバxn-u+1,・・・,xにdID[s]を送る。
[Restoration 1]
In step 102, the restoration unit 22B sends dID[s i ] to u data servers x n−u+1 , . . . , x n .

 復元部22Bは、ステップ104で、u台のデータサーバxn-u+1,・・・,xから、関連付けて保存された分散値Wri,n-u+1,・・・,Wri,nとWi,n-u+1,・・・,Wi,nを受信する。 In step 104, the restoration unit 22B receives the associated and stored variance values Wr i, n-u+1 , ..., Wr i,n and W i,n-u+1, ..., Wi,n from u data servers x n-u+1 , ..., x n .

 復元部22Bは、ステップ106で、自ら管理する鍵key1jを用いて式19からk-1個のqrij(j=1,・・・,k-1)を得て、Wri.n-u+1,・・・,Wri,nを1個ずつ順次組み合わせて、秘密情報ri,n-u+1,・・・,ri,nを復元する。 In step 106, the restoration unit 22B obtains k-1 qrij (j=1, ..., k-1) from Equation 19 using the key key1j managed by itself, and sequentially combines Wri.nu+1 , ..., Wri ,n one by one to restore the secret information ri ,nu+1 , ..., ri ,n .

 復元部22Bは、ステップ108で、ri,n-u+1,・・・,ri,nのうち一致するものがあるか否かを判断する。 In step 108, the restoration unit 22B determines whether or not there is a match among r i,n−u+1 , . . . , r i,n .

 ri,n-u+1,・・・,ri,nのうち一致するものがある場合、復元部22Bは、ステップ110で、ri,n-u+1,・・・,ri,nのうち一致するものをrとする。
[復元2]
 復元部22Bは、ステップ112で、鍵key2jを用いて式20からqij(j=1,・・・,k-1)を得て、Wi,n-u+1,・・・,Wi,nと1個ずつ順次組み合わせて、秘密情報si,n-u+1,・・・,si,nを復元する。
If there is a match among r i,n−u+1 , . . . , r i,n , the restoration unit 22B sets the match among r i,n−u+1 , .
[Restoration 2]
In step 112, the restoration unit 22B obtains q ij (j=1, ..., k-1) from equation 20 using the key key 2j , and sequentially combines it with W i,n-u+1 , ..., W i,n one by one to restore the secret information s i,n-u+1 , ..., s i,n .

 復元部22Bは、ステップ114で、si,n-u+1,・・・,si,nのうち一致するものがあるか否かを判断する。 In step 114, the restoration unit 22B determines whether or not there is a match among s i,n−u+1 , . . . , s i,n .

 si,n-u+1,・・・,si,nのうち一致するものがあれば、復元部22Bは、ステップ116で、si,n-u+1,・・・,si,nのうち一致するものを正解として採用する。 If there is a match among s i,n−u+1 , . . . , s i ,n , the restoration unit 22B adopts the match among s i,n−u+1 , .

 ステップ108又はステップ114が否定判定の場合、改竄が有ることを、上記表示装置に表示する。 If step 108 or step 114 returns a negative result, the display device displays a message indicating that tampering has occurred.

 上記において[復元1]における改竄確認は省略できる。なぜならば、[復元1]の結果が一致しなければ、[復元2]の結果も一致しないと考えられるので[復元2]のみを確認してもよい。それに伴い、[分散1]と[復元1]は第1の実施の形態と同様にしてもよい。 In the above, the tampering check in [Restoration 1] can be omitted. This is because if the results of [Restoration 1] do not match, it is likely that the results of [Restoration 2] will also not match, so it is sufficient to check [Restoration 2] alone. Accordingly, [Distribution 1] and [Restoration 1] may be the same as in the first embodiment.

 第2、第3の実施の形態に対しても同様の検証を行えば復元結果の改竄の有無を検証することができる。
また、nとkを増加させることによって安全性を向上させることもできる。例えば、n=6,k=4,t=3とすればデータサーバ数は3となる。ここで、データサーバからの3つの分散値を改竄して偶然一致させる確率は1/pとなり、安全性が向上する。
If a similar verification is performed for the second and third embodiments, it is possible to verify whether the restored results have been tampered with.
Security can also be improved by increasing n and k. For example, if n = 6, k = 4, and t = 3, the number of data servers is 3. Here, the probability that three distributed values from the data servers will be tampered with and accidentally match is 1/ p2 , improving security.

 <その他の実施の形態>
 上記4つの実施の形態は組み合わせて実行することが可能であることは明らかである。例えば、第1~第3の実施の形態は各々異なる第1の秘密情報を用いて第2の秘密情報に対する分散値とサーバID、擬似乱数の生成鍵を同時に秘匿することでき、そのうちの1つを第4の実施の形態として改竄検出することもできる。また、前記実施の形態において第2の秘密情報をsとしたが、それ以外の種々の値を第2の秘密情報として用いてもよい。
<Other embodiments>
It is clear that the above four embodiments can be implemented in combination. For example, the first to third embodiments can simultaneously conceal shares for the second secret, a server ID, and a pseudo-random number generation key using different first secret information, and one of these can be used as the fourth embodiment to detect tampering. Furthermore, although the second secret information in the above embodiments is s i , various other values may also be used as the second secret information.

 (非特許文献2)
Keiichi Iwamura and Ahmad Akmal Aminuddin Mohd Kamal,“Communication-Efficient Secure Computation of Encrypted Inputs Using (k,n) Threshold Secret Sharing”,IEEE Access, May 2023.
 例えば、非特許文献2に示す秘密計算に用いるr(s+1)などを秘密情報とすれば、その復元値を秘密計算にそのまま用いることができる。また、第1の秘密情報r1で第2の秘密情報sをバーナム暗号ようにr+sとして送ってもよい。さらに、送信側で第1の秘密情報r1で擬似乱数qr1jをバーナム暗号のようにr+qr1jを秘匿して送り、受信側は共有した鍵key1jからqr1jを得て第1の秘密情報rを取り出し、rを使って第2の秘密情報sを第1から第4の実施の形態のようにして送ってもよい。ただし、第2の秘密情報sを第1の秘密情報と同じようにバーナム暗号の形で送るとr+sとなり、以下の計算によって真正乱数が失われる。
(r+qr)+(r+s)=qr+s
 よって、第1の秘密情報と第2の秘密情報は異なる秘匿を行う必要がある。第1の実施の形態では第1の秘密情報は分散値を秘匿する形で用いられ、第2の実施の形態ではサーバIDとして用いられ、第3の実施の形態では鍵更新に用いられ、異なる秘匿を行っているため問題は生じない。すなわち、本発明の本質は第1の秘密情報として真正乱数を秘匿して通信し、第2の秘密情報を第1の秘密情報を用いて第1の秘密情報と違う形で秘匿することにある。ただし、そのどちらかまたは両方に非対称秘密分散が用いられる。
(Non-Patent Document 2)
Keiichi Iwamura and Ahmad Akmal Aminuddin Mohd Kamal, “Communication-Efficient Secure Computation of Encrypted Inputs Using (k,n) Threshold Secret Sharing”, IEEE Access, May 2023.
For example, if r1 ( s1 +1) used in the secure computation shown in Non-Patent Document 2 is used as secret information, the restored value can be used directly in the secure computation. Also, the second secret information s1 may be sent as r1 + s1 using the first secret information r1, as in the Vernam cipher. Furthermore, the sending side may send a pseudo-random number qr1j using the first secret information r1, concealing r1 + qr1j as in the Vernam cipher, and the receiving side may obtain qr1j from the shared key key1j to extract the first secret information r1 , and use r1 to send the second secret information s1 as in the first to fourth embodiments. However, if the second secret information s1 is sent in the form of the Vernam cipher, like the first secret information, it becomes r1 + s1 , and the true random number is lost by the following calculation.
(r 1 +qr 1 )+(r 1 +s 1 )=qr 1 +s 1
Therefore, the first secret information and the second secret information need to be concealed in different ways. In the first embodiment, the first secret information is used to conceal the shares, in the second embodiment it is used as a server ID, and in the third embodiment it is used for key update. Since they are concealed in different ways, no problems arise. That is, the essence of the present invention is to communicate a true random number as the first secret information while concealing it, and to conceal the second secret information in a different way from the first secret information using the first secret information. However, asymmetric secret sharing is used for one or both of them.

 また、オーナがもつ鍵をkey1j,key2jとしたが、同一の鍵keyを用いて暗号化を行ってもよい。この場合、暗号化結果を変えるために暗号化されるデータ識別子に定められた値を加える、または連接するなどしてデータの方を変えてもよい。また、第1の実施の形態において第2の秘密情報に対する分散値を直接第1の秘密情報とする場合、key2jは不要になるのでkey1jにkeyを直接用いてもよい。 Furthermore, although the keys held by the owner are designated as key 1j and key 2j , encryption may be performed using the same key key j . In this case, to change the encryption result, the data may be changed by adding or concatenating a predetermined value to the encrypted data identifier. Furthermore, in the first embodiment, if the shares for the second secret information are directly used as the first secret information, key 2j becomes unnecessary, and key j may be used directly as key 1j .

 また、第1の実施の形態ではn=k=2のとき、データサーバに保存する分散値の数が2個となり、従来の秘密分散法に対してメモリ容量の削減を実現していない。しかし、例えばn=k=3、t=k-1とするとデータサーバ数は1台、保存する分散値の数は2個となる。従来の秘密分散法では3個の分散値を保存するので全体のメモリ容量は2/3となる。よって、第1~第3の実施の形態においてもn,kを増加させると全体のメモリ容量が従来の秘密分散法に比べて2/nとなり、メモリ量の削減率を増加させることができる。 Furthermore, in the first embodiment, when n = k = 2, the number of shares stored in the data server is two, and no reduction in memory capacity is achieved compared to conventional secret sharing schemes. However, for example, if n = k = 3 and t = k-1, the number of data servers is one and the number of shares stored is two. In conventional secret sharing schemes, three shares are stored, so the total memory capacity is 2/3. Therefore, in the first to third embodiments, if n and k are increased, the total memory capacity is 2/n compared to conventional secret sharing schemes, and the memory reduction rate can be increased.

 一方、非対称秘密分散法の利点としてメモリ容量削減以外に、オーナの分散値管理が容易になるという点がある。すなわち、従来の秘密分散法ではデータサーバはn台必要であるが、そのうちのk台がオーナの知らないうちに攻撃者に攻撃され、分散値が漏洩すれば秘密情報を攻撃者に知られる危険性がある。それに対して非対称秘密分散法はk-1個までの分散値をオーナが鍵から生成できるので、データサーバ数をk-1(最小1台)以下とすることができる。よって、攻撃者が最大k-1台のデータサーバをオーナが知らないうちに攻撃したとしても、オーナが生成する分散値がなければ秘密情報は漏洩しない。よって、オーナが知らないうちに秘密情報が漏洩することはない。
以上より、t=k-1とすればデータサーバはクラウド1台でよく、オーナが真正乱数を生成する機能を持つスマホやPC(即ち、パーソナルコンピューター(パソコン))などで分散と復元を行えば秘密情報の数が膨大でも、スマホやPC1台だけで上記特徴を持つデータ管理が実現できる。さらに、従来の非対称秘密分散法は攻撃者が送信情報から鍵から生成される分散値を類推できる場合、量子計算機などにより秘密情報は漏洩する。それに対して、本発明では送信情報の安全性は情報理論的安全性とできるので、攻撃者はオーナが生成する分散値を量子計算機などでも知ることはできず、大きく安全性が向上していると言える。
また、従来の秘密分散法では、最小のk=2としても2個の分散値を安全に送るためには、バーナム暗号のような暗号化の仕組みを別に必要とし、通信に用いることは不適であった。それに対して、非対称秘密分散法はt=k―1とすれば1個の分散値のやり取りでよいので、通信に用いることができる。すなわち、n=k=2として鍵key1j,key2jを送信側と受信側で共有し、送信側が真正乱数を生成して、第1の秘密情報及び第2の秘密情報に対する各1個の分散値を同時に送れば1回の通信で情報理論的安全性を実現する暗号通信が行える。また、第4の実施の形態に示すようにn=4,k=3,t=2として同じ秘密情報に対して異なる分散値を2個送れば通信路上で改竄が行われていないかを検証機能付き秘密分散によって確認できる。
On the other hand, an advantage of asymmetric secret sharing schemes is that, in addition to reducing memory capacity, it also makes it easier for the owner to manage shares. That is, conventional secret sharing schemes require n data servers, but if k of these servers are attacked by an attacker without the owner's knowledge and shares are leaked, there is a risk that the attacker will learn the secret information. In contrast, asymmetric secret sharing schemes allow the owner to generate up to k-1 shares from a key, the number of data servers can be kept to k-1 (a minimum of 1). Therefore, even if an attacker attacks up to k-1 data servers without the owner's knowledge, the secret information will not be leaked unless there are shares generated by the owner. Therefore, the secret information will not be leaked without the owner's knowledge.
From the above, if t = k-1, a single cloud data server is sufficient, and if the owner performs distribution and restoration using a smartphone or PC (i.e., a personal computer (PC)) that has the function of generating true random numbers, data management with the above characteristics can be achieved with just one smartphone or PC, even if the amount of secret information is enormous. Furthermore, in conventional asymmetric secret sharing schemes, if an attacker can infer the shares generated from the key from the transmitted information, the secret information can be leaked using a quantum computer or the like. In contrast, in the present invention, the security of the transmitted information can be made information-theoretically secure, so an attacker cannot know the shares generated by the owner even with a quantum computer, and it can be said that security is greatly improved.
Furthermore, in conventional secret sharing schemes, even when the minimum value k is 2, a separate encryption mechanism such as the Vernam cipher is required to securely transmit two shares, making them unsuitable for communication. In contrast, asymmetric secret sharing schemes can be used for communication because they require only one share when t = k-1. That is, if n = k = 2, keys key1j and key2j are shared between the sender and receiver, and the sender generates a true random number and simultaneously transmits one share each for the first secret and the second secret, cryptographic communication that achieves information-theoretic security in a single communication can be achieved. Furthermore, as shown in the fourth embodiment, if two different shares for the same secret are transmitted when n = 4, k = 3, and t = 2, it is possible to verify whether tampering has occurred on the communication channel using verifiable secret sharing.

 さらに、n=k=2として分散処理をIoTデバイスが行ってWri,2,Wi,2を受信端末に送り、鍵key1j,key2jを共有した復元処理を受信端末が行えば、非常に軽い処理で情報理論的に安全な通信がIoTデバイスで行えるようになる。よって、提案法は通信に対しても使うことができる。 Furthermore, if the IoT device performs distributed processing with n = k = 2 and sends Wr i,2 and W i,2 to the receiving terminal, and the receiving terminal performs the restoration processing using the shared keys key 1j and key 2j , then the IoT device can perform information-theoretically secure communication with very light processing. Therefore, the proposed method can also be used for communication.

 また、秘密情報を送信側と受信側が共有するパスワード(即ち、PW)とすれば、送信者が受信者に秘密情報としてPWを送れば本人認証もできる。ただし、これだけでは毎回同じ情報が送られるので、新たな真正乱数を追加の第1の秘密情報として送り、PWにその真正乱数を作用させた値を第2の秘密情報として送れば毎回違う情報を用いて本人認証が可能になる。追加の真正乱数は受信者の方から送り、送信者がそれを復元してPWに作用させた値を第2の秘密情報として送り返してもよい。 Furthermore, if the secret information is a password (i.e., PW) shared by the sender and receiver, identity authentication can be achieved by the sender sending the PW as secret information to the receiver. However, this alone results in the same information being sent every time, so if a new true random number is sent as additional first secret information and the value obtained by applying this true random number to the PW is sent as the second secret information, identity authentication can be achieved using different information each time. The additional true random number can also be sent by the receiver, and the sender can restore it, apply it to the PW, and send back the value as the second secret information.

 また、オーナと復元者は同じ場合もあるが、オーナが他の復元者に秘密情報の復元を許す場合、オーナは復元者に第2の秘密情報に対して生成した擬似乱数または真正乱数の組み合わせを教える場合もある。この場合、2回目の復元が行われないように第1の秘密情報を変えるなどしてデータサーバに保存する分散値を更新などする必要がある。 Also, the owner and restorer may be the same person, but if the owner allows another restorer to restore the secret information, the owner may tell the restorer the combination of pseudo-random or true random numbers generated for the second secret information. In this case, it is necessary to update the shares stored on the data server, for example by changing the first secret information, to prevent a second restoration from being performed.

 CPU22は、本開示の技術の「プロセッサ」の一例である。プロセッサとしては、CPU22以外に、例えば、FPGA(Field-Programmable Gate Array)、PLD(Programmable Logic Device)、又はASIC(Application Specific Integrated Circuit)などの特定の処理を実行させるために専用に設計された回路構成を有するプロセッサである専用電気回路が挙げられる。 The CPU 22 is an example of a "processor" in the technology of this disclosure. In addition to the CPU 22, other examples of processors include dedicated electrical circuits, such as FPGAs (Field-Programmable Gate Arrays), PLDs (Programmable Logic Devices), or ASICs (Application Specific Integrated Circuits), which are processors with a circuit configuration designed specifically to perform specific processing.

 分散処理及び復元処理を実行するハードウェア資源は、これらの各種のプロセッサのうちの1つで構成されてもよいし、同種または異種の2つ以上のプロセッサの組み合わせ(例えば、複数のFPGAの組み合わせ、又はCPUとFPGAとの組み合わせ)で構成されてもよい。また、分散処理及び復元処理を実行するハードウェア資源は1つのプロセッサであってもよい。 The hardware resource that executes the distributed processing and restoration processing may be composed of one of these various processors, or may be composed of a combination of two or more processors of the same or different types (for example, a combination of multiple FPGAs, or a combination of a CPU and an FPGA). Also, the hardware resource that executes the distributed processing and restoration processing may be a single processor.

 1つのプロセッサで構成する例としては、第1に、1つ以上のCPUとソフトウェアの組み合わせで1つのプロセッサを構成し、このプロセッサが、分散処理及び復元処理を実行するハードウェア資源として機能する形態がある。第2に、SoC(System-on-a-chip)などに代表されるように、分散処理及び復元処理を実行する複数のハードウェア資源を含むシステム全体の機能を1つのICチップで実現するプロセッサを使用する形態がある。このように、分散処理及び復元処理は、ハードウェア資源として、上記各種のプロセッサの1つ以上を用いて実現される。 As an example of a system configured with a single processor, first, one processor is configured with a combination of one or more CPUs and software, and this processor functions as a hardware resource that executes distributed processing and restoration processing. Second, there is a system that uses a processor that realizes the functions of an entire system, including multiple hardware resources that execute distributed processing and restoration processing, on a single IC chip, as typified by SoCs (System-on-a-chip). In this way, distributed processing and restoration processing are realized using one or more of the various processors listed above as hardware resources.

 更に、これらの各種のプロセッサのハードウェア的な構造としては、より具体的には、半導体素子などの回路素子を組み合わせた電気回路を用いることができる。また、上記の分散処理及び復元処理はあくまでも一例である。従って、主旨を逸脱しない範囲内において不要なステップを削除したり、新たなステップを追加したり、処理順序を入れ替えたりしてもよいことは言うまでもない。 Furthermore, the hardware structure of these various processors can be, more specifically, an electrical circuit that combines circuit elements such as semiconductor devices. Furthermore, the distributed processing and restoration processing described above are merely examples. Therefore, it goes without saying that unnecessary steps can be deleted, new steps can be added, or the processing order can be rearranged, as long as it does not deviate from the spirit of the invention.

 記憶装置26は、非一時的記憶媒体である。記憶装置26の一例としては、HDD(Hard Disk Drive)が挙げられる。なお、HDDは、あくまでも一例に過ぎず、SSD(Solid State Drive)等の他種類の記憶装置であってもよい。 Storage device 26 is a non-transitory storage medium. An example of storage device 26 is a hard disk drive (HDD). Note that an HDD is merely an example, and other types of storage devices such as a solid state drive (SSD) may also be used.

 以上に示した記載内容及び図示内容は、本開示の技術に係る部分についての詳細な説明であり、本開示の技術の一例に過ぎない。例えば、上記の構成、機能、作用、及び効果に関する説明は、本開示の技術に係る部分の構成、機能、作用、及び効果の一例に関する説明である。よって、本開示の技術の主旨を逸脱しない範囲内において、以上に示した記載内容及び図示内容に対して、不要な部分を削除したり、新たな要素を追加したり、置き換えたりしてもよいことは言うまでもない。また、錯綜を回避し、本開示の技術に係る部分の理解を容易にするために、以上に示した記載内容及び図示内容では、本開示の技術の実施を可能にする上で特に説明を要しない技術常識等に関する説明は省略されている。 The above-described written content and illustrations are a detailed explanation of the parts related to the technology of the present disclosure and are merely an example of the technology of the present disclosure. For example, the above explanation of the configuration, functions, actions, and effects is an explanation of an example of the configuration, functions, actions, and effects of the parts related to the technology of the present disclosure. Therefore, it goes without saying that unnecessary parts may be deleted, new elements may be added, or substitutions may be made to the above-described written content and illustrations, as long as they do not deviate from the spirit of the technology of the present disclosure. Furthermore, in order to avoid confusion and to facilitate understanding of the parts related to the technology of the present disclosure, the above-described written content and illustrations omit explanations of common technical knowledge that do not require particular explanation to enable the implementation of the technology of the present disclosure.

 本明細書に記載された全ての文献、特許出願及び技術規格は、個々の文献、特許出願及び技術規格が参照により取り込まれることが具体的かつ個々に記された場合と同程度に、本明細書中に参照により取り込まれる。 All publications, patent applications, and technical standards mentioned in this specification are incorporated by reference herein to the same extent as if each individual publication, patent application, and technical standard was specifically and individually indicated to be incorporated by reference.

 <付記>
 以上の開示から以下の付記が提案される。
(付記1)
 秘密分散装置と秘密情報復元装置とを備え、nを2以上の整数、kを最小値が2で最大値がnの整数とし、1個の秘密情報をn個の分散値に分散し、そのうちk個の分散値を集めれば秘密情報を復元でき、k-1個以下では秘密情報を復元できないシステムにおける秘密分散装置は、プロセッサを備え、前記プロセッサは、第1の秘密情報として1つ以上の真正乱数を取得し、各真正乱数に対してt(<k)個の分散値を第1の鍵から生成し、前記t個の分散値と第1の秘密情報とからn―t個の分散値を計算する処理を実行する秘密分散装置。
(付記2)
 秘密分散装置と秘密情報復元装置とを備え、nを2以上の整数、kを最小値が2で最大値がnの整数とし、1個の秘密情報をn個の分散値に分散し、そのうちk個の分散値を集めれば秘密情報を復元でき、k-1個以下では秘密情報を復元できないシステムにおける秘密分散装置は、プロセッサを備え、前記プロセッサは、真正乱数を第1の秘密情報として秘匿し、第2の秘密情報を前記第1の秘密情報を用いて前記第1の秘密情報と異なる形で秘匿する処理を実行する秘密分散装置。
(付記3)
 請求項1に記載のシステムにおける秘密情報復元装置は、プロセッサを備え、前記プロセッサは、第1の秘密情報を復元し、復元された前記第1の秘密情報を用いて付記2に記載の第2の秘密情報を復元する処理を実行する、秘密情報復元装置。
(付記4)
 nを2以上の整数、kを最小値が2で最大値がnの整数とし、1個の秘密情報をn個の分散値に分散し、そのうちk個の分散値を集めれば秘密情報を復元でき、k-1個以下では秘密情報を復元できないシステムにおける秘密情報復元装置は、プロセッサを備え、前記プロセッサは、付記1に記載の鍵から生成したt個の分散値とn―t個の分散値を順に組み合わせを変えて復元する処理を実行する、秘密情報復元装置。
(付記5)
 nを2以上の整数、kを最小値が2で最大値がnの整数とし、1個の秘密情報をn個の分散値に分散し、そのうちk個の分散値を集めれば秘密情報を復元でき、k-1個以下では秘密情報を復元できないシステムにおける秘密分散装置は、プロセッサを備え、前記プロセッサは、鍵からt(<k)個の分散値を計算し、計算された前記t個の分散値と秘密情報とからn―t個の分散値を計算する処理を実行し、前記秘密分散装置は、人的制御が不可能な自然現象を使用して真正乱数を生成する真正乱数生成部を更に備え、前記プロセッサは、前記t個の分散値と前記n―t個の分散値との少なくとも一方を、前記真正乱数を更に用いて計算する、秘密分散装置。
<Additional Notes>
In light of the above disclosure, the following remarks are proposed:
(Appendix 1)
A system is provided with a secret sharing device and a secret information recovery device, where n is an integer greater than or equal to 2 and k is an integer having a minimum value of 2 and a maximum value of n, where one piece of secret information is distributed into n shared values, and the secret information can be recovered by collecting k of the shared values, but the secret information cannot be recovered by collecting k-1 or fewer shared values. The secret sharing device in this system is provided with a processor, which acquires one or more true random numbers as first secret information, generates t (<k) shared values for each true random number from a first key, and executes a process of calculating n-t shared values from the t shared values and the first secret information.
(Appendix 2)
A system comprising a secret sharing device and a secret information recovery device, where n is an integer greater than or equal to 2 and k is an integer having a minimum value of 2 and a maximum value of n, where one piece of secret information is distributed into n distribution values, and the secret information can be recovered by collecting k of the distribution values, but the secret information cannot be recovered by collecting k-1 or fewer of the distribution values, comprises a processor, and the processor conceals a true random number as first secret information, and uses the first secret information to perform a process of concealing second secret information in a form different from the first secret information.
(Appendix 3)
The secret information recovery device in the system described in claim 1 includes a processor, and the processor recovers first secret information and performs a process of recovering second secret information described in Appendix 2 using the recovered first secret information.
(Appendix 4)
A secret information recovery device in a system in which n is an integer greater than or equal to 2, k is an integer having a minimum value of 2 and a maximum value of n, one piece of secret information is distributed into n distributed values, and the secret information can be recovered by collecting k of the distributed values, but cannot be recovered by collecting k-1 or fewer distributed values, includes a processor, and the processor executes a process of recovering the secret information by sequentially changing the combinations of t distributed values and n-t distributed values generated from the key described in Appendix 1.
(Appendix 5)
A secret sharing apparatus for a system in which one piece of secret information is distributed into n shared values, where n is an integer greater than or equal to 2 and k is an integer with a minimum value of 2 and a maximum value of n, and the secret information can be restored by collecting k of the shared values but cannot be restored by collecting k-1 or fewer shared values, comprises a processor, which calculates t (<k) shared values from a key and executes a process of calculating n-t shared values from the calculated t shared values and the secret information, and the secret sharing apparatus further comprises a true random number generation unit which generates true random numbers using a natural phenomenon that cannot be controlled by humans, and the processor calculates at least one of the t shared values and the n-t shared values using the true random numbers.

Claims (18)

 nを2以上の整数、kを最小値が2で最大値がnの整数とし、1個の秘密情報をn個の分散値に分散し、そのうちk個の分散値を集めれば秘密情報を復元でき、k-1個以下では秘密情報を復元できないシステムにおける非対称秘密分散装置であって、
 第1の秘密情報として1つ以上の真正乱数を取得し、各真正乱数に対してt(<k)個の分散値を第1の鍵から生成する生成部と、
 前記t個の分散値と第1の秘密情報とからn―t個の分散値を計算する計算部と、
 を有することを特徴とする非対称秘密分散装置。
An asymmetric secret sharing apparatus for a system in which n is an integer equal to or greater than 2, k is an integer having a minimum value of 2 and a maximum value of n, one piece of secret information is distributed into n distribution values, and the secret information can be restored by collecting k of the distribution values, but the secret information cannot be restored by collecting k-1 or fewer distribution values,
a generation unit that acquires one or more true random numbers as first secret information and generates t (<k) shares for each true random number from a first key;
a calculation unit that calculates n−t shared values from the t shared values and first secret information;
1. An asymmetric secret sharing device comprising:
 nを2以上の整数、kを最小値が2で最大値がnの整数とし、1個の秘密情報をn個の分散値に分散し、そのうちk個の分散値を集めれば秘密情報を復元でき、k-1個以下では秘密情報を復元できないシステムにおける非対称秘密分散装置であって、
 真正乱数を第1の秘密情報として秘匿する第1の秘匿部と、
 第2の秘密情報を前記第1の秘密情報を用いて前記第1の秘密情報と異なる形で秘匿する第2の秘匿部と、
 を有することを特徴とする、非対称秘密分散装置。
An asymmetric secret sharing apparatus for a system in which n is an integer equal to or greater than 2, k is an integer having a minimum value of 2 and a maximum value of n, one piece of secret information is distributed into n distribution values, and the secret information can be restored by collecting k of the distribution values, but the secret information cannot be restored by collecting k-1 or fewer distribution values,
a first concealment unit that conceals the true random number as first secret information;
a second concealment unit that conceals second secret information using the first secret information in a form different from that of the first secret information;
An asymmetric secret sharing device comprising:
 前記第1の秘匿部は、請求項1に記載の生成部及び計算部を備え、前記t個の分散値を生成し、前記t個の分散値と前記第1の秘密情報とからn―t個の分散値を計算することにより、前記真正乱数を前記第1の秘密情報として秘匿し、
 前記第2の秘匿部は、前記真正乱数を用いて第2の鍵から生成したt個の擬似乱数のすべてまたはいくつかを、秘匿してt個の分散値として、又は、前記t個の真正乱数を直接、t個の分散値として、生成し、前記t個の分散値と前記第2の秘密情報とからn―t個の分散値を計算する、
 請求項2に記載の非対称秘密分散装置。
the first concealment unit includes a generation unit and a calculation unit according to claim 1, and generates the t shared values, and calculates n-t shared values from the t shared values and the first secret information, thereby concealing the true random numbers as the first secret information;
the second secret information generating unit secretly generates t shared values from all or some of the t pseudo-random numbers generated from the second key using the true random numbers, or generates t shared values directly from the t true random numbers, and calculates n-t shared values from the t shared values and the second secret information;
3. The asymmetric secret sharing device according to claim 2.
 前記第1の秘匿部は、請求項1に記載の生成部及び計算部を備え、前記t個の分散値を生成、前記t個の分散値と前記第1の秘密情報とからn―t個の分散値を計算することにより、前記真正乱数を前記第1の秘密情報として秘匿し、
 前記第2の秘匿部は、第2の鍵を用いてt個の分散値を生成し、請求項1に記載した第1の秘密情報を分散式の変数として用いて前記t個の分散値と第2の秘密情報からn―t個の分散値を計算する、
 請求項2に記載の非対称秘密分散装置。
the first concealment unit includes the generation unit and calculation unit according to claim 1, and generates the t shared values, and calculates n-t shared values from the t shared values and the first secret information, thereby concealing the true random numbers as the first secret information;
the second secret unit generates t shares by using a second key, and calculates n-t shares from the t shares and the second secret by using the first secret as a variable of a sharing formula;
3. The asymmetric secret sharing device according to claim 2.
 前記第1の秘匿部は、請求項1に記載の生成部及び計算部を備え、前記t個の分散値を生成、前記t個の分散値と前記第1の秘密情報とからn―t個の分散値を計算することにより、前記真正乱数を前記第1の秘密情報として秘匿し、
 前記第2の秘匿部は、前記真正乱数を、擬似乱数を発生させるための第2の鍵として用いて、t個の分散値を生成し、該t個の分散値と秘密情報からn―t個の分散値を計算する、
 請求項2に記載の非対称秘密分散装置。
the first concealment unit includes the generation unit and calculation unit according to claim 1, and generates the t shared values, and calculates n-t shared values from the t shared values and the first secret information, thereby concealing the true random numbers as the first secret information;
the second concealing unit generates t shares by using the true random number as a second key for generating pseudo-random numbers, and calculates n-t shares from the t shares and secret information;
3. The asymmetric secret sharing device according to claim 2.
 前記第1の秘匿部または第2の秘匿部は1つ以上の真正乱数を取得して鍵から生成した擬似乱数を秘匿することを特徴とする請求項2に記載の非対称秘密分散装置。 The asymmetric secret sharing device described in claim 2, characterized in that the first concealment unit or the second concealment unit obtains one or more true random numbers and conceals pseudo-random numbers generated from a key.  請求項1に記載のシステムにおける秘密情報復元装置であって、
 第1の秘密情報を復元する第1の復元部と、
 復元された前記第1の秘密情報を用いて請求項3~6の何れか1項に記載の第2の秘密情報を復元する第2の復元部と、
 を有することを特徴とする秘密情報復元装置。
A secret information recovery device in the system according to claim 1,
a first restoration unit that restores the first secret information;
a second restoration unit that restores the second secret information according to any one of claims 3 to 6 using the restored first secret information;
A secret information recovery device comprising:
 nを2以上の整数、kを最小値が2で最大値がnの整数とし、1個の秘密情報をn個の分散値に分散し、そのうちk個の分散値を集めれば秘密情報を復元でき、k-1個以下では秘密情報を復元できないシステムにおける秘密情報復元装置であって、
 請求項1、3~5の何れか1項に記載の鍵から生成したt個の分散値とn―t個の分散値を順に組み合わせを変えて復元する復元部を備えることを特徴とする秘密情報復元装置。
A secret information recovery device for a system in which n is an integer equal to or greater than 2, k is an integer having a minimum value of 2 and a maximum value of n, one piece of secret information is distributed into n distributed values, and the secret information can be recovered by collecting k of the distributed values, but the secret information cannot be recovered by collecting k-1 or fewer distributed values,
6. A secret information recovery device comprising: a recovery unit that recovers secret information by sequentially changing the combination of t shares and n−t shares generated from the key according to claim 1.
 nを2以上の整数、kを最小値が2で最大値がnの整数とし、1個の秘密情報をn個の分散値に分散し、そのうちk個の分散値を集めれば秘密情報を復元でき、k-1個以下では秘密情報を復元できないシステムにおける非対称秘密分散装置であって、
 鍵からt(<k)個の分散値を計算する第1の計算部と、
 計算された前記t個の分散値と秘密情報とからn―t個の分散値を計算する第2の計算部と、
 を有し、
 前記秘密分散装置は、人的制御が不可能な自然現象を使用して真正乱数を生成する真正乱数生成部を更に備え、
 前記t個の分散値と前記n―t個の分散値との少なくとも一方は、前記真正乱数を更に用いて計算される、
 非対称秘密分散装置。
An asymmetric secret sharing apparatus for a system in which n is an integer equal to or greater than 2, k is an integer having a minimum value of 2 and a maximum value of n, one piece of secret information is distributed into n distribution values, and the secret information can be restored by collecting k of the distribution values, but the secret information cannot be restored by collecting k-1 or fewer distribution values,
a first calculation unit for calculating t (<k) shares from the key;
a second calculation unit that calculates n−t shared values from the calculated t shared values and secret information;
and
The secret sharing apparatus further comprises a true random number generation unit that generates true random numbers using natural phenomena that cannot be controlled by humans,
At least one of the t variance values and the n-t variance values is calculated further using the true random numbers.
Asymmetric secret sharing device.
 nを2以上の整数、kを最小値が2で最大値がnの整数とし、1個の秘密情報をn個の分散値に分散し、そのうちk個の分散値を集めれば秘密情報を復元でき、k-1個以下では秘密情報を復元できないシステムにおける非対称秘密分散装置のコンピュータを、
 第1の秘密情報として1つ以上の真正乱数を取得し、各真正乱数に対してt(<k)個の分散値を第1の鍵から生成する生成部、及び
 前記t個の分散値と第1の秘密情報とからn―t個の分散値を計算する計算部
 として機能させるための非対称秘密分散プログラム。
A computer of an asymmetric secret sharing device in a system in which n is an integer equal to or greater than 2, k is an integer having a minimum value of 2 and a maximum value of n, one piece of secret information is distributed into n distribution values, and the secret information can be restored by collecting k of the distribution values, but the secret information cannot be restored by collecting k-1 or fewer distribution values, is
An asymmetric secret sharing program for functioning as: a generation unit that acquires one or more true random numbers as first secret information, and generates t (<k) shares for each true random number from a first key; and a calculation unit that calculates n-t shares from the t shares and the first secret information.
 nを2以上の整数、kを最小値が2で最大値がnの整数とし、1個の秘密情報をn個の分散値に分散し、そのうちk個の分散値を集めれば秘密情報を復元でき、k-1個以下では秘密情報を復元できないシステムにおける非対称秘密分散装置のコンピュータを、
 真正乱数を第1の秘密情報として秘匿する第1の秘匿部、及び
 第2の秘密情報を前記第1の秘密情報を用いて前記第1の秘密情報と異なる形で秘匿する第2の秘匿部
 として機能させるための非対称秘密分散プログラム。
A computer of an asymmetric secret sharing device in a system in which n is an integer equal to or greater than 2, k is an integer having a minimum value of 2 and a maximum value of n, one piece of secret information is distributed into n distribution values, and the secret information can be restored by collecting k of the distribution values, but the secret information cannot be restored by collecting k-1 or fewer distribution values, is
An asymmetric secret sharing program for causing a first concealment unit to conceal a true random number as first secret information, and a second concealment unit to conceal second secret information in a form different from that of the first secret information by using the first secret information.
 前記第1の秘匿部は、請求項1に記載の生成部及び計算部を備え、前記t個の分散値を生成し、前記t個の分散値と前記第1の秘密情報とからn―t個の分散値を計算することにより、前記真正乱数を前記第1の秘密情報として秘匿し、
 前記第2の秘匿部は、前記真正乱数を用いて第2の鍵から生成したt個の擬似乱数のすべてまたはいくつかを、秘匿してt個の分散値として、又は、前記t個の真正乱数を直接、t個の分散値として、生成し、前記t個の分散値と前記第2の秘密情報とからn―t個の分散値を計算する、
 請求項11に記載の非対称秘密分散プログラム。
the first concealment unit includes a generation unit and a calculation unit according to claim 1, and generates the t shared values, and calculates n-t shared values from the t shared values and the first secret information, thereby concealing the true random numbers as the first secret information;
the second secret information generating unit secretly generates t shared values from all or some of the t pseudo-random numbers generated from the second key using the true random numbers, or generates t shared values directly from the t true random numbers, and calculates n-t shared values from the t shared values and the second secret information;
The asymmetric secret sharing program according to claim 11.
 前記第1の秘匿部は、請求項1に記載の生成部及び計算部を備え、前記t個の分散値を生成、前記t個の分散値と前記第1の秘密情報とからn―t個の分散値を計算することにより、前記真正乱数を前記第1の秘密情報として秘匿し、
 前記第2の秘匿部は、第2の鍵を用いてt個の分散値を生成し、請求項1に記載した第1の秘密情報を分散式の変数として用いて前記t個の分散値と第2の秘密情報からn―t個の分散値を計算する、
 請求項11に記載の非対称秘密分散プログラム。
the first concealment unit includes the generation unit and calculation unit according to claim 1, and generates the t shared values, and calculates n-t shared values from the t shared values and the first secret information, thereby concealing the true random numbers as the first secret information;
the second secret unit generates t shares by using a second key, and calculates n-t shares from the t shares and the second secret by using the first secret as a variable of a sharing formula;
The asymmetric secret sharing program according to claim 11.
 前記第1の秘匿部は、請求項1に記載の生成部及び計算部を備え、前記t個の分散値を生成、前記t個の分散値と前記第1の秘密情報とからn―t個の分散値を計算することにより、前記真正乱数を前記第1の秘密情報として秘匿し、
 前記第2の秘匿部は、前記真正乱数を、擬似乱数を発生させるための第2の鍵として用いて、t個の分散値を生成し、該t個の分散値と秘密情報からn―t個の分散値を計算する、
 請求項11に記載の非対称秘密分散プログラム。
the first concealment unit includes the generation unit and calculation unit according to claim 1, and generates the t shared values, and calculates n-t shared values from the t shared values and the first secret information, thereby concealing the true random numbers as the first secret information;
the second concealing unit generates t shares by using the true random number as a second key for generating pseudo-random numbers, and calculates n-t shares from the t shares and secret information;
The asymmetric secret sharing program according to claim 11.
 前記第1の秘匿部または第2の秘匿部は1つ以上の真正乱数を取得して鍵から生成した擬似乱数を秘匿することを特徴とする請求項11に記載の非対称秘密分散プログラム。 The asymmetric secret sharing program described in claim 11, characterized in that the first or second concealment unit obtains one or more true random numbers and conceals pseudo-random numbers generated from a key.  請求項1に記載のシステムにおける秘密情報復元装置のコンピュータを、
 第1の秘密情報を復元する第1の復元部、及び
 復元された前記第1の秘密情報を用いて請求項3~6の何れか1項に記載の第2の秘密情報を復元する第2の復元部
 として機能させるための秘密情報復元プログラム。
The computer of the secret information recovery device in the system according to claim 1 is
A secret information restoration program for causing a computer to function as: a first restoration unit that restores first secret information; and a second restoration unit that restores second secret information according to any one of claims 3 to 6 using the restored first secret information.
 nを2以上の整数、kを最小値が2で最大値がnの整数とし、1個の秘密情報をn個の分散値に分散し、そのうちk個の分散値を集めれば秘密情報を復元でき、k-1個以下では秘密情報を復元できないシステムにおける秘密情報復元装置のコンピュータを、
 請求項1、3~5の何れか1項に記載の鍵から生成したt個の分散値とn―t個の分散値を順に組み合わせを変えて復元する復元部として機能させるための秘密情報復元プログラム。
A computer of a secret information recovery device in a system in which n is an integer equal to or greater than 2, k is an integer having a minimum value of 2 and a maximum value of n, one piece of secret information is distributed into n distributed values, and the secret information can be recovered by collecting k of the distributed values, but the secret information cannot be recovered by collecting k-1 or fewer distributed values, is
A secret information recovery program for causing a recovery unit to function as a recovery unit that recovers secret information by sequentially changing the combination of t shares and n-t shares generated from the key according to any one of claims 1, 3 to 5.
 nを2以上の整数、kを最小値が2で最大値がnの整数とし、1個の秘密情報をn個の分散値に分散し、そのうちk個の分散値を集めれば秘密情報を復元でき、k-1個以下では秘密情報を復元できないシステムにおける非対称秘密分散装置のコンピュータを、
 鍵からt(<k)個の分散値を生成する生成部、及び
 計算された前記t個の分散値と秘密情報とからn―t個の分散値を計算する計算部
 として機能させるための非対称秘密分散プログラムであって、
 前記非対称秘密分散装置は、人的制御が不可能な自然現象を使用して真正乱数を生成する真正乱数生成部を更に備え、
 前記t個の分散値と前記n―t個の分散値との少なくとも一方は、前記真正乱数を更に用いて計算される、
 非対称秘密分散プログラム。
A computer of an asymmetric secret sharing device in a system in which n is an integer equal to or greater than 2, k is an integer having a minimum value of 2 and a maximum value of n, one piece of secret information is distributed into n distribution values, and the secret information can be restored by collecting k of the distribution values, but the secret information cannot be restored by collecting k-1 or fewer distribution values, is
an asymmetric secret sharing program for causing a generating unit to generate t (<k) shares from a key; and a calculating unit to calculate n-t shares from the calculated t shares and secret information, the program comprising:
The asymmetric secret sharing apparatus further comprises a true random number generation unit that generates true random numbers using natural phenomena that cannot be controlled by humans,
At least one of the t variance values and the n-t variance values is calculated further using the true random numbers.
Asymmetric secret sharing program.
PCT/JP2024/003782 2024-02-05 2024-02-05 Asymmetric secret sharing device, secret information recovery device, asymmetric secret sharing program, and secret information recovery program WO2025169283A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/JP2024/003782 WO2025169283A1 (en) 2024-02-05 2024-02-05 Asymmetric secret sharing device, secret information recovery device, asymmetric secret sharing program, and secret information recovery program
PCT/JP2024/037289 WO2025169543A1 (en) 2024-02-05 2024-10-19 Asymmetric secret sharing device and asymmetric secret sharing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2024/003782 WO2025169283A1 (en) 2024-02-05 2024-02-05 Asymmetric secret sharing device, secret information recovery device, asymmetric secret sharing program, and secret information recovery program

Publications (1)

Publication Number Publication Date
WO2025169283A1 true WO2025169283A1 (en) 2025-08-14

Family

ID=96699542

Family Applications (2)

Application Number Title Priority Date Filing Date
PCT/JP2024/003782 WO2025169283A1 (en) 2024-02-05 2024-02-05 Asymmetric secret sharing device, secret information recovery device, asymmetric secret sharing program, and secret information recovery program
PCT/JP2024/037289 WO2025169543A1 (en) 2024-02-05 2024-10-19 Asymmetric secret sharing device and asymmetric secret sharing program

Family Applications After (1)

Application Number Title Priority Date Filing Date
PCT/JP2024/037289 WO2025169543A1 (en) 2024-02-05 2024-10-19 Asymmetric secret sharing device and asymmetric secret sharing program

Country Status (1)

Country Link
WO (2) WO2025169283A1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017040851A (en) * 2015-08-21 2017-02-23 富士フイルム株式会社 Secret sharing device, data restoring device, secret sharing method, data restoring method, and control program thereof
JP2018110442A (en) * 2018-02-21 2018-07-12 株式会社ZenmuTech Access management system, access management method, and program
US20180241548A1 (en) * 2015-02-25 2018-08-23 Secret Double Octopus Ltd Method and system for authenticating and preserving the integrity of communication, secured by secret sharing
JP2020046558A (en) * 2018-09-19 2020-03-26 学校法人東京理科大学 Generation device, restoration device, transmission device, reception device, generation program, restoration program, transmission program, and reception program

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180241548A1 (en) * 2015-02-25 2018-08-23 Secret Double Octopus Ltd Method and system for authenticating and preserving the integrity of communication, secured by secret sharing
JP2017040851A (en) * 2015-08-21 2017-02-23 富士フイルム株式会社 Secret sharing device, data restoring device, secret sharing method, data restoring method, and control program thereof
JP2018110442A (en) * 2018-02-21 2018-07-12 株式会社ZenmuTech Access management system, access management method, and program
JP2020046558A (en) * 2018-09-19 2020-03-26 学校法人東京理科大学 Generation device, restoration device, transmission device, reception device, generation program, restoration program, transmission program, and reception program

Also Published As

Publication number Publication date
WO2025169543A1 (en) 2025-08-14

Similar Documents

Publication Publication Date Title
US11991275B2 (en) System and method for quantum-safe authentication, encryption and decryption of information
Bonawitz et al. Practical secure aggregation for privacy-preserving machine learning
US12367198B2 (en) Updatable private set intersection
TWI821248B (en) Computer implemented method and system for transferring control of a digital asset
CN109728906B (en) Anti-quantum-computation asymmetric encryption method and system based on asymmetric key pool
TWI813616B (en) Computer implemented method and system for obtaining digitally signed data
CN109921905B (en) Anti-quantum computation key negotiation method and system based on private key pool
US20140233731A1 (en) Device and Method for Generating Keys with Enhanced Security for Fully Homomorphic Encryption Algorithm
CN109905229B (en) Anti-quantum computing Elgamal encryption and decryption method and system based on group asymmetric key pool
EP3010173B1 (en) Key storage device, key storage method, and program therefor
CN112380404B (en) Data filtering method, device and system
CN114095157B (en) Key management method, key management device, computer equipment and readable storage medium
US11811741B2 (en) Information processing system and information processing method
WO2025169283A1 (en) Asymmetric secret sharing device, secret information recovery device, asymmetric secret sharing program, and secret information recovery program
CN110572788B (en) Wireless sensor communication method and system based on asymmetric key pool and implicit certificate
CN115643013B (en) Key slicing method and device, storage medium and electronic device
CN115442103B (en) Method, system, equipment and storage medium for resisting poisoning attack in group learning
CN110572256A (en) Anti-quantum computation asymmetric key management method and system based on asymmetric key pool and implicit certificate
Misra et al. On post quantum wireless communication security
CN116471051B (en) A secure multi-party data sorting method based on oblivious transfer protocol
Schillinger et al. Recovering Private User Storages in Online Social Networks
Patel et al. Fully dynamic password protected secret sharing: Simplifying ppss operation and maintenance
Chakraborty et al. Hybrid PUF: a novel way to enhance the security of classical PUFs
WO2025094498A1 (en) Secret sharing device, assistance device, user device, secret sharing program, assistance program, and user device program
TW202529421A (en) secret distribution device, support device, user device, sender device, receiver device, verification request device, verifier device, sending device, secret distribution program, support program, user device program, sender program, receiver program, verification request program, verifier program, sending program
点击 这是indexloc提供的php浏览器服务,不要输入任何密码和下载