Secret sharing via blockchains
11296889 · 2022-04-05
Assignee
Inventors
Cpc classification
H04L9/32
ELECTRICITY
H04L9/3239
ELECTRICITY
H04L9/085
ELECTRICITY
G06F21/6218
PHYSICS
G06F21/64
PHYSICS
H04L9/0816
ELECTRICITY
H04L9/06
ELECTRICITY
G06F21/62
PHYSICS
H04L2209/20
ELECTRICITY
H04L9/0637
ELECTRICITY
International classification
H04L9/32
ELECTRICITY
H04L9/06
ELECTRICITY
G06F21/62
PHYSICS
H04L9/08
ELECTRICITY
Abstract
Confidential, secret data may be shared via one or more blockchains. Mortgage applications, medical records, financial records, and other electronic documents often contain social security numbers, names, addresses, account information, and other personal data. A secret sharing algorithm is applied to any secret data to generate shares. The shares may then be integrated or written to one or more blockchains for distribution.
Claims
1. A method conducted by a server that secretly shares an electronic document between computers, comprising: retrieving, by the server, the electronic document; splitting, by the server, the electronic document into a number N.sub.S of secret shares via an electronic representation of a secret sharing algorithm; determining, by the server, a maximum number N.sub.Smax of the number N.sub.S of the secret shares that are permissibly integrated into a single blockchain network; determining, by the server, a number N.sub.B of different blockchain networks that are required to distribute the number N.sub.S of the secret shares of the electronic document according to a ratio of N.sub.B=N.sub.S/N.sub.Smax; and publishing, by the server, the number N.sub.S of the secret shares via the required number N.sub.B of the different blockchain networks to the computers.
2. The method of claim 1, further comprising retrieving the electronic representation of the secret sharing algorithm.
3. The method of claim 1, wherein the retrieving of the electronic document further comprises retrieving an electronic mortgage application.
4. The method of claim 1, further comprising integrating the number N.sub.S of the secret shares into the number N.sub.B of the different blockchain networks.
5. The method of claim 1, further comprising generating a hash value representing a secret share of the number N.sub.S of the secret shares by hashing an electronic data representing the secret share.
6. A system that secretly shares an electronic document between computers, comprising: a hardware processor; and a memory device storing instructions that when executed by the hardware processor perform operations, the operations comprising: retrieving an electronic data representing the electronic document; splitting the electronic data representing the electronic document into a number N.sub.S of secret shares via an electronic representation of a secret sharing algorithm; determining a maximum number N.sub.Smax of the number N.sub.S of the secret shares that are permissibly integrated into a single blockchain network; determining a number N.sub.B of different blockchain networks that are required to distribute the number N.sub.S of the secret shares according to a ratio of N.sub.B=N.sub.S/N.sub.Smax; and distributing the number N.sub.S of the secret shares using the required number N.sub.B of the different blockchain networks to the computers.
7. The system of claim 6, wherein the operations further comprise retrieving the electronic representation of the secret sharing algorithm.
8. The system of claim 6, wherein the operations further comprise retrieving an electronic mortgage application as the electronic data representing the electronic document.
9. The system of claim 6, wherein the operations further comprise integrating the number N.sub.S of the secret shares into the number N.sub.B of the different blockchain networks.
10. The system of claim 6, wherein the operations further comprise generating a hash value representing a secret share of the number N.sub.S of the secret shares by hashing the electronic data representing the secret share.
11. A non-transitory memory device storing instructions that when executed by a hardware processor perform operations for secretly sharing an electronic document, the operations comprising: retrieving the electronic document; splitting the electronic document into a number N.sub.S of multiple shares via an electronic representation of a secret sharing algorithm; determining a maximum number N.sub.Smax of the number N.sub.S of the multiple shares that are permissibly integrated into any single blockchain network; determining a number N.sub.B of different blockchain networks that are required to distribute the multiple shares of the electronic document according to a ratio of N.sub.B=N.sub.S/N.sub.Smax; and distributing the number N.sub.S of the multiple shares via the number N.sub.B of the different blockchain networks.
12. The non-transitory memory device of claim 11, wherein the operations further comprise retrieving the electronic representation of the secret sharing algorithm.
13. The non-transitory memory device of claim 11, wherein the operations further comprise retrieving an electronic mortgage application as the electronic document.
14. The non-transitory memory device of claim 11, wherein the operations further comprise integrating the number N.sub.S of the multiple shares into the number N.sub.B of the different blockchain networks.
Description
BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS
(1) The features, aspects, and advantages of the exemplary embodiments are understood when the following Detailed Description is read with reference to the accompanying drawings, wherein:
(2)
(3)
(4)
(5)
(6)
(7)
DETAILED DESCRIPTION
(8) The exemplary embodiments will now be described more fully hereinafter with reference to the accompanying drawings. The exemplary embodiments may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. These embodiments are provided so that this disclosure will be thorough and complete and will fully convey the exemplary embodiments to those of ordinary skill in the art. Moreover, all statements herein reciting embodiments, as well as specific examples thereof, are intended to encompass both structural and functional equivalents thereof. Additionally, it is intended that such equivalents include both currently known equivalents as well as equivalents developed in the future (i.e., any elements developed that perform the same function, regardless of structure).
(9) Thus, for example, it will be appreciated by those of ordinary skill in the art that the diagrams, schematics, illustrations, and the like represent conceptual views or processes illustrating the exemplary embodiments. The functions of the various elements shown in the figures may be provided through the use of dedicated hardware as well as hardware capable of executing associated software. Those of ordinary skill in the art further understand that the exemplary hardware, software, processes, methods, and/or operating systems described herein are for illustrative purposes and, thus, are not intended to be limited to any particular named manufacturer.
(10) As used herein, the singular forms “a,” “an,” and “the” are intended to include the plural forms as well, unless expressly stated otherwise. It will be further understood that the terms “includes,” “comprises,” “including,” and/or “comprising,” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof. It will be understood that when an element is referred to as being “connected” or “coupled” to another element, it can be directly connected or coupled to the other element or intervening elements may be present. Furthermore, “connected” or “coupled” as used herein may include wirelessly connected or coupled. As used herein, the term “and/or” includes any and all combinations of one or more of the associated listed items.
(11) It will also be understood that, although the terms first, second, etc. may be used herein to describe various elements, these elements should not be limited by these terms. These terms are only used to distinguish one element from another. For example, a first device could be termed a second device, and, similarly, a second device could be termed a first device without departing from the teachings of the disclosure.
(12)
(13) Exemplary embodiments thus protect the secret data 22. A server 26 retrieves a representation 28 of the electronic document 20 and splits the representation 28 into multiple pieces termed shares 30. The server 26 may then distribute one or more of the shares 30 via a blockchain 32. As the reader may understand, the blockchain 32 is generally a digital ledger in which transactions are chronologically and/or publically recorded. The blockchain 32 is most commonly used in decentralized cryptocurrencies (such as Bitcoin). The blockchain 32, however, may be adapted to any chain or custody (such as in medical records and in chains of title in real estate transactions). Indeed, there are many different mechanisms and configurations of the blockchain 32, and exemplary embodiments may be adapted to any version. Regardless, the shares 30 may be integrated into the blockchain 32 as a distribution or publication mechanism. The blockchain 32 may then route via a communications network 34 to any destination.
(14)
(15)
(16) Exemplary embodiments may thus stash the secret data 22 in the multiple blockchains 32a-c. Because the electronic document 20 (containing the secret data 22) is split into the multiple shares 30, any one or more of the peer devices must possess a sufficient minimum number M.sub.Min (illustrated as reference numeral 60) of the shares 30 before the secret data 22 may be recovered. That is, possession of an insufficient number of the shares 30 guarantees that the secret data 22 remains unknown and confidential. So, if the first blockchain 32a contains less than the M.sub.Min 60 of the total shares 30, then the first group 42a of peer devices cannot reconstruct the secret data 22. Likewise, if the second blockchain 32b and/or the third blockchain 32c also contains less than the M.sub.Min 30, the second group 42b of peer devices and the third group 42c of peer devices are also unable to reveal or decipher the secret data 22. In other words, no single one of the multiple blockchains 32a-c stores the requisite minimum number M.sub.Min 60 of the shares 30 to launch a brute-force attack on the secret data 22. Even multiple ones of the blockchains 32a-c may be purposefully designed to never exceed the requisite minimum number M.sub.Min 60 of the shares 30, perhaps thus forcing a hacker to compromise several or all of the blockchains 32a-c. A rogue attack, in simple words, would have to access and compromise multiple blockchains 32 before jeopardizing the secret data 22 contained within the electronic document 20.
(17) Exemplary embodiments thus present an elegant solution. Sensitive, secret documents (containing the secret data 22) may be secretly shared via the one or more blockchains 32a-c. Even if the blockchains 32a-c are dispersed to trusted peer devices, the peer devices still cannot discern the secret data 22 until the threshold minimum number M.sub.Min 60 of the shares 30 is obtained. Exemplary embodiments thus purposefully add a second-layer of protection, beyond merely trusted receipt of the blockchain 32. The trusted peers simply do not have access to the secret data 22 until the minimum number M.sub.Min 60 of the shares 30 is obtained.
(18) Any secret sharing scheme may be utilized. The reader is perhaps familiar with Shamir's Secret Sharing Algorithm, which is a well-known cryptographic algorithm. Exemplary embodiments divide the secret data 22 into unique parts (e.g., the shares 30), with each individual share 30 being different from other shares 30. However, there are many secret sharing or splitting schemes and algorithms for distributing a secret, and exemplary embodiments may be applied regardless of any particular scheme or algorithm.
(19)
(20) Exemplary embodiments may be applied regardless of networking environment. Exemplary embodiments may be easily adapted to stationary or mobile devices having cellular, wireless fidelity (WI-FI®), near field, and/or BLUETOOTH® capability. Exemplary embodiments may be applied to mobile devices utilizing any portion of the electromagnetic spectrum and any signaling standard (such as the IEEE 802 family of standards, GSM/CDMA/TDMA or any cellular standard, and/or the ISM band). Exemplary embodiments, however, may be applied to any processor-controlled device operating in the radio-frequency domain and/or the Internet Protocol (IP) domain. Exemplary embodiments may be applied to any processor-controlled device utilizing a distributed computing network, such as the Internet (sometimes alternatively known as the “World Wide Web”), an intranet, a local-area network (LAN), and/or a wide-area network (WAN). Exemplary embodiments may be applied to any processor-controlled device utilizing power line technologies, in which signals are communicated via electrical wiring. Indeed, exemplary embodiments may be applied regardless of physical componentry, physical configuration, or communications standard(s).
(21) Exemplary embodiments may utilize any processing component, configuration, or system. Any processor could be multiple processors, which could include distributed processors or parallel processors in a single machine or multiple machines. The processor can be used in supporting a virtual processing environment. The processor could include a state machine, application specific integrated circuit (ASIC), programmable gate array (PGA) including a Field PGA, or state machine. When any of the processors execute instructions to perform “operations”, this could include the processor performing the operations directly and/or facilitating, directing, or cooperating with another device or component to perform the operations.
(22) Exemplary embodiments may packetize. The server 26 and the recipient peer devices may have network interfaces to the communications network 34, thus allowing collection and retrieval of information. The information may be received as packets of data according to a packet protocol (such as the Internet Protocol). The packets of data contain bits or bytes of data describing the contents, or payload, of a message. A header of each packet of data may contain routing information identifying an origination address and/or a destination address.
(23)
(24) Hashing adds another layer of security. Exemplary embodiments may call or execute the hashing algorithm 82 that generates the hash values 80 (e.g., the hash tree 86 and the root 88) associated with the electronic document 20. There are many hashing algorithms, and exemplary embodiments may utilize any of the hashing algorithms. For example, many readers may be familiar with the SHA family of cryptographic hashing algorithms. Moreover, the hash tree 86 may be described as the Merkle tree, which many readers are also thought familiar. Regardless, once the hash values 80 are determined, exemplary embodiments may split the hash values 80 into the shares 30 for integration into the one or more blockchains 32. That is, the shares 30 may be added to, or incorporated in, any record, transaction, or block and distributed via the blockchain(s) 32.
(25)
(26)
(27)
where the total number N.sub.S 92 of the shares 30 is ten thousand (10,000) times the number N.sub.B 94 of blockchains 32 that must be used. Again, as a simple example, if the electronic document 20 is associated with one million (1,000,000) shares 30, then one hundred (100) different blockchains 32 must be generated and distributed. The sharing strategy 90, in other words, may set a maximum number N.sub.Smax (illustrated as reference numeral 96) of shares 30 integrated into any single blockchain 32. The sharing strategy 90, in other words, may thus limit the number of the shares 30 exposed by any individual blockchain 32.
(28)
(29)
where the total number N.sub.R 98 of the recipients is one hundred (100) times the number N.sub.B 94 of blockchains 32 that must be used. Again, as a simple example, if there are ten thousand recipients, then one hundred (100) different blockchains 32 must be generated and distributed. The sharing strategy 90, in other words, may set a maximum number N.sub.Rmax (illustrated as reference numeral 100) of recipients per blockchain 32. The sharing strategy 90, in other words, may thus limit the number of the shares 30 exposed by any individual blockchain 32.
(30) The sharing strategy 90 may be implemented as logical rules. If the sharing strategy 90 is mathematically defined (such as the ratio above discussed), the sharing strategy 90 may be expressed as logical statements involving mathematical expressions. Exemplary embodiments may code or program the sharing strategy 90 to achieve policy goals and/or security objectives.
(31)
(32)
(33)
(34)
(35) Exemplary embodiments may be applied to any signaling standard. Most readers are thought familiar with the Global System for Mobile (GSM) communications signaling standard. Those of ordinary skill in the art, however, also recognize that exemplary embodiments are equally applicable to any communications device utilizing the Time Division Multiple Access signaling standard, the Code Division Multiple Access signaling standard, the “dual-mode” GSM-ANSI Interoperability Team (GAIT) signaling standard, or any variant of the GSM/CDMA/TDMA signaling standard. Exemplary embodiments may also be applied to other standards, such as the I.E.E.E. 802 family of standards, the Industrial, Scientific, and Medical band of the electromagnetic spectrum, BLUETOOTH®, and any other.
(36) Exemplary embodiments may be physically embodied on or in a computer-readable storage medium. This computer-readable medium, for example, may include CD-ROM, DVD, tape, cassette, floppy disk, optical disk, memory card, memory drive, and large-capacity disks. This computer-readable medium, or media, could be distributed to end-subscribers, licensees, and assignees. A computer program product comprises processor-executable instructions for sharing secrets via blockchains, as the above paragraphs explained.
(37) While the exemplary embodiments have been described with respect to various features, aspects, and embodiments, those skilled and unskilled in the art will recognize the exemplary embodiments are not so limited. Other variations, modifications, and alternative embodiments may be made without departing from the spirit and scope of the exemplary embodiments.