WO2022039095A1 - 復元端末、通信システム、復元方法、通信方法、及びプログラム - Google Patents

復元端末、通信システム、復元方法、通信方法、及びプログラム Download PDF

Info

Publication number
WO2022039095A1
WO2022039095A1 PCT/JP2021/029692 JP2021029692W WO2022039095A1 WO 2022039095 A1 WO2022039095 A1 WO 2022039095A1 JP 2021029692 W JP2021029692 W JP 2021029692W WO 2022039095 A1 WO2022039095 A1 WO 2022039095A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
piece
acquired
data piece
terminal
Prior art date
Application number
PCT/JP2021/029692
Other languages
English (en)
French (fr)
Inventor
重明 白水
Original Assignee
株式会社Gdi
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 株式会社Gdi filed Critical 株式会社Gdi
Priority to JP2022522008A priority Critical patent/JP7126303B2/ja
Publication of WO2022039095A1 publication Critical patent/WO2022039095A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system

Definitions

  • the communication terminal (node) 2-m is a CPU (Central Processing Unit) having an IP (Internet Protocol) communication function such as a general-purpose personal computer, a general-purpose server computer, a tablet computer, a smartphone, and a digital home electric appliance. It consists of equipped smart devices and the like.
  • CPU Central Processing Unit
  • IP Internet Protocol
  • the network N includes a private network N1 and a public network N2.
  • the private network N1 can be accessed from the distributed node 2-1, the restore node 2-2, and the related parties 2-3 to 2-5, but cannot be accessed from the outsider nodes 2-6 to 2-8. ..
  • the public network N2 can be accessed from all communication terminals 2-m including outsider nodes 2-6 to 2-8.
  • control unit 23-1 has the HASH code h generated in step S301, the slice unit (bit unit, Hex unit, byte unit, etc.) D used for equal length division, and the i-th first bit character string S i .
  • the first bit character string Si is concatenated with these, and each cyclic redundancy check code (CRC) is calculated.
  • CRC cyclic redundancy check code
  • control unit 23-1 executes a reversible calculation on the pair of the first bit character strings S i according to the mathematical formula shown in the following equation 3 to generate the second bit character string V ljk (step S307). ).
  • the reversible calculation is a process that satisfies the mathematical formula shown in the following equation 4, for example, logical exclusive sum (XOR).
  • control unit 23-1 finally concatenates the CRC 2jk according to the mathematical formula shown in the following equation 5 to generate a secondary dispersion piece (second data piece) Q 2jk (step S309).
  • the values of i and n are not uniquely determined, but if the primary dispersion piece P 1i is acquired, the original data is obtained from the total i primary dispersion pieces P 1i or the secondary dispersion piece Q 2jk . Can be restored and decided. On the other hand, if the primary dispersion piece P 1i cannot be acquired, the original data cannot be restored / determined no matter how many secondary dispersion pieces Q 2jk are collected, let alone i.
  • the primary dispersion piece P1i is used for the related party nodes 2-3 to 2-5 that can be trusted, and the secondary dispersion piece Q 2jk is used for the other unspecified number of outsider nodes 2-6 to 2-8. Distribute. That is, by intentionally selecting the distribution piece to be distributed by the node 2-m of the distribution partner, redundancy can be enhanced without sacrificing security.
  • control unit 23-1 attaches the primary dispersion piece P 11 to the related party node 2-3, the primary dispersion piece P 12 to the related party node 2-4, and the primary dispersion piece P 13 to the related party node 2-.
  • FIG. 4 is a flowchart showing the details of the data restoration process according to the first embodiment.
  • the control unit 23-2 lists the tags T for recognizing that the primary dispersion piece P1i is the i-th primary dispersion piece P1i.
  • the secret distribution ID HASH code h is used as a keyword according to the formula shown in Equation 7 below, and the outside is performed via the public network N2. Collect (acquire) the shortage number of secondary dispersion pieces Q 2jk from the person nodes 2-6 to 2-8 (step S403).
  • control unit 23-2 extracts a header from each secondary dispersion piece Q 2jk and inspects the CRC 2jk to confirm that a sound secondary dispersion piece Q 2jk is in hand (step S404). ). Specifically, the control unit 23-2 recognizes that it is the second bit character string V 2jk generated from the jth first bit character string S j and the kth first bit character string Sk. Check the tag U for and perform a missing sequence check.
  • control unit 23-2 extracts the first bit character string S i from the second distribution piece Q 2jk from the second bit character string V 2ik or V 2ji. Restore (step S405). Specifically, the control unit 23-2 restores the missing first bit character string S i by the mathematical formula shown in the following equation 8.
  • control unit 23-2 obtains an obfuscated compressed bit character string S by arranging and concatenating the first bit character strings S i in the order of the serial number i according to the mathematical formula shown in the following equation 9 (step S406).
  • control unit 23-2 performs the same inspection of the HASH value h, which is the secret sharing ID, and the HASH value h'generated in step S409 (step S410), and if they are the same, this is the original data X. End the data recovery process as a correct restore of.
  • Consistency inspection processing can be broadly divided into two levels: simple inspection (quick test) processing and content inspection (deep test) processing.
  • FIG. 5 is a flowchart showing the details of the simple inspection process.
  • control unit 23-2 of the restore node 2-2 first, according to the mathematical formula shown in the following equation 10, via the private network N1 to the related party nodes 2-3 to Collect the primary dispersion piece P1i from 2-5 (step S501).
  • control unit 23-2 extracts a header from each primary dispersion piece P 1i and inspects the CRC i , and n (“3” in this embodiment) of sound primary dispersion pieces P 1i are at hand. Confirm that (step S502).
  • n (“3” in this embodiment) of sound primary dispersion pieces P1i are prepared by the control unit 23-2 (step S502; Yes)
  • this data set is set to X1 and the simple inspection is passed. (Step S505), the simple inspection process is terminated.
  • control unit 23-2 uses the HASH code h, which is a secret distribution ID, as a keyword according to the formula shown in Equation 11 below.
  • HASH code h which is a secret distribution ID, as a keyword according to the formula shown in Equation 11 below.
  • a shortage of secondary dispersion pieces Q 2jk are collected from outsider nodes 2-6 to 2-8 via the public network N2 (step S503).
  • control unit 23-2 extracts a header from each secondary dispersion piece Q 2jk and inspects the CRC 2jk , and the number of sound secondary dispersion pieces Q 2jk at hand is collected in step S503. It is confirmed whether it matches the total number of the secondary dispersion pieces Q 2jk , that is, whether the shortage number of secondary dispersion pieces Q 2jk collected in step S503 are all sound (step S504).
  • step S504 If the control unit 23-2 matches, that is, if the shortage number of secondary dispersion pieces Q 2jk collected in step S503 are all sound (step S504; Yes), the simple inspection is passed (step S505). If they do not match (step S504; No), the simple inspection fails because the original data may be corrupted (step S506), and then the simple inspection process ends.
  • FIG. 6 is a flowchart showing the details of the content inspection process.
  • control unit 23-2 of the restore node 2-2 first, according to the mathematical formula shown in the above equation 2, the related party nodes 2-3 to the related parties via the private network N1. Collect the primary dispersion piece P1i from 2-5 (step S601).
  • control unit 23-2 extracts a header from each primary dispersion piece P 1i and inspects the CRC i , and n (“3” in this embodiment) of sound primary dispersion pieces P 1i are at hand. Confirm that (step S602).
  • step S603 When all n (“3” in this embodiment) of sound primary dispersion pieces P1i are prepared, the control unit 23-2 undergoes the same processing as in steps S406 to S409 shown in FIG. 4 (step S603). ), The HASH value h, which is a secret sharing ID, and the HASH value h'generated in step S409 are subjected to the same inspection (step S604), and if they are the same (step S605; Yes), this is used as the original data X. After the restoration is correct (step S606), the content inspection process is terminated.
  • step S605 If the control units 23-2 are not the same (step S605; No), the outsider nodes 2-6 to 2-8 via the public network N2 with the HASH code h, which is a secret sharing ID, as a keyword.
  • the number of secondary dispersion pieces Q 2jk remaining from the above is collected (step S607).
  • control unit 23-2 extracts the first bit character string S i in the primary dispersion piece P 1i at hand used when generating the data set X 1 and the second distribution piece Q 2jk .
  • the first bit character string S'k or S'j is restored from the bit character string V 2ik or V 2ji (step S608).
  • the control unit 23-2 performs the same processing as in step S608 for the remaining secondary dispersion piece Q 2jk , and from the second bit character string V 2ik or V 2ji , the first bit character string S " k or S. "Restore j .
  • control unit 23-2 returns to step S604, performs the same inspection of the HASH value h which is the secret sharing ID and the HASH value h generated in step S612, and if they are the same (step S605). ; Yes), this is regarded as the correct restoration of the original data X (step S606), and then the content inspection process is terminated.
  • the secret sharing system (communication system) 1 has a distributed node (distributed terminal) 2-1 connected to a plurality of communication terminals 2-m via a network N and a restoration node. (Restoration terminal) 2-2 and.
  • the distribution node 2-1 (control unit 23-1) divides the original data to generate a plurality of (“3” in this embodiment) primary distribution piece (first data piece) P1i . Specifically, the distributed node 2-1 obfuscates the original data and then divides the data to generate a plurality of primary distributed pieces P1i .
  • the distribution node 2-1 generates a secondary dispersion piece (second data piece) Q 2jk from two primary dispersion pieces P 1i out of a plurality of primary dispersion pieces P 1i .
  • the distribution node 2-1 generates the secondary distribution piece Q 2jk by obtaining the exclusive OR of the two primary distribution pieces P 1i .
  • the distributed node 2-1 transmits a plurality of primary distributed pieces P 1i and a secondary distributed piece Q 2jk to different communication terminals 2-m via the network N and distributes them. Specifically, the distributed node 2-1 transmits a plurality of primary distributed pieces P1i to the communication terminals (related party nodes) 2-3 to 2-5 of the related parties who are permitted to know the contents of the original data. Then, the secondary dispersion piece Q 2jk is transmitted to the communication terminal (outsider node) 2-3 to 2-5 of an outsider who is not permitted to know the contents of the original data.
  • the distributed node 2-1 is connected to the related nodes 2-3 to 2-5 via the private network N1 which is inaccessible from the outsider nodes 2-6 to 2-8 in the network N. It is connected.
  • the restore node 2-2 is connected to the network N (specifically, "private network N1") from the communication terminals (related parties) 2-3 to 2-5 holding any of the plurality of primary distributed pieces P1i . ”) To acquire the primary dispersion piece P1i .
  • the restoration node 2-2 is transmitted from the communication terminal (outsider node) 2-6 to 2-8 holding the secondary dispersion piece Q 2jk via the network N (specifically, "public network N2"). Obtain the secondary dispersion piece Q 2jk .
  • the restore node 2-2 may acquire the secondary dispersion piece Q 2jk by the number of the primary dispersion pieces P1i that could not be acquired. For example, if the restore node 2-2 can acquire only one of the three primary dispersion pieces P1i, it may acquire two secondary dispersion pieces Q 2jk .
  • the restore node 2-2 restores the primary dispersion piece P 1i other than the acquired primary dispersion piece P 1i from the acquired primary dispersion piece P 1i and the acquired secondary dispersion piece Q 2jk . Specifically, the restore node 2-2 obtains the exclusive OR of the acquired primary dispersion piece P 1i and the acquired secondary distribution piece Q 2jk , so that the primary distribution piece P 1i other than the acquired primary dispersion piece P 1i is obtained. Restore the dispersion piece P 1i .
  • the restore node 2-2 restores the original data from the acquired primary dispersion piece P 1i and the restored primary dispersion piece P 1i .
  • the notarable secret sharing system 1 is concealed by "making it difficult to obtain an appropriate data set" rather than “making decryption difficult” which is a characteristic of secret sharing. Ensuring sex. Furthermore, since the data section of the secret share is divided and distributed separately into the primary dispersion piece P1i required for restoration and the higher-order dispersion piece of the second order or higher which is not sufficient for reconstructing the contents, 1) the parties decipher it. Yes, but 2) it is difficult for others to decipher.
  • the innovation brought about by the secret sharing system 1 according to the present embodiment is to make the primary distribution piece (visible witness) P1i containing the information to be kept secret (secret information) and the redundancy for restoration not including the secret information.
  • a secondary dispersion piece (invisible witness) Q 2jk is intentionally generated.
  • FIG. 7 is an explanatory diagram of secret sharing according to the first embodiment.
  • the primary data is divided into a total of 6 pieces, that is, 3 primary dispersion pieces P 1i and 3 secondary distribution pieces Q 2jk .
  • the secret sharing system 1 has a threshold value of the related party nodes 2-3 to 2-5 that need to know the contents of the secret information and an outsider nodes 2-6 to 2 that do not need to know the contents of the secret information. Since a threshold value for -8 can be specified, a high degree of security can be realized while dramatically increasing availability. [Embodiment 2]
  • the secret sharing system 1 is an environment in which communication is established via many communication terminals (nodes) 2-m such as a 5th generation mobile communication system (5G), mainly IoT. It is premised on application in (Internet of Things) and smart contracts. Therefore, the distributed pieces are distributed to the communication terminals (nodes) 2-m on the public network N2 like the Internet.
  • the primary dispersion piece (primary piece) and the secondary dispersion piece (verification piece or secondary piece) are treated separately.
  • the control unit 23-1 of the distribution node 2-1 divides the secret information s into equal lengths according to the mathematical formula shown in the following equation 12 to generate a primary distribution piece (primary piece) s i (i is a variable). , Perform a reversible calculation on the pair of primary dispersion pieces s i to generate a secondary dispersion piece (secondary piece) pij (i and j are variables).
  • FIG. 8 is a flowchart showing the details of the data distribution process according to the second embodiment.
  • control unit 23-1 of the distribution node 2-1 generates the HASH of the original file, and uses this as the header of the identification tag of the original file (step S801).
  • control unit 23-1 compresses the HASH of the original file before dividing it (step S802). By compressing, the distributed pieces of the original file that are simply divided are obfuscated.
  • control unit 23-1 divides the HASH of the compressed original file into three or more equally (step S803).
  • control unit 23-1 adjusts by adding a NULL symbol to the original file so that it can be divided into integers evenly (step S804).
  • control unit 23-1 uses the equally divided dispersed pieces as the primary distributed piece (primary piece) si , and adds a serial number to the identification tag (step S805).
  • control unit 23-1 performs a reversible operation (for example, exclusive OR: XOR) on the primary dispersion pieces (primary piece) s i that are different from each other to obtain the secondary dispersion piece (secondary piece) pij .
  • a reversible operation for example, exclusive OR: XOR
  • the control unit 23-1 performs a reversible operation (for example, exclusive OR: XOR) on the primary dispersion pieces (primary piece) s i that are different from each other to obtain the secondary dispersion piece (secondary piece) pij .
  • a reversible operation for example, exclusive OR: XOR
  • control unit 23-1 distributes the primary distributed piece (primary piece) si to the related party nodes 2-3 to 2-5 that can decipher the secret information s, and the outsider who has difficulty in deciphering the secret information s.
  • the secondary dispersion piece (secondary piece) information is distributed to the nodes 2-6 to 2-8, and the data restoration process is completed from the distribution (step S807 ).
  • FIG. 9 is a flowchart showing the details of the data restoration process according to the second embodiment.
  • control unit 23-2 of the restoration node 2-2 obtains the HASH from the identification tag of the original file, or obtains the HASH from the identification tag of the primary dispersion piece (primary piece) si .
  • Obtain HASH (step S901).
  • control unit 23-2 collects the primary dispersion piece (primary piece) si based on the HASH of the identification tag (step S902).
  • the control unit 23-2 cannot be reconstructed if no primary dispersion piece (primary piece) si is available.
  • control unit 23-2 collects the secondary dispersion piece (secondary piece) pij based on HASH (step S903). ..
  • control unit 23-2 applies the reverse of the reversible calculation to the primary dispersion piece (primary piece) and the secondary dispersion piece (secondary piece) pij at hand, and the primary cannot be obtained (collected).
  • a dispersion piece (primary piece) s i is constructed (restored) (step S904).
  • control unit 23-2 discards the identification tag based on the identification tag of the collected primary dispersion piece (primary piece) s i when the primary dispersion piece (primary piece) s i is prepared. Above, these are concatenated and the original file is reconstructed (restored) as a compressed file (step S905).
  • control unit 23-2 decompresses the compressed file and obtains (restores) the original file (step S906).
  • control unit 23-2 compares the HASH value of the original file obtained here with the HASH value written in the identification tag, and confirms that there is no error (same inspection) (step). S907), the data restoration process is terminated.
  • the Internet protocol is peer-to-peer communication, and guarantees the consistency of communication from the start point to the end point of the communication terminal 2-m constituting the peer-to-peer (P2P) type network. Therefore, from the communication terminal 2-m (in the present embodiment, "distributed node 2-1") as the starting point to the communication terminal 2-m ("restoration node 2-2" in the present embodiment) as the ending point.
  • the file to be transferred is defined as "moving data”.
  • data shared by a plurality of communication terminals 2-m (hereinafter referred to as "participating nodes") is defined as "static data".
  • the "moving data" is a file transferred from the distributed node 2-1 as the starting point to the restoration node 2-2 as the ending point.
  • the distributed node 2-1 that is the starting point owns the original file, it knows the contents, but the restoration node 2-2 that is the ending point is unaware about the contents related to this file.
  • the restore node 2-2 In order to safely transfer the file to the restore node 2-2, which is the end point, either transfer one of the primary pieces (primary piece) si of the file directly, or save it on another medium and physically transfer it. Forward.
  • the distribution node 2-1 that is the starting point defines the participating nodes including the restoration node 2-2 that is the ending point with the HASH value as the recognition number in a graph, and the secondary distribution piece (secondary piece) pij is the participating node. It will be distributed in a distributed manner.
  • the restoration node 2-2 which is the end point, obtains knowledge of the HASH value of the original file from the identification tag of this primary dispersion piece (primary piece) si . Since the restoration node 2-2, which is the end point, is a participating node of the graph using this HASH value as a recognition number, it is possible to collect the secondary dispersion piece (secondary piece) pij .
  • the restore node 2-2 which is the end point, is all the primary dispersion pieces (primary) from the reversible operation of one primary dispersion piece (primary piece) s i and the secondary distribution piece (secondary piece) pij received directly. -Peace) s i can be reproduced. Even if the participating nodes of the graph to which only the secondary dispersion piece (secondary piece) pij is distributed with the HASH value as the recognition number are accessed, the information necessary for reproduction is not collected.
  • Static data is not a concept such as a start point or an end point, but a communication terminal 2-m (in this embodiment, "outsider nodes 2-6 to 2-8") that shares a target file exists. do.
  • the HASH value of the original data is generated and exchanged to confirm the identity.
  • the number of divisions is determined by the number of outsider nodes 2-6 to 2-8 (or at least 3) and shared.
  • the distributed mode 2-1 defines the participating nodes including the outsider nodes 2-6 to 2-8 that share the HASH value as the recognition number in a graph, and the secondary distributed piece (secondary piece) pij . Is distributed to the participating nodes.
  • the restoration node 2-2 which is the end point, obtains knowledge of the HASH value of the original file from the identification tag of this primary dispersion piece (primary piece) si . Since the restoration node 2-2, which is the end point, is a participating node of the graph using this HASH value as a recognition number, it is possible to collect the secondary dispersion piece (secondary piece) pij .
  • the restore node 2-2 which is the end point, is a total primary dispersion piece (primary piece) from the reversible operation of one primary dispersion piece (primary piece) s i and the secondary distribution piece (secondary piece) pij received directly. Piece) s i can be restored, but even if the participating node of the graph using the HASH value as the identification number is accessed, the information necessary for restoration is not collected.
  • FIG. 10 is an explanatory diagram of transporting the dispersed pieces according to the second embodiment.
  • the distributed node 2-1 is a primary distributed piece (primary piece) si to a known secure route (private network N1) drawn in black like HYDRA0 invented by the applicant. Is striped and transported at high speed.
  • the distributed node 2-1 carries a secondary distributed piece (secondary piece) pij by a route (public network N2) whose safety has not been confirmed, which is drawn by a net line. If the resources of the known secure route (private network) N1 are insufficient, only one of the three primary pieces (primary piece) s i can be transported without performing the other transports. If at least two systems can be established on the route (public network N2) for which high-speed transportation can be safely performed and safety has not been confirmed, the third system can be decoded as redundant data.
  • the communication network widely used today is the Internet, and although it is possible to divide the wide area network into the outside area with the local area network inside, there is no correlation with the concept of security. That is, the person with whom you communicate using the Internet Protocol is not secure. It may be a spoofed terminal, or it may have been intercepted when relaying packets. Do not trust any terminal, and guarantee the security of communication on the premise that you cannot trust it. This is called zero trust communication.
  • the secret sharing system 1 realizes zero trust communication on the Internet and innovates the way of thinking about security.
  • the distribution node 2-1 distributes the original data X into a primary dispersion piece f n obtained by obfuscation and a secondary dispersion piece P ij generated from the primary dispersion piece f n . If the primary dispersion piece fn and the secondary dispersion piece Pij are distributed to routes via different communication terminals 2- m , the original data X is transmitted to the communication terminals 2-m existing on these routes. Communication can be realized without being exposed.
  • the method for safely executing file transfer on the premise of zero trust described above is distributed on the network N between the two points of the communication terminal 2-m of the source of the original data F and the communication terminal 2-m of the reception destination. If all the packets to be processed can be collected and analyzed, the original data F can be reconstructed.
  • the distribution node 2-1 compresses and obfuscates the original data F to generate a bit character string f, and then divides the original data F into n equal parts to generate a primary distribution piece f n .
  • the distribution node 2-1 generates a secondary distribution piece Pij from this primary distribution piece f n by using a reversible calculation such as exclusive OR.
  • the primary dispersion piece f n is circularly referenced, and the presented primary dispersion piece f n is the primary dispersion piece f n generated from the original data X. It confirms that it is, but it does not determine the original primary dispersion f n .
  • At least one primary variance piece fn is required to determine the original data X.
  • the member has a member file consisting of a random number sequence or the like in advance.
  • FIG. 11 is an explanatory diagram of secret sharing according to the third embodiment.
  • the distributed node 2-1 compresses and obfuscates the original data file F, which is the original data to be shared among the members, and then divides it into two equal parts.
  • the distribution node 2-1 sets these as the primary distribution pieces f 1 and f 2 , and creates a primary distribution piece m in which the member file M is cut off with the same data size as the primary distribution pieces f 1 and f 2 from the beginning.
  • the distribution node 2-1 generates and distributes the secondary dispersion pieces P 2 , P 4 , and P 5 from these primary dispersion pieces f 1 , f 2 , and m according to the mathematical formula shown in the following equation 14.
  • the distributed pieces exposed and distributed on the network N above are the original. There are ten copies to confirm the authenticity of the distribution piece of the original data file F which is the data, but the member file M is required to reconstruct the distribution piece of the original data file F which is the original data X. , Secure communication can be realized by exchanging incomplete data.
  • the control unit 23-1 of the distribution node 2-1 uses the third-order or higher-order dispersion piece as the second-order or higher-order dispersion piece to generate a higher-order dispersion piece across orders. You may do it. Further, by explicitly distinguishing them, it may be possible to prove the contents without restoring.
  • the program executed by the CPU of the control unit 23-m is stored in ROM or the like in advance.
  • the present invention is not limited to this, and by applying a program for executing the above-mentioned processing to an existing general-purpose computer, the present invention can function as a communication terminal (node) 2-m according to the above-described embodiment. You may.
  • the method of providing such a program is arbitrary, and may be stored and distributed on a computer-readable recording medium (flexible disc, CD (Compact Disc) -ROM, DVD (Digital Versatile Disc) -ROM, etc.), for example.
  • a computer-readable recording medium flexible disc, CD (Compact Disc) -ROM, DVD (Digital Versatile Disc) -ROM, etc.
  • the program may be stored in a storage on a network such as the Internet and provided by downloading the program.
  • the above processing when executed by the division between the OS and the application program or the cooperation between the OS and the application program, only the application program may be stored in the recording medium or the storage. It is also possible to superimpose a program on a carrier wave and distribute it via a network. For example, the above program may be posted on a bulletin board system (BBS: Bulletin Board System) on the network, and the program may be distributed via the network. Then, by starting this program and executing it in the same manner as other application programs under the control of the OS, the above processing may be executed.
  • BSS Bulletin Board System

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

セキュリティを向上させる。 復元端末2-2は、複数の通信端末2-mにネットワークNを介して接続されている。復元端末2-2は、元データを分割して得られる複数の一次分散片P1iのうちのいずれかを保持する関係者ノード2-3~2-5からネットワークNを介して一次分散片P1iを取得する。また、復元端末2-2は、複数の一次分散片P1iのうちの二つの一次分散片P1iから生成される二次分散片Q2jkを保持する部外者ノード2-6~2-8からネットワークNを介して二次分散片Q2jkを取得する。続いて、復元端末2-2は、取得した一次分散片P1iと、取得した二次分散片Q2jkと、から取得した一次分散片P1i以外の一次分散片P1iを復元する。そして、復元端末2-2は、取得した一次分散片P1iと、復元した一次分散片P1iと、から元データを復元する。

Description

復元端末、通信システム、復元方法、通信方法、及びプログラム
 本発明は、復元端末、通信システム、復元方法、通信方法、及びプログラムに関し、特に、セキュリティを向上可能な復元端末、通信システム、復元方法、通信方法、及びプログラムに関する。
 従来の暗号技術は、元データのエントロピーを高めることで復号を困難にする。算出されたエントロピーを暗号の強度としている。これは、楕円関数の極大極小問題に帰依するため、境界条件の設定が可能ならば、組み合わせ問題への高い計算能力を用いる(量子コンピュータなど)ことで、容易に解読できることが予想されている。
 これとは別に、秘密分散は一つの元の情報を二つ以上に分割し、またそれらを集めることで元の情報を復元する。
 現実の割符は、元の情報自体は既知であり、割符を集めた時に既知の情報が得られたことを確認する相互認証に用いられるが、電子割符では、複数人の協力によってのみ得られる秘密情報の隠蔽に用いられる。
 電子割符の中でも秘密分散方式は、現実の割符では不可能な、例えば、6断片に分けた電子割符の内のどれでも3断片以上が集まれば秘密情報を得られる等の閾値(この例では3)を指定するなどの高い可用性を持つ。
 既存の秘密分散の仕組みは、暗号技術の一種ではあるが、一般の暗号(秘匿通信)とは異なった利用法を前提としていることから暗号として単純に評価することができない。
 秘密分散法は、公開されたネットワークを媒体とすることを前提として、応用を評価しなければならない。
 秘密共有スキームは、ブラクリー[Bla79]とシャミール[Sha79]とによって独立して発見された。これらの方式に共通する秘密共有の契機は、セキュリティで保護された鍵の管理にある。通常、機密性の高い多くのファイルへのアクセスを提供する秘密鍵が1つある。このような鍵が失われた場合 (たとえば、鍵を知っているユーザーが使用できなくなったり、鍵を格納するコンピュータが破棄されたりした場合)、すべての重要なファイルにアクセスできなくなる。
 図12は、従来の秘密分散の説明図である。
 従来の秘密共有の基本的な考え方は、このような状態に対処することが動機として存在するため、図12に示すように、秘密鍵を分割し、グループ内の特定のサブセットが集まって鍵を回復できるように、グループ内の異なる人物に分割データを配布することである(例えば特許文献1参照)。なお、本明細書中に特許文献1の明細書、特許請求の範囲、図面全体を参考として取り込むものとする。
特開平09-205422号公報
 保存や通信において対象となるデータを秘密分散することで、保存や通信に強靭性をもたらす。強靭性を向上させるためには、分割数を増やして必要条件となる閾値を下げ、分割されたデータ切片を多数の拠点に分配する。しかし、分割されたデータ切片を不特定多数の拠点に十分な数をもって分配すると、不特定多数によって元データを復元することが可能になり、秘匿性が犠牲となる。実用においては、分割数を増大(強靭性)させながら、閾値を高くして秘匿性を向上させる。これは、妥協点を見出すための綱渡りであり、明示的な安全性の確保ではない。元データを知る必要がある拠点(データ共有者管理下)と知る必要のない拠点(強靭性の担保)とを明示的に区別して分割数と閾値の依存性を切り離すことが必要とされている。
 本発明は、上記の課題を解決するためになされたものであって、セキュリティを向上可能な復元端末、通信システム、復元方法、通信方法、及びプログラムを提供することを目的とする。
 上記の目的を達成するため、本発明の第1の観点に係る復元端末(2-2)は、複数の通信端末(2-m)にネットワーク(N)を介して接続された復元端末(2-2)であって、元データを分割して得られる複数の第1データ片のうちのいずれかを保持する前記通信端末(2-3~2-5)から前記ネットワーク(N)を介して該第1データ片を取得し、前記複数の第1データ片のうちの二つの該第1データ片から生成される第2データ片を保持する前記通信端末(2-6~2-8)から前記ネットワーク(N)を介して該第2データ片を取得し、前記取得した第1データ片と、前記取得した第2データ片と、から該取得した第1データ片以外の第1データ片を復元し、前記取得した第1データ片と、前記復元した第1データ片と、から前記元データを復元する。
 上記の復元端末(2-2)において、前記複数の第1データ片を全て取得できなかった場合、前記第2データ片を、該取得できなかった該第1データ片の数、取得する、ものであってもよい。
 上記の復元端末(2-2)において、前記第2データ片は、前記二つの第1データ片の排他的論理和を求めることにより生成され、前記取得した第1データ片以外の第1データ片は、前記取得した第1データ片と、前記取得した第2データ片と、の排他的論理和を求めることにより復元される、ものであってもよい。
 上記の復元端末(2-2)において、前記複数の第1データ片は、前記元データを難読化してから分割することにより生成される、ものであってもよい。
 上記の復元端末(2-2)において、前記第1データ片を保持する前記通信端末(2-3~2-5)とは、前記ネットワーク(N)のうち、前記第2データ片を保持する前記通信端末(2-6~2-8)からはアクセス不能なプライベートネットワーク(N1)を介して接続されている、ものであってもよい。
 本発明の第2の観点に係る通信システム(1)は、複数の通信端末(2-m)にネットワーク(N)を介して接続された分散端末(2-1)と、復元端末(2-2)と、を具備する通信システム(1)であって、前記分散端末(2-1)は、元データを分割して複数の第1データ片を生成し、前記複数の第1データ片のうちの二つの該第1データ片から第2データ片を生成し、前記複数の第1データ片と、前記第2データ片と、を前記ネットワーク(N)を介して、それぞれ異なる前記通信端末(2-m)に送信して分散し、前記復元端末(2-2)は、前記複数の第1データ片のうちのいずれかを保持する前記通信端末(2-3~2-5)から前記ネットワーク(N)を介して該第1データ片を取得し、前記第2データ片を保持する前記通信端末(2-6~2-8)から前記ネットワーク(N)を介して該第2データ片を取得し、前記取得した第1データ片と、前記取得した第2データ片と、から該取得した第1データ片以外の第1データ片を復元し、前記取得した第1データ片と、前記復元した第1データ片と、から前記元データを復元する。
 上記の通信システム(1)において、前記復元端末(2-2)は、前記複数の第1データ片を全て取得できなかった場合、前記第2データ片を、該取得できなかった該第1データ片の数、取得する、ようにしてもよい。
 上記の通信システム(1)において、前記分散端末(2-1)は、前記二つの第1データ片の排他的論理和を求めることにより、前記第2データ片を生成し、前記復元端末(2-2)は、前記取得した第1データ片と、前記取得した第2データ片と、の排他的論理和を求めることにより、前記取得した第1データ片以外の第1データ片を復元する、ようにしてもよい。
 上記の通信システム(1)において、前記分散端末(2-1)は、前記元データを難読化してから分割することにより、前記複数の第1データ片を生成する、ようにしてもよい。
 上記の通信システム(1)において、前記分散端末(2-1)は、前記複数の第1データ片を、前記元データの内容を知ることが許可された関係者の前記通信端末(2-3~2-5)に送信し、前記第2データ片を、該元データの内容を知ることが許可されていない部外者の該通信端末(2-3~2-5)に送信する、ようにしてもよい。
 上記の通信システム(1)において、前記関係者の通信端末(2-3~2-5)とは、前記ネットワーク(N)のうち、前記部外者の通信端末(2-6~2-8)からはアクセス不能なプライベートネットワーク(N1)を介して接続されている、ようにしてもよい。
 本発明の第3の観点に係る復元方法は、複数の通信端末(2-m)にネットワーク(N)を介して接続された復元端末(2-2)による復元方法であって、元データを分割して得られる複数の第1データ片のうちのいずれかを保持する前記通信端末(2-3~2-5)から前記ネットワーク(N)を介して該第1データ片を取得し、前記複数の第1データ片のうちの二つの該第1データ片から生成される第2データ片を保持する前記通信端末(2-6~2-8)から前記ネットワーク(N)を介して該第2データ片を取得し、前記取得した第1データ片と、前記取得した第2データ片と、から該取得した第1データ片以外の第1データ片を復元し、前記取得した第1データ片と、前記復元した第1データ片と、から前記元データを復元する。
 本発明の第4の観点に係る通信方法は、複数の通信端末(2-m)にネットワーク(N)を介して接続された分散端末(2-1)と、復元端末(2-2)と、を具備する通信システム(1)による通信方法であって、前記分散端末(2-1)が、元データを分割して複数の第1データ片を生成し、前記複数の第1データ片のうちの二つの該第1データ片から第2データ片を生成し、前記複数の第1データ片と、前記第2データ片と、を前記ネットワーク(N)を介して、それぞれ異なる前記通信端末(2-m)に送信して分散し、前記復元端末(2-2)が、前記複数の第1データ片のうちのいずれかを保持する前記通信端末(2-3~2-5)から前記ネットワーク(N)を介して該第1データ片を取得し、前記第2データ片を保持する前記通信端末(2-6~2-8)から前記ネットワーク(N)を介して該第2データ片を取得し、前記取得した第1データ片と、前記取得した第2データ片と、から該取得した第1データ片以外の第1データ片を復元し、前記取得した第1データ片と、前記復元した第1データ片と、から前記元データを復元する。
 上記の通信方法は、データの保管や伝送において、暗号方式ではなく割符方式を使用する際、秘密分散のスキームを使って分割したピースを、復元に必要条件となる第1データ片とこの第1データ片から可逆的に生成されたファイルのIntegrityのverifyや第2データ片とを明示的に区別して生成し、運用する、ようにしてもよい。
 上記の通信方法は、復元に必要条件となる第1データ片の生成において、いったん難読化したうえで、これを分割する、ようにしてもよい。
 上記の通信方法は、第1データ片から可逆的に生成された第2データ片のみを利用して、三次以上の高次のデータ片を生成する、ようにしてもよい。
 上記の通信方法は、三次以上の高次のデータ片を二次以上のデータ片を利用して、次数を跨いで高次のデータ片を生成する、ようにしてもよい。
 上記の通信方法は、明示的に区別することで、復元することなく、内容証明ができる、ようにしてもよい。
 本発明の第5の観点に係るプログラムは、複数の通信端末(2-m)にネットワーク(N)を介して接続された復元端末(2-2)のコンピュータに、元データを分割して得られる複数の第1データ片のうちのいずれかを保持する前記通信端末(2-3~2-5)から前記ネットワーク(N)を介して該第1データ片を取得する手順と、前記複数の第1データ片のうちの二つの該第1データ片から生成される第2データ片を保持する前記通信端末(2-6~2-8)から前記ネットワーク(N)を介して該第2データ片を取得する手順と、前記取得した第1データ片と、前記取得した第2データ片と、から該取得した第1データ片以外の第1データ片を復元する手順と、前記取得した第1データ片と、前記復元した第1データ片と、から前記元データを復元する手順と、を実行させる。
 本発明によれば、セキュリティを向上可能な復元端末、通信システム、復元方法、通信方法、及びプログラムを提供することができる。
秘密分散システムの構成例を示す図である。 通信端末の構成例を示すブロック図である。 実施形態1に係るデータ分散処理の詳細を示すフローチャートである。 実施形態1に係るデータ復元処理の詳細を示すフローチャートである。 簡易検査処理の詳細を示すフローチャートである。 内容検査処理の詳細を示すフローチャートである。 実施形態1に係る秘密分散の説明図である。 実施形態2に係るデータ分散処理の詳細を示すフローチャートである。 実施形態2に係るデータ復元処理の詳細を示すフローチャートである。 実施形態2に係る分散片の搬送の説明図である。 実施形態3に係る秘密分散の説明図である。 従来の秘密分散の説明図である。
 以下、本発明を実施するための形態について説明する。
[実施形態1]
 まず、本発明の実施形態1に係る秘密分散システムの構成について図面を参照しつつ説明する。
 図1は、秘密分散システムの構成例を示すブロック図である。
 図1に示すように、秘密分散システム1は、複数の通信端末2-m(mは自然数)を具備する。複数の通信端末2-mは、インターネット等のネットワークNを介して相互に通信可能に接続され、ノードと呼ばれる。複数の通信端末(ノード)2-mは、ピア・ツウ・ピア方式で通信を行い、ピア・ツウ・ピア(P2P)型ネットワークを構成する。
 通信端末(ノード)2-mは、例えば汎用のパーソナルコンピュータ、汎用のサーバコンピュータ、若しくはタブレットコンピュータ、スマートフォン、及びデジタル家庭電化製品等のIP(Internet Protocol)通信機能を持つCPU(Central Processing Unit)を備えたスマートデバイス等から構成される。
 図2は、通信端末(ノード)の構成例を示すブロック図である。
 図2に示すように、通信端末(ノード)2-mは、それぞれ、通信部21-mと、記憶部22-mと、制御部23-mと、を備え、これらはバス等を介して接続される。
 通信部21-mは、例えば無線通信装置等から構成される。通信部21-mは、他の通信端末(ノード)2-mとネットワークNを介したデータの送受信を行う。
 記憶部22-mは、例えば汎用のフラッシュメモリ等の不揮発性メモリ等から構成される。
 制御部23-mは、例えばCPU、ROM(Read Only Memory)、及びRAM(Random Access Memory)等から構成される。CPUは、RAMをワークメモリとして用い、ROM及び記憶部22に記憶されているプログラム等を適宜実行することによって、通信端末(ノード)2-mの各種動作を制御する。
 図1に示す秘密分散システム1は、鍵を秘密とするのではなく、共有もしくは伝送する秘密情報である任意のデータ(以下、「元データ」という)そのものを秘密として扱い、公開ネットワークN2上で分散を行う。一次の分割として任意の一次分散片(第1データ片)P1i(1≦i≦n(本実施形態ではn=3))は、単独では意味を持たない。
 本実施形態において、通信端末(ノード)2-mには、元データから分散片を生成する通信端末(以下、「分散ノード(分散端末)」という。)2-1と、分散片から元データを復元する通信端末(以下、「復元ノード(復元端末)」という。)2-2と、元データの内容を知る必要のある(元データの内容を知ることが許可された)関係者の通信端末(以下、「関係者ノード(関係者端末)」という。」)2-3~2-5と、元データの内容を知る必要の無い(元データの内容を知ることが許可されていない)部外者の通信端末(以下、「部外者ノード(部外者端末)」という。)2-6~2-8と、が含まれる。なお、関係者ノード及び部外者ノードの数は、“3”に限定されるものではなく、任意である。
 また、ネットワークNには、プライベートネットワークN1と、公開ネットワークN2と、が含まれる。プライベートネットワークN1には、分散ノード2-1と復元ノード2-2と関係者ノード2-3~2-5とからアクセスできる一方で、部外者ノード2-6~2-8からはアクセスできない。公開ネットワークN2には、部外者ノード2-6~2-8を含む全ての通信端末2-mからアクセスできる。
 次に、上記構成を備える秘密分散システム1が実行する各種処理について図面を参照して説明する。
 以下では、3つの関係者ノード2-3~2-5、及び3つの部外者ノード2-6~2-8の全6つのノードへの分散を前提とする一貫した処理について、元データから再現まで順に、具体的に説明する。
 まず、分散ノード2-1が実行するデータ分散処理について説明する。
 図3は、実施形態1に係るデータ分散処理の詳細を示すフローチャートである。
 図3に示すデータ分散処理において、分散ノード2-1の制御部23-1は、まず、元データXと暗号学的ハッシュ関数Hとから、元データXの誤り検出用HASH符号h=H(X)を生成し、これを秘密分散ID(Identification)とする(ステップS301)。
 次に、制御部23-1は、元データXと圧縮難読化関数Cとから、圧縮難読化されたビット文字列S’=C(X)を生成して、元データXの難読化を行う(ステップS302)。
 そして、制御部23-1は、圧縮難読化されたビット文字列S’を、分割数n(本実施形態では、関係者ノードの数=“3”)で等長分割すると整数にならない場合があるので、分割数の剰余分をNULLで補填し、等長整合化したビット文字列Sを生成する(ステップS303)。
 その後、制御部23-1は、まず、下記の数1に示す数式に従って、等長整合化したビット文字列Sをn(=3)片に等長分割して、第1ビット文字列Si(1≦i≦n(=3))をn(=3)片生成する(ステップS304)。
Figure JPOXMLDOC01-appb-M000001
 次に、制御部23-1は、ステップS301で生成したHASH符号h、等長分割に使用したスライス単位(ビット単位、Hex単位、バイト単位など)D、i番目の第1ビット文字列Siであることを認識するためのタグT、分割数n(=3)といった変数をヘッダとして、これらに第1ビット文字列Sを連結して、それぞれの巡回冗長検査符号(CRC)を計算しCRCを生成する(ステップS305)。
 そして、制御部23-1は、下記の数2に示す数式に従って、最後にCRCを連結して、一次分散片P1i(1≦i≦n(=3))を生成する(ステップS306)。
Figure JPOXMLDOC01-appb-M000002
 続いて、制御部23-1は、下記の数3に示す数式に従って、第1ビット文字列Siのペアに対して可逆計算を実行し、第2ビット文字列Vljkを生成する(ステップS307)。
Figure JPOXMLDOC01-appb-M000003
 ここで、可逆計算とは、例えば論理的排他和(XOR)のように、下記の数4に示す数式を満たす処理とする。
Figure JPOXMLDOC01-appb-M000004
 また、lは、分散性の次数(本実施形態では“2”)である。jは、可逆生成に使ったj番目の第1ビット文字列Sjとし、kは、可逆生成に使ったk番目の第1ビット文字列Skとし、j≠kとする。ステップS307で生成される第2ビット文字列V2jkは、ステップS304で生成される第1ビット文字列Sと等長のビット文字列である。
 さらに、制御部23-1は、ステップS301で生成したHASH符号h、可逆計算に使用したスライス単位(ビット単位、Hex単位、バイト単位など)E、j番目の第1ビット文字列Sjとk番目の第1ビット文字列Skとから生成された第2ビット文字列V2jkであることを認識するためのタグU、分割数nといった変数をヘッダとして、これらに第2ビット文字列V2jkを連結して、それぞれの巡回冗長検査符号(CRC)を計算しCRC2jkを生成する(ステップS308)。
 そして、制御部23-1は、下記の数5に示す数式に従って、最後にCRC2jkを連結して、二次分散片(第2データ片)Q2jkを生成する(ステップS309)。
Figure JPOXMLDOC01-appb-M000005
 一次分散片P1iが一般的な秘密共有のスキームでは、元のデータを共有して秘密を回復できる利用者の最小セットを指定する。秘密共有の一般的な例は、整数1≦i≦nのi-out-of-nスキーム(または(i,n)-しきい値スキーム)である。このようなスキームでは、分散ノードとn個の関係者ノードとが存在する。分散ノードは、元のデータをn個の部分に分割し、各関係者ノードに1つの部分を与え、任意のi個部分を組み合わせて元のデータを回復できるようにするが、i-1個の部分を収集しただけでは元のデータを決定するのに十分ではない。本実施形態では、iとnとの値が一意的に決まるのではなく、一次分散片P1iを取得すれば合計i個の一次分散片P1i又は二次分散片Q2jkから元のデータを復元・決定できる。一方、一次分散片P1iが取得できなければ、i個どころか、何個二次分散片Q2jkを集めても元のデータを復元・決定することはできない。信頼できる相手の関係者ノード2-3~2-5には一次分散片P1iを、それ以外の不特定多数の部外者ノード2-6~2-8には二次分散片Q2jkを分配する。すなわち、分配する相手のノード2-mによって分配する分散片を意図的に選択することで、セキュリティを犠牲にすることなく、冗長性を高めることができる。
 本実施形態では、3つの関係者ノード2-3~2-5、及び3つの部外者ノード2-6~2-8の計6つのノードによる秘密分散を想定している。ステップS306で一次分散片P11、P12、P13の3分散片が生成され、これら3分散片の可逆計算の組み合わせが=3通りあり、ステップS309で3種類の二次分散片Q212、Q223、Q231が生成されるので、一様な分配が可能となる。強靭性を高めるため、元データの内容を知る必要のない部外者の部外者ノードを増やすことができる。その際、組み合わせによるヘッダが異なるが同値な二次分散片Q212、Q223、Q231を生成する。ただし、本実施形態に係る分散片は等長なのでこのように冗長性を高めるとこれに比例して、ストレージコストが高くなる。ネットワークN上での分散保存や、分散伝送は、関係者ノード2-3~2-5が直接このコストを負担する構造ではないので、不用意に使われることが多い。この問題に関して、国際出出願PCT/JP2021/ 25226に記載されているインセンティブを設けた多重因子三点認証ルーティングを参照されたい。なお、本明細書中にPCT/JP2021/ 25226の明細書、特許請求の範囲、図面全体を参考として取り込むものとする。
 そして、制御部23-1は、ステップS306で生成した一次分散片P11、P12、P13を、それぞれプライベートネットワークN1を介して3つの関係者ノード2-3~2-5に送信して分配し、ステップS309で生成した二次分散片Q212、Q223、Q231を、それぞれ公開ネットワークN2を介して3つの部外者ノード2-6~2-8に送信して分配することにより、一次分散片P12及び二次分散片Q213を分散してから(ステップS310)、データ分散処理を終了する。具体的に、制御部23-1は、一次分散片P11を関係者ノード2-3に、一次分散片P12を関係者ノード2-4に、一次分散片P13を関係者ノード2-5に、それぞれ分配し、二次分散片Q212を部外者ノード2-6に、二次分散片Q223を部外者ノード2-7に、二次分散片Q231を部外者ノード2-8に、それぞれ分配する。
 次に、復元ノード2-2が実行するデータ復元処理について説明する。
 図4は、実施形態1に係るデータ復元処理の詳細を示すフローチャートである。
 図4に示すデータ復元処理において、復元ノード2-2の制御部23-2は、まず、下記の数6に示す数式に従って、秘密分散IDであるHASH符号hをキーワードにして、プライベートネットワークN1を介して関係者ノード2-3~2-5から一次分散片P1iを収集(取得)する(ステップS401)。なお、関係者ノード2-3~2-5のうちのいずれかが復元ノード2-2であってもよく、この場合、ステップS401で収集される一次分散片P1iには、他の関係者ノード2-3~2-5からプライベートネットワークN1を介して収集されるものに加え、復元ノード2-2自身が保持するものも含まれる。
Figure JPOXMLDOC01-appb-M000006
 次に、制御部23-2は、各一次分散片P1iからヘッダを抽出してCRCを検査し、健全な一次分散片P1iがn(本実施形態では“3”)個手元にあることを確認する(ステップS402)。
 制御部23-2は、健全な一次分散片P1iがn個に満たない場合(ステップS402;No)、i番目の一次分散片P1iであることを認識するためのタグTをリストして、欠如している一次分散片P1iを欠損配列としてリストした上で、下記の数7に示す数式に従って、秘密分散IDであるHASH符号hをキーワードにして、公開ネットワークN2を介して、部外者ノード2-6~2-8から不足数の二次分散片Q2jkを収集(取得)する(ステップS403)。
Figure JPOXMLDOC01-appb-M000007
 続いて、制御部23-2は、各二次分散片Q2jkからヘッダを抽出してCRC2jkを検査し、健全な二次分散片Q2jkが不足数手元にあることを確認する(ステップS404)。具体的に、制御部23-2は、j番目の第1ビット文字列Sjとk番目の第1ビット文字列Skとから生成された第2ビット文字列V2jkであることを認識するためのタグUを検査して、欠損配列検査を実行する。
 制御部23-2は、欠損リストがNULLにならない場合、即ち健全な二次分散片Q2jkが不足数に満たない場合(ステップS404;No)、追加処理として、ステップS403の処理を、欠損リストがNULLになるまで、即ち健全な二次分散片Q2jkが不足数になるまで(ステップS404;Yes)、繰り返し実行する。なお、制御部23-2は、欠損リストがNULLにならない場合、復元不能とすればよい。
 また、制御部23-2は、欠損している一次分散片P1iがある場合、第1ビット文字列Siを二次分散片Q2jkから抽出した第2ビット文字列V2ik又はV2jiから復元する(ステップS405)。具体的に、制御部23-2は、下記の数8に示す数式で、欠損している第1ビット文字列Siを復元する。
Figure JPOXMLDOC01-appb-M000008
 そして、制御部23-2は、下記の数9に示す数式に従って、第1ビット文字列Siをシリアル番号i順に並べて連結して難読化圧縮されたビット文字列Sを得る(ステップS406)。
Figure JPOXMLDOC01-appb-M000009
 さらに、制御部23-2は、この難読化圧縮されたビット文字列Sから、NULLを切り落としてビット文字列S’を生成する(ステップS407)。
 続いて、制御部23-2は、先の(圧縮難読化)関数の逆関数C-1と、ステップS407で生成したビット文字列S’と、からビット文字列(復元データ)X’=C-1 (S’)を生成する(ステップS408)。
 さらに、制御部23-2は、ステップS408で生成したビット文字列(復元データ)X’と、先の暗号学的ハッシュ関数Hと、からHASH値h’=H(X’)を生成する(ステップS409)。
 そして、制御部23-2は、秘密分散IDであるHASH値hと、ステップS409で生成したHASH値h’と、の同一検査をし(ステップS410)、同一であれば、これを元データXの正しい復元として、データ復元処理を終了する。
 最後に、復元ノード2-2が実行する整合性検査処理について説明する。
 整合性検査処理には、大きく分けて、簡易検査(クイックテスト)処理と、内容検査(ディープテスト)処理と、の二つのレベルの検査処理がある。
 図5は、簡易検査処理の詳細を示すフローチャートである。
 図5に示す簡易検査(クイックテスト)処理において、復元ノード2-2の制御部23-2は、まず、下記の数10に示す数式に従って、プライベートネットワークN1を介して関係者ノード2-3~2-5から一次分散片P1iを収集する(ステップS501)。
Figure JPOXMLDOC01-appb-M000010
 次に、制御部23-2は、各一次分散片P1iからヘッダを抽出してCRCを検査し、健全な一次分散片P1iがn(本実施形態では“3”)個手元にあることを確認する(ステップS502)。制御部23-2は、健全な一次分散片P1iがn(本実施形態では“3”)個全て揃っている場合(ステップS502;Yes)、このデータセットをXとし、簡易検査合格としてから(ステップS505)、簡易検査処理を終了する。
 制御部23-2は、健全な一次分散片P1iがn個に満たない場合(ステップS502;No)、下記の数11に示す数式に従って、秘密分散IDであるHASH符号hをキーワードにして、公開ネットワークN2を介して部外者ノード2-6~2-8から不足数の二次分散片Q2jkを収集する(ステップS503)。
Figure JPOXMLDOC01-appb-M000011
 続いて、制御部23-2は、各二次分散片Q2jkからヘッダを抽出してCRC2jkを検査し、手元にある健全な二次分散片Q2jkの数が、ステップS503で収集した二次分散片Q2jkの総数と一致するか、すなわちステップS503で収集した不足数の二次分散片Q2jkが全て健全であるかを確認する(ステップS504)。
 そして、制御部23-2は、一致すれば、すなわちステップS503で収集した不足数の二次分散片Q2jkが全て健全であれば(ステップS504;Yes)、簡易検査合格とし(ステップS505)、一致しなければ(ステップS504;No)、元データが壊れている可能性があるとして簡易検査不合格としてから(ステップS506)、簡易検査処理を終了する。
 図6は、内容検査処理の詳細を示すフローチャートである。
 図6は、内容検査処理(ディープテスト)において、復元ノード2-2の制御部23-2は、まず、上記の数2に示す数式に従って、プライベートネットワークN1を介して関係者ノード2-3~2-5から一次分散片P1iを収集する(ステップS601)。
 次に、制御部23-2は、各一次分散片P1iからヘッダを抽出してCRCを検査し、健全な一次分散片P1iがn(本実施形態では“3”)個手元にあることを確認する(ステップS602)。
 制御部23-2は、健全な一次分散片P1iがn(本実施形態では“3”)個全て揃っている場合、図4に示すステップS406~S409と同様の処理を経てから(ステップS603)、秘密分散IDであるHASH値hと、ステップS409で生成したHASH値h’と、の同一検査をし(ステップS604)、同一であれば(ステップS605;Yes)、これを元データXの正しい復元としてから(ステップS606)、内容検査処理を終了する。
 制御部23-2は、同一でなかった場合(ステップS605;No)、秘密分散IDであるHASH符号hをキーワードにして、公開ネットワークN2を介して、部外者ノード2-6~2-8から残る不足数の二次分散片Q2jkを収集する(ステップS607)。
 続いて、制御部23-2は、データセットXを生成する際に使った手元の一次分散片P1i内の第1ビット文字列Sと、二次分散片Q2jkから抽出した第2ビット文字列V2ik又はV2jiと、から第1ビット文字列S’又はS’を復元する(ステップS608)。制御部23-2は、残る二次分散片Q2jkに対してもステップS608と同様の処理を行って、第2ビット文字列V2ik又はV2jiから、第1ビット文字列S”またはS”を復元する。
 さらに、制御部23-2は、ステップS608で得た第1ビット文字列S’と第1ビット文字列S”との同値テストを行い、同値ではない第1ビット文字列S’もしくはS”を置き換えて連結し(ステップS609)、NULLを切り落としてビット文字列S”を生成する(ステップS610)。
 続いて、制御部23-2は、先の(圧縮難読化)関数の逆関数C-1と、ステップS610で生成したビット文字列S”と、からビット文字列(復元データ)X”=C-1(S”)を生成する(ステップS611)。
 さらに、制御部23-2は、ステップS611で生成したビット文字列(復元データ)X’と、先の暗号学的ハッシュ関数Hと、からHASH値h’=H(X’)を生成する(ステップS612)。
 続いて、制御部23-2は、ステップS604へと戻り、秘密分散IDであるHASH値hと、ステップS612で生成したHASH値h”と、の同一検査をし、同一であれば(ステップS605;Yes)、これを元データXの正しい復元としてから(ステップS606)、内容検査処理を終了する。
 以上説明したように、本実施形態に係る秘密分散システム(通信システム)1は、複数の通信端末2-mにネットワークNを介して接続された分散ノード(分散端末)2-1と、復元ノード(復元端末)2-2と、を具備する。
 分散ノード2-1(の制御部23-1)は、元データを分割して複数(本実施形態では“3”)の一次分散片(第1データ片)P1iを生成する。具体的に、分散ノード2-1は、元データを難読化してから分割することにより、複数の一次分散片P1iを生成する。
 次に、分散ノード2-1は、複数の一次分散片P1iのうちの二つの一次分散片P1iから二次分散片(第2データ片)Q2jkを生成する。具体的に、分散ノード2-1は、二つの一次分散片P1iの排他的論理和を求めることにより、二次分散片Q2jkを生成する。
 続いて、分散ノード2-1は、複数の一次分散片P1iと、二次分散片Q2jkと、をネットワークNを介して、それぞれ異なる通信端末2-mに送信して分散する。具体的に、分散ノード2-1は、複数の一次分散片P1iを、元データの内容を知ることが許可された関係者の通信端末(関係者ノード)2-3~2-5に送信し、二次分散片Q2jkを、元データの内容を知ることが許可されていない部外者の通信端末(部外者ノード)2-3~2-5に送信する。ここで、分散ノード2-1は、関係者ノード2-3~2-5とは、ネットワークNのうち、部外者ノード2-6~2-8からはアクセス不能なプライベートネットワークN1を介して接続されている。
 一方、復元ノード2-2は、複数の一次分散片P1iのうちのいずれかを保持する通信端末(関係者ノード)2-3~2-5からネットワークN(具体的には「プライベートネットワークN1」)を介して一次分散片P1iを取得する。
 また、復元ノード2-2は、二次分散片Q2jkを保持する通信端末(部外者ノード)2-6~2-8からネットワークN(具体的には「公開ネットワークN2」)を介して二次分散片Q2jkを取得する。ここで、復元ノード2-2は、複数の一次分散片P1iを全て取得できなかった場合、二次分散片Q2jkを、取得できなかった一次分散片P1iの数、取得すればよい。例えば、復元ノード2-2は、3つの一次分散片P1iのうち、1つしか取得できなかった場合、二次分散片Q2jkを2つ取得すればよい。
 続いて、復元ノード2-2は、取得した一次分散片P1iと、取得した二次分散片Q2jkと、から、取得した一次分散片P1i以外の一次分散片P1iを復元する。具体的に、復元ノード2-2は、取得した一次分散片P1iと、取得した二次分散片Q2jkと、の排他的論理和を求めることにより、取得した一次分散片P1i以外の一次分散片P1iを復元する。
 そして、復元ノード2-2は、取得した一次分散片P1iと、復元した一次分散片P1iと、から元データを復元する。
 これにより、本実施形態に係る秘密分散システム1によれば、セキュリティを向上させることができる。
 具体的に、本実施形態に係る公証可能な秘密分散システム1は、秘密分散の特性である「復号を困難にする」のではなく、「適切なデータセットの取得を困難にする」ことで秘匿性を確保する。さらに、秘密分散のデータ切片を復元に必要な一次分散片P1iと内容を再構築する上で十分ではない2次以上の高次の分散片に別けて分割分散するので、1)当事者は解読できるが、2)その他の人は解読困難となる。
 本実施形態に係る秘密分散システム1による秘匿化は、復号を担う復元ノード2-2のコンピュータがどんなに強力でも、暗号化されたデータの適切な組み合わせを収集することができない限り復号できない。したがって、本実施形態に係る秘密分散システム1がもたらす革新は、秘密とすべき情報(秘密情報)を含む一次分散片(可視証人)P1iと、秘密情報を含まない復元のための冗長化した二次分散片(不可視証人)Q2jkと、を意図的に生成する。
 図7は、実施形態1に係る秘密分散の説明図である。
 図7に示すように、例えば、秘密分散システム1は、元データを3個の一次分散片P1iとさらに3個の二次分散片Q2jkの計6つに分けた分散片の内、一次分散片P1iを1つ持っていれば、あとはどれでも2以上の分散片が集まれば秘密情報を得られる等といった閾値(この例では1+2=3)を指定できる。このように、秘密分散システム1は、秘密情報の内容を知る必要のある関係者ノード2-3~2-5の閾値と、秘密情報の内容知る必要の無い部外者ノード2-6~2-8に対する閾値が指定できるので、可用性を飛躍的に高めながら、高度なセキュリティを実現することができる。
[実施形態2]
 次に、本発明の実施形態2に係る秘密分散システムの構成について図面を参照しつつ説明する。なお、実施形態1に係る秘密分散システムと同様の構成については、同一の符号を付し、その説明を省略する。
 本実施形態に係る秘密分散システム1は、第5世代移動通信システム(5th Generation Mobile Communication System;5G)等、多くの通信端末(ノード)2-mを経て通信が成立する環境で、主にIoT(Internet of Things)及びスマート・コントラクトでの応用を前提としている。したがって、分散片は、インターネットのように公開ネットワークN2上の通信端末(ノード)2-mに分配される。一次分散片(プライマリ・ピース)と二次分散片(ヴェリフィケーション・ピース若しくはセカンダリ・ピース)とは区別して取り扱われる。
 分散ノード2-1の制御部23-1は、下記の数12に示す数式に従って、秘密情報sを等長分割して一次分散片(プライマリ・ピース)s(iは変数)を生成するとともに、一次分散片sのペアに対して可逆計算を実行し、二次分散片(セカンダリ・ピース)pij(i及びjは変数)を生成する。
Figure JPOXMLDOC01-appb-M000012
 ここで、秘密情報sを回復するには、全ての分散片共有が必要であることに注意を要する。
 図8は、実施形態2に係るデータ分散処理の詳細を示すフローチャートである。
 図8に示すデータ分散処理において、まず、分散ノード2-1の制御部23-1は、元のファイルのHASHを生成し、これを元のファイルの認識票のヘッダとする(ステップS801)。
 次に、制御部23-1は、分割する前に元のファイルのHASHに圧縮をかける(ステップS802)。圧縮することで単純分割した元のファイルの分散片は難読化される。
 続いて、制御部23-1は、圧縮された元のファイルのHASHを等分に3以上に分割する(ステップS803)。
 さらに、制御部23-1は、元のファイルにNULL記号を付加することで、等分に整数分割できるよう調整する(ステップS804)。
 そして、制御部23-1は、等分割された分散片を一次分散片(プライマリピース)sとして、認識票にシリアルを付記する(ステップS805)。
 続いて、制御部23-1は、互いに異なる一次分散片(プライマリ・ピース)sを、可逆演算(例えば排他的論理和:XOR)して、二次分散片(セカンダリ・ピース)pijを生成する(ステップS806)。二次分散片(セカンダリ・ピース)pijの生成より、高次の分配片の生成には次数の異なる分配片間で可逆演算をするが、一次分散片(プライマリ・ピース)sとの可逆演算は禁止する。
 そして、制御部23-1は、秘密情報sを解読できる関係者ノード2-3~2-5に一次分散片(プライマリ・ピース)sを配布し、秘密情報sを解読困難な部外者ノード2-6~2-8に二次分散片(セカンダリ・ピース)pijを配布して分散から(ステップS807)、データ復元処理を終了する。
 図9は、実施形態2に係るデータ復元処理の詳細を示すフローチャートである。
 図9に示すデータ復元処理において、まず、復元ノード2-2の制御部23-2は、元のファイルの認識票からHASHを入手、もしくは一次分散片(プライマリ・ピース)sの認識票からHASHを入手する(ステップS901)。
 次に、制御部23-2は、認識票のHASHをもとに、一次分散片(プライマリ・ピース)sを収集する(ステップS902)。制御部23-2は、一次分散片(プライマリ・ピース)sを一つも入手できない場合、再構築不能である。
 制御部23-2は、一次分散片(プライマリ・ピース)sを少なくとも一つ入手できた場合、HASHをもとに、二次分散片(セカンダリ・ピース)pijを収集する(ステップS903)。
 そして、制御部23-2は、手元の一次分散片(プライマリ・ピース)と二次分散片(セカンダリ・ピース)pijとに可逆演算の逆を適用して、入手(収集)できなかった一次分散片(プライマリ・ピース)sを構築(復元)する(ステップS904)。
 続いて、制御部23-2は、一次分散片(プライマリ・ピース)sが揃ったところで、収集した一次分散片(プライマリ・ピース)sの認識票をもとに、認識票を破棄した上で、これらを連結し元のファイルを圧縮したファイルとして再構築(復元)する(ステップS905)。
 さらに、制御部23-2は、圧縮したファイルを伸長して元のファイルを入手(復元)する(ステップS906)。
 そして、制御部23-2は、ここで得た元のファイルのHASH値と、認識票に書き込まれたHASH値と、を比較してエラーが無いことを確認(同一検査)してから(ステップS907)、データ復元処理を終了する。
 本実施形態において、インターネットプロトコルは、ピア・ツウ・ピア通信であり、ピア・ツウ・ピア(P2P)型ネットワークを構成する通信端末2-mの起点から終点までの通信の整合性を保証する。したがって、起点となる通信端末2-m(本実施形態では、「分散ノード2-1」)から終点となる通信端末2-m(本実施形態では、「復元ノード2-2」)に向かって転送するファイルを「動くデータ」と定義する。これとは対照的に、複数の通信端末2-m(以下、「参加ノード」という。)によって共有されるデータを「静止データ」と定義する。ここで、上記の二種類のデータの取り扱いについて説明する。
 「動くデータ」は、起点となる分散ノード2-1から終点となる復元ノード2-2に向かって転送されるファイルである。ここで、起点となる分散ノード2-1は、元のファイルを所有しているので、内容を知っているが、終点となる復元ノード2-2は、このファイルに関する内容について無知である。安全にファイルを終点となる復元ノード2-2に転送するためには、ファイルの一次分散片(プライマリ・ピース)sの1つを直接転送するか、もしくは別媒体に保存して物理的に転送する。起点となる分散ノード2-1は、HASH値を認識番号として終点となる復元ノード2-2を含めた参加ノードをグラフで定義し、二次分散片(セカンダリ・ピース)pijを参加ノードに対して分散配布する。終点となる復元ノード2-2は、この一次分散片(プライマリ・ピース)sの認識票から、元のファイルのHASH値の知識を得る。終点となる復元ノード2-2は、このHASH値を認識番号としたグラフの参加ノードなので、二次分散片(セカンダリ・ピース)pijを収集することができる。終点となる復元ノード2-2は、直接受け取った1つの一次分散片(プライマリ・ピース)sと二次分散片(セカンダリ・ピース)pijとの可逆演算から、全ての一次分散片(プライマリ・ピース)sを再現することができる。仮にHASH値を認識番号とした単に二次分散片(セカンダリ・ピース)pijしか分配されていないグラフの参加ノードにアクセスしても、再生に必要な情報が集まらない。
 「静止データ」は、起点や終点といった概念ではなく、対象となるファイルを共有している通信端末2-m(本実施形態では、「部外者ノード2-6~2-8」)が存在する。全く同じファイルを共有しているかどうかの判断は、まず、元データのHASH値を生成し、これを交換することで、同一性の確認をとる。部外者ノード2-6~2-8の数(もしくは最低でも3)によって、分割数を決定し、これを共有する。分散ン―ド2-1は、HASH値を認識番号として共有する部外者ノード2-6~2-8を含めた参加ノードをグラフで定義し、二次分散片(セカンダリ・ピース)pijを参加ノードに対して分散配布する。終点となる復元ノード2-2は、この一次分散片(プライマリ・ピース)sの認識票から、元のファイルのHASH値の知識を得る。終点となる復元ノード2-2は、このHASH値を認識番号としたグラフの参加ノードなので、二次分散片(セカンダリ・ピース)pijを収集することができる。終点となる復元ノード2-2は、直接受け取った1つの一次分散片(プライマリ・ピース)sと二次分散片(セカンダリ・ピース)pijとの可逆演算から、全一次分散片(プライマリ・ピース)sを復元することができるが、仮にHASH値を認識番号としたグラフの参加ノードにアクセスしても、復元に必要な情報が集まらない。
 図10は、実施形態2に係る分散片の搬送の説明図である。
 図10に示すように、分散ノード2-1は、本出願人が発明したHYDRA0のように黒で描かれた既知の安全な経路(プライベートネットワークN1)に一次分散片(プライマリ・ピース)sをストライピングして高速に搬送する。分散ノード2-1は、網線で描かれた安全性が確認できていない経路(公開ネットワークN2)で、二次分散片(セカンダリ・ピース)pijを搬送する。既知の安全な経路(プライベートネットワーク)N1のリソースが不足している場合、3つの一次分散片(プライマリ・ピース)sのうちの1つのみ搬送して、その他の搬送を実行しなくても、安全に高速搬送ができ、なお、安全が確認できていない経路(公開ネットワークN2)上で、少なくとも二系統が確立できていれば、第三系統を冗長データとして復号が可能である。
 以上説明したように、本実施形態に係る秘密分散システム1によれば、実施形態1に係る秘密分散システム1による効果に加え、一次分散片(プライマリ・ピース)sと二次分散片(セカンダリ・ピース)pijとを送信する経路(ネットワークN)を、その安全性に応じて変更することにより、安全な経路(プライベートネットワークN1)のリソースを有効に使うことができる。
[実施形態3]
 次に、本発明の実施形態3に係る秘密分散システムの構成について図面を参照しつつ説明する。なお、実施形態1及び2に係る秘密分散システムと同様の構成については、同一の符号を付し、その説明を省略する。
 従来、ネットワーク通信のセキュリティは、安全な領域(内)とそうでない領域(外)という境界線で区別し、外からの内への浸食を防ぐことで安全を担保してきた。
 今日広く利用されている通信ネットワークは、インターネットであり、ローカルエリアネットワークを内とし、ワイドエリアネットワークを外という領域で区切ることは可能であるが、安全という概念との相関性が無い。すなわち、インターネットプロトコルを使って通信する相手は安全ではない。なりすました端末かもしれなければ、パケットを中継する際に通信内容を傍受されているかもしれない。いかなる端末も信用してはならない、信用できないという前提で通信のセキュリティを担保する。これをゼロトラスト通信という。
 本実施形態に係る秘密分散システム1は、インターネット上でゼロトラスト通信を実現し、セキュリティに関する考え方を革新する。分散ノード2-1は、元データXを難読化の上で分割した一次分散片fと、この一次分散片fから生成する二次分散片Pijと、に分散する。これらの一次分散片fと二次分散片Pijとをそれぞれ別の通信端末2-mを介した経路に配信すれば、これらの経路上に存在する通信端末2-mに元データXを露出することなく通信することが実現できる。
 上記で説明したゼロトラスト前提でファイル転送を安全に実行する方法は、元データFの発信元の通信端末2-mと受信先の通信端末2-mとの二点間のネットワークN上に流通する全てのパケットを収集して分析することができれば、元データFを再構築することができる。分散ノード2-1は、元データFを圧縮難読化してビット文字列fを生成した上で等分にn分割して一次分散片fを生成する。分散ノード2-1は、この一次分散片fから二次分散片Pijを排他的論理和のような可逆計算を用いて生成する。したがって、これらの二次分散片Pijを全て集めても一次分散片fを循環参照することになり、提示された一次分散片fが元データXから生成された一次分散片fであることの確証にはなるが、元の一次分散片fを決定することはない。
 一次分散片fを二次分散片Pijで記述すると、下記の数13に示す数式のようになる(ここではn=3で例を挙げる。)。
Figure JPOXMLDOC01-appb-M000013
 循環参照解なので、元データXを決定する上で少なくとも一つの一次分散片fが必要となる。
 上記の性質を利用して、不完全な情報を配信して、メンバーに限定して元データを構築する仕組みをゼロナレッジ通信として実装が可能である。例えば、メンバーはあらかじめ、乱数列などからなるメンバーファイルを持っていることを前提とする。
 図11は、実施形態3に係る秘密分散の説明図である。
 図11に示すように、分散ノード2-1は、メンバー間で共有したい元データであるオリジナルデータファイルFを圧縮難読化した上で2等分する。分散ノード2-1は、これらを一次分散片f、fとし、メンバーファイルMを先頭から一次分散片f、fとデータサイズを揃えて切り捨てた一次分散片mを作成する。分散ノード2-1は、下記の数14に示す数式に従って、これらの一次分散片f、f、mから二次分散片P、P、Pを生成し配信する。
Figure JPOXMLDOC01-appb-M000014
 以上説明したように、本実施形態に係る秘密分散システム1によれば、実施形態1及び2に係る秘密分散システム1による効果に加え、上記でネットワークN上に露出配信された分散片は、元データであるオリジナルデータファイルFの分散片の真正性を確認する事には十部であるが、元データXであるオリジナルデータファイルFの分散片を再構築するためにはメンバーファイルMが必要となり、不完全なデータの交換でセキュアな通信が実現できる。
 なお、本発明は、上記の実施形態に限定されず、種々の変形、応用が可能である。以下、本発明に適用可能な上記の実施形態の変形態様について、説明する。
 上記の実施形態において、一次分散片P1iから可逆的に生成された二次分散片Q2jkのみを利用して、三次以上の高次の分散片を生成するようにしてもよい。具体的に、分散ノード2-1の制御部23-1は、三次以上の高次の分散片を二次以上の分散片を利用して、次数を跨いで高次の分散片を生成するようにしてもよい。また、明示的に区別することで、復元することなく、内容証明ができるようにしてもよい。
 上記の実施形態において、制御部23-mのCPUが実行するプログラムは、予めROM等に記憶されていた。しかしながら、本発明は、これに限定されず、上述の処理を実行させるためのプログラムを、既存の汎用コンピュータに適用することで、上記の実施形態に係る通信端末(ノード)2-mとして機能させてもよい。
 このようなプログラムの提供方法は任意であり、例えばコンピュータが読取可能な記録媒体(フレキシブルディスク、CD(Compact Disc)-ROM、DVD(Digital Versatile Disc)-ROM等)に格納して配布してもよいし、インターネット等のネットワーク上のストレージにプログラムを格納しておき、これをダウンロードさせることにより提供してもよい。
 また、上記の処理をOSとアプリケーションプログラムとの分担、又はOSとアプリケーションプログラムとの協働によって実行する場合には、アプリケーションプログラムのみを記録媒体やストレージに格納してもよい。また、搬送波にプログラムを重畳し、ネットワークを介して配信することも可能である。例えば、ネットワーク上の掲示板(BBS:Bulletin Board System)に上記プログラムを掲示し、ネットワークを介してプログラムを配信してもよい。そして、このプログラムを起動し、OSの制御下で、他のアプリケーションプログラムと同様に実行することにより、上記の処理を実行できるように構成してもよい。
 なお、本発明は、本発明の広義の精神と範囲を逸脱することなく、様々な実施の形態及び変形が可能とされるものである。また、上述した実施の形態は、本発明の一実施例を説明するためのものであり、本発明の範囲を限定するものではない。
 本出願は、2020年8月17日に出願された日本国特許出願2020-137680に基づく。本明細書中に日本国特許出願2020-137680の明細書、特許請求の範囲、図面全体を参照として取り込むものとする。
  1       秘密分散システム(通信システム)
  2-m     通信端末(ノード)
  2-1     分散ノード(分散端末)
  2-2     復元ノード(復元端末)
  2-3~2-5 関係者ノード(関係者端末)
  2-6~2-8 部外者ノード(部外者端末)
 21-m     通信部
 22-m     記憶部
 23-m     制御部

Claims (14)

  1.  複数の通信端末(2-m)にネットワーク(N)を介して接続された復元端末(2-2)であって、
     元データを分割して得られる複数の第1データ片のうちのいずれかを保持する前記通信端末(2-3~2-5)から前記ネットワーク(N)を介して該第1データ片を取得し、
     前記複数の第1データ片のうちの二つの該第1データ片から生成される第2データ片を保持する前記通信端末(2-6~2-8)から前記ネットワーク(N)を介して該第2データ片を取得し、
     前記取得した第1データ片と、前記取得した第2データ片と、から該取得した第1データ片以外の第1データ片を復元し、
     前記取得した第1データ片と、前記復元した第1データ片と、から前記元データを復元する、
     復元端末(2-2)。
  2.  前記複数の第1データ片を全て取得できなかった場合、前記第2データ片を、該取得できなかった該第1データ片の数、取得する、
     請求項1に記載の復元端末(2-2)。
  3.  前記第2データ片は、前記二つの第1データ片の排他的論理和を求めることにより生成され、
     前記取得した第1データ片以外の第1データ片は、前記取得した第1データ片と、前記取得した第2データ片と、の排他的論理和を求めることにより復元される、
     請求項1に記載の復元端末(2-2)。
  4.  前記複数の第1データ片は、前記元データを難読化してから分割することにより生成される、
     請求項1に記載の復元端末(2-2)。
  5.  前記第1データ片を保持する前記通信端末(2-3~2-5)とは、前記ネットワーク(N)のうち、前記第2データ片を保持する前記通信端末(2-6~2-8)からはアクセス不能なプライベートネットワーク(N1)を介して接続されている、
     請求項1に記載の復元端末(2-2)。
  6.  複数の通信端末(2-m)にネットワーク(N)を介して接続された分散端末(2-1)と、復元端末(2-2)と、を具備する通信システム(1)であって、
     前記分散端末(2-1)は、
     元データを分割して複数の第1データ片を生成し、
     前記複数の第1データ片のうちの二つの該第1データ片から第2データ片を生成し、
     前記複数の第1データ片と、前記第2データ片と、を前記ネットワーク(N)を介して、それぞれ異なる前記通信端末(2-m)に送信して分散し、
     前記復元端末(2-2)は、
     前記複数の第1データ片のうちのいずれかを保持する前記通信端末(2-3~2-5)から前記ネットワーク(N)を介して該第1データ片を取得し、
     前記第2データ片を保持する前記通信端末(2-6~2-8)から前記ネットワーク(N)を介して該第2データ片を取得し、
     前記取得した第1データ片と、前記取得した第2データ片と、から該取得した第1データ片以外の第1データ片を復元し、
     前記取得した第1データ片と、前記復元した第1データ片と、から前記元データを復元する、
     通信システム(1)。
  7.  前記復元端末(2-2)は、前記複数の第1データ片を全て取得できなかった場合、前記第2データ片を、該取得できなかった該第1データ片の数、取得する、
     請求項6に記載の通信システム(1)。
  8.  前記分散端末(2-1)は、前記二つの第1データ片の排他的論理和を求めることにより、前記第2データ片を生成し、
     前記復元端末(2-2)は、前記取得した第1データ片と、前記取得した第2データ片と、の排他的論理和を求めることにより、前記取得した第1データ片以外の第1データ片を復元する、
     請求項6に記載の通信システム(1)。
  9.  前記分散端末(2-1)は、前記元データを難読化してから分割することにより、前記複数の第1データ片を生成する、
     請求項6に記載の通信システム(1)。
  10.  前記分散端末(2-1)は、前記複数の第1データ片を、前記元データの内容を知ることが許可された関係者の前記通信端末(2-3~2-5)に送信し、前記第2データ片を、該元データの内容を知ることが許可されていない部外者の該通信端末(2-3~2-5)に送信する、
     請求項6に記載の通信システム(1)。
  11.  前記関係者の通信端末(2-3~2-5)とは、前記ネットワーク(N)のうち、前記部外者の通信端末(2-6~2-8)からはアクセス不能なプライベートネットワーク(N1)を介して接続されている、
     請求項10に記載の通信システム(1)。
  12.  複数の通信端末(2-m)にネットワーク(N)を介して接続された復元端末(2-2)による復元方法であって、
     元データを分割して得られる複数の第1データ片のうちのいずれかを保持する前記通信端末(2-3~2-5)から前記ネットワーク(N)を介して該第1データ片を取得し、
     前記複数の第1データ片のうちの二つの該第1データ片から生成される第2データ片を保持する前記通信端末(2-6~2-8)から前記ネットワーク(N)を介して該第2データ片を取得し、
     前記取得した第1データ片と、前記取得した第2データ片と、から該取得した第1データ片以外の第1データ片を復元し、
     前記取得した第1データ片と、前記復元した第1データ片と、から前記元データを復元する、
     復元方法。
  13.  複数の通信端末(2-m)にネットワーク(N)を介して接続された分散端末(2-1)と、復元端末(2-2)と、を具備する通信システム(1)による通信方法であって、
     前記分散端末(2-1)が、
     元データを分割して複数の第1データ片を生成し、
     前記複数の第1データ片のうちの二つの該第1データ片から第2データ片を生成し、
     前記複数の第1データ片と、前記第2データ片と、を前記ネットワーク(N)を介して、それぞれ異なる前記通信端末(2-m)に送信して分散し、
     前記復元端末(2-2)が、
     前記複数の第1データ片のうちのいずれかを保持する前記通信端末(2-3~2-5)から前記ネットワーク(N)を介して該第1データ片を取得し、
     前記第2データ片を保持する前記通信端末(2-6~2-8)から前記ネットワーク(N)を介して該第2データ片を取得し、
     前記取得した第1データ片と、前記取得した第2データ片と、から該取得した第1データ片以外の第1データ片を復元し、
     前記取得した第1データ片と、前記復元した第1データ片と、から前記元データを復元する、
     通信方法。
  14.  複数の通信端末(2-m)にネットワーク(N)を介して接続された復元端末(2-2)のコンピュータに、
     元データを分割して得られる複数の第1データ片のうちのいずれかを保持する前記通信端末(2-3~2-5)から前記ネットワーク(N)を介して該第1データ片を取得する手順と、
     前記複数の第1データ片のうちの二つの該第1データ片から生成される第2データ片を保持する前記通信端末(2-6~2-8)から前記ネットワーク(N)を介して該第2データ片を取得する手順と、
     前記取得した第1データ片と、前記取得した第2データ片と、から該取得した第1データ片以外の第1データ片を復元する手順と、
     前記取得した第1データ片と、前記復元した第1データ片と、から前記元データを復元する手順と、
     を実行させるためのプログラム。
PCT/JP2021/029692 2020-08-17 2021-08-11 復元端末、通信システム、復元方法、通信方法、及びプログラム WO2022039095A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2022522008A JP7126303B2 (ja) 2020-08-17 2021-08-11 復元端末、通信システム、復元方法、通信方法、及びプログラム

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2020-137680 2020-08-17
JP2020137680 2020-08-17

Publications (1)

Publication Number Publication Date
WO2022039095A1 true WO2022039095A1 (ja) 2022-02-24

Family

ID=80322722

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/029692 WO2022039095A1 (ja) 2020-08-17 2021-08-11 復元端末、通信システム、復元方法、通信方法、及びプログラム

Country Status (2)

Country Link
JP (1) JP7126303B2 (ja)
WO (1) WO2022039095A1 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013243441A (ja) * 2012-05-18 2013-12-05 Nippon Telegr & Teleph Corp <Ntt> 秘密分散システム、データ分散装置、データ復元装置、秘密分散方法、およびプログラム
WO2015049756A1 (ja) * 2013-10-03 2015-04-09 富士通株式会社 プログラム、符号化装置、及び符号化方法
JP2017182445A (ja) * 2016-03-30 2017-10-05 日本電気株式会社 情報処理装置、情報処理システム、情報処理方法および情報処理プログラム
WO2018105064A1 (ja) * 2016-12-07 2018-06-14 株式会社日立製作所 音声データ転送方法、音声データ転送システム及び受信装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013243441A (ja) * 2012-05-18 2013-12-05 Nippon Telegr & Teleph Corp <Ntt> 秘密分散システム、データ分散装置、データ復元装置、秘密分散方法、およびプログラム
WO2015049756A1 (ja) * 2013-10-03 2015-04-09 富士通株式会社 プログラム、符号化装置、及び符号化方法
JP2017182445A (ja) * 2016-03-30 2017-10-05 日本電気株式会社 情報処理装置、情報処理システム、情報処理方法および情報処理プログラム
WO2018105064A1 (ja) * 2016-12-07 2018-06-14 株式会社日立製作所 音声データ転送方法、音声データ転送システム及び受信装置

Also Published As

Publication number Publication date
JPWO2022039095A1 (ja) 2022-02-24
JP7126303B2 (ja) 2022-08-26

Similar Documents

Publication Publication Date Title
US11991275B2 (en) System and method for quantum-safe authentication, encryption and decryption of information
US11341269B2 (en) Providing security against user collusion in data analytics using random group selection
Krawczyk Secret sharing made short
WO2014007347A1 (ja) 共有秘密鍵生成装置、暗号化装置、復号化装置、共有秘密鍵生成方法、暗号化方法、復号化方法、及びプログラム
CN112738051B (zh) 数据信息加密方法、系统及计算机可读存储介质
US9300469B2 (en) Secure computing system, secure computing method, secure computing apparatus, and program therefor
Firdaus et al. Monitoring system with two central facilities protocol
Ananth et al. Robust transforming combiners from indistinguishability obfuscation to functional encryption
Jiang et al. Encrypted images-based reversible data hiding in Paillier cryptosystem
Holz et al. Linear-complexity private function evaluation is practical
US20210083853A1 (en) Key distribution system, terminal device, key distribution method, and program
Jakobsen et al. How to bootstrap anonymous communication
WO2022039095A1 (ja) 復元端末、通信システム、復元方法、通信方法、及びプログラム
Kumar et al. A novel framework for secure file transmission using modified AES and MD5 algorithms
Dhane et al. A novel high capacity reversible data hiding through encryption scheme by permuting encryption key and entropy analysis
Rodrigues et al. Oblivious transfer based on single-qubit rotations
Wu et al. Bit-oriented quantum public-key cryptosystem based on bell states
Dweik et al. A survey of lightweight image encryption for IoT
Suwais Stream Cipher Based on Game Theory and DNA Coding.
CN113330712A (zh) 采用基于排列群的加密技术的加密系统及方法
US11809588B1 (en) Protecting membership in multi-identification secure computation and communication
Canard et al. Towards practical intrusion detection system over encrypted traffic
Jayanthi et al. A public key-based encryption and signature verification model for secured image transmission in network
Ahmed et al. A hybrid medical image cryptosystem based on 4D-hyperchaotic S-boxes and logistic maps
Gupta et al. A New Approach to Encryption using Huffman Coding

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21858242

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2022522008

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21858242

Country of ref document: EP

Kind code of ref document: A1