A Distributed Key Recovery Method, System, and Medium
By splitting and distributing the key to multiple servers, using distributed technology and cryptography principles, a single point of failure and trust problem when key loss is solved, and efficient and secure key recovery is achieved.
Patent Information
- Application Number
- CN202510428829.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-08
- Publication Date
- 2025-08-01
- Estimated Expiration
- 2045-04-08
AI Technical Summary
In the prior art, when the key is lost or damaged, there is a single point of failure risk and the need for trust for third parties, making it difficult to provide an effective recovery solution while ensuring the security of the key.
By dividing the key into multiple parts and distributing it to different servers, using distributed technology and cryptography principles, using modular operations to protect secret values, and achieving secure recovery of keys.
Enhanced fault tolerance of the system, reduce dependence on a single entity, improve the security and efficiency of key recovery, and reduce the risk of unauthorized access and theft.
Smart Images

Figure CN119945678B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of information security technology, and more specifically, to a distributed key recovery method, system, and medium. Background Art
[0002] The key is the most important part of an encryption system, which directly determines the security of encryption. Once the key is lost or damaged, the corresponding encrypted data cannot be interpreted.
[0003] However, in practical applications, due to reasons such as hardware failures, software errors, and user misoperations, the situation of key loss occurs frequently, and malicious attackers may also try to steal or destroy the key to achieve the purpose of illegal access. Therefore, it is crucial to provide an effective key recovery scheme while ensuring the security of the key.
[0004] Currently, key recovery is mainly achieved through key escrow, that is, a trusted third party (such as a key escrow service) stores the key backup of the user; when key recovery is required, the user can obtain the key from the third party by verifying their identity. The advantage of this method is that it can effectively address the problem of key loss, but at the same time, there are risks of single-point failures and the need for trust in the third party.
[0005] Therefore, how to overcome the above deficiencies is an urgent problem for those skilled in the art to solve. Summary of the Invention
[0006] In view of this, the present invention provides a distributed key recovery method, system, and medium. By mainly using distributed technology and cryptography principles, the key is split into multiple parts and distributed to different participants, which not only enhances the fault tolerance of the system but also reduces the dependence on a single entity.
[0007] To achieve the above object, the present invention adopts the following technical solutions:
[0008] On the one hand, the present application provides a distributed key recovery method, and the steps include,
[0009] Construct a secret value according to the key;
[0010] Determine the prime numbers for splitting the secret value, and calculate the corresponding shares for each prime number in combination with the secret value;
[0011] Distribute each prime number and its corresponding share to different servers;
[0012] When the key needs to be recovered, obtain the prime numbers and their corresponding shares stored in each server based on authentication to achieve key recovery.
[0013] Preferably, constructing a secret value according to the key includes:
[0014] A secret value is determined based on the user's initial prime number m0 and share b0, with the secret value having the key as the high bit.
[0015] As a preferred method, determine the prime numbers that divide the secret value, and calculate the corresponding shares of each prime number based on the secret value. The calculation formula is:
[0016]
[0017] Where s is the secret value, m i represents the segmentation prime number, b i Represents the segmentation prime number m i The corresponding share, n represents the number of split prime numbers.
[0018] This application can effectively protect the secret value s by using the share calculated by modular operation;
[0019] As a preference, the split prime number m i The following relationship is satisfied to ensure that all delegate servers and users participate in the recovery of the secret s:
[0020]
[0021] Where n represents the number of segmentation primes.
[0022] Preferably, the prime numbers and corresponding shares stored in each server are obtained based on authentication to achieve key recovery, including:
[0023] According to the prime number m j The key recovery parameter tuple (M, M j , M j -1 ); the prime number m j Including the initial prime number m0 and the prime number m stored in each server i ;
[0024] ;
[0025] Based on the recovery parameter tuple (M, M j , M j -1 ) and share b j Determine the secret value to be recovered according to the following formula ; the share b j Including the initial share b0 and the prime number m stored in each server i The corresponding share b i ;
[0026]
[0027] extract Middle and high positions, determine the key.
[0028] On the other hand, the present application provides a distributed key recovery system, which applies the distributed key recovery method as described above, and specifically includes:
[0029] A secret value generation unit, configured to construct a secret value according to the key;
[0030] A distributed key generation unit, configured to determine the secret value splitting prime numbers, and calculate the corresponding shares of each prime number in combination with the secret value;
[0031] A distributed key distribution unit, configured to distribute each prime number and the corresponding share to different servers;
[0032] A key recovery unit, configured to, when the key needs to be recovered, obtain the prime numbers and the corresponding shares stored in each server based on authentication, and implement key recovery.
[0033] Preferably, the distributed key generation unit randomly generates the splitting prime numbers according to the following formula
[0034]
[0035] Preferably, the distributed key generation unit calculates the corresponding shares of each prime number according to the following formula:
[0036]
[0037] In the formula, s is the secret value, m i represents the splitting prime number, b i represents the share corresponding to the splitting prime number m i and n represents the number of splitting prime numbers.
[0038] On yet another aspect, the present invention further provides a storage medium, on which one or more programs readable by a computing device are stored, and the one or more programs include instructions, and when the instructions are executed by the computing device, the computing device is caused to execute the distributed key recovery method as described above.
[0039] The present invention discloses a distributed key recovery method, system and medium. Compared with the prior art, the present application no longer completely relies on a single trusted third party, but jointly maintains the security of the key through multiple servers, reducing the trust requirement for any single entity;
[0040] At the same time, the identity authentication during key recovery effectively prevents unauthorized access and key theft.
[0041] Other features and advantages of the present invention will be set forth in the following description, and in part will be obvious from the description, or may be learned by practice of the present invention. The objectives and other advantages of the present invention may be realized and attained by the structure particularly pointed out in the written description and the drawings.
[0042] The technical solutions of the present invention will be further described in detail below with reference to the drawings and embodiments. BRIEF DESCRIPTION OF THE DRAWINGS
[0043] In order to more clearly illustrate the technical solutions in the embodiments of the present invention or in the prior art, the following will briefly introduce the drawings required for the description of the embodiments or the prior art. Obviously, the drawings in the following description are only embodiments of the present invention. For those of ordinary skill in the art, other drawings can be obtained based on the provided drawings without creative efforts.
[0044] Figure 1 It is a flowchart of the distributed key recovery method provided by the present invention. DETAILED DESCRIPTION OF THE EMBODIMENTS
[0045] The following will clearly and completely describe the technical solutions in the embodiments of the present invention with reference to the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, rather than all the embodiments. All other embodiments obtained by those of ordinary skill in the art based on the embodiments of the present invention without creative efforts belong to the scope of protection of the present invention.
[0046] Many specific details are set forth in the following description in order to fully understand the present invention. However, the present invention can also be implemented in other ways different from those described herein. Those skilled in the art can make similar extensions without departing from the connotation of the present invention. Therefore, the present invention is not limited by the specific embodiments disclosed below.
[0047] Embodiment 1:
[0048] As Figure 1 , the embodiment of the present invention discloses a distributed key recovery method. Through innovative key construction, splitting, and recovery methods, it not only solves the single-point failure and trust problems in the prior art, but also introduces higher security and efficiency, with significant practical value and broad application prospects. [[ID=2⑨]]
[0049] The key recovery steps of this application refer to Figure 1 . Specifically,
[0050] S1. Construct a secret value according to the key,
[0051] This application determines a secret value based on the user's initial prime number and share, and the high - order part of the secret value is the key. That is, if the user's initial prime number is m0, then it is necessary to satisfy that the share b0 held by the user is b0 = s mod m0, where b0 is some characteristic value of the user or a string of numbers that are difficult to forget for later key recovery, s is the secret value, s can be regarded as the concatenation of the key key and s0, and there is an arithmetic formula s = key * 10^m + s0, where m represents the number of bits to shift key to the left to ensure the normal concatenation of key and s0.
[0052] The purpose of this application is to calculate a low - order s0, so that after concatenating it with the high - order key key, the secret value s is obtained, satisfying b0 = s mod m0.
[0053] S2. Determine the prime number m for splitting the secret value i , and calculate the corresponding share b for each prime number according to the following formula in combination with the secret value s i ;
[0054]
[0055] In the formula, 1 ≤ i ≤ n.
[0056] S3. Distribute each prime number and its corresponding share to different servers for storing the shares of corresponding users;
[0057] That is, the user secretly sends the n calculated shares b1, b2,..., b n and the corresponding prime numbers m1, m2,..., m n to the n servers in the system respectively, and the servers store the shares and prime numbers in the database;
[0058] In this embodiment, when n servers are required to recover the key, each server needs a prime number m for splitting s i , and it satisfies:
[0059]
[0060] In the formula, n represents the number of prime numbers for splitting.
[0061] S4. When the key needs to be recovered, obtain the prime numbers and their corresponding shares stored in each server based on identity authentication, calculate the secret s, and further obtain the key to complete the secure recovery of the key.
[0062] In this embodiment, the user can communicate with the n servers in the system through personal biometric features or other information and complete two - way authentication; to ensure the security and reliability of the n servers, so that the servers can accurately send the shares corresponding to the key to the user during the subsequent recovery process.
[0063] In one embodiment, the user first determines whether the secret key is lost. If not, encryption and decryption are performed normally. If the key is accidentally lost, the key recovery is performed according to the following steps:
[0064] First, send verification information to n servers in the system. After passing the verification, the servers will send n shares b1, b2,..., b n and the corresponding prime numbers m1, m2,..., m n back to the user;
[0065] The user uses n shares b1, b2,..., b n and the corresponding prime numbers m1, m2,..., m n and the user's initial share b0 and prime number m0 to execute:
[0066] ]>
[0067] In the formula, represents the recovered secret value, b j represents the j-th split prime number m j corresponding share, and
[0068] ;
[0069] In this embodiment, the initial share b0 and prime number m0 are stored on the user side.
[0070] Furthermore, by cutting off the low-order s0 of the calculated value the required secret key key can be obtained.
[0071] In an exemplary embodiment, assume that the user needs to securely store the secret key key = 123, and the user hopes that his prime number is 71 and the share is 66. Then a secret s = 12349 can be constructed such that 12349 mod 71 = 66;
[0072] Assume that there are 2 servers in total for protecting the secret key key. Then set the prime numbers for these 2 servers to 11 and 17, such that 11 * 17 * 71 = 13277 ≥ 12349;
[0073] The user sends a communication request to the 2 servers in the system and uses other information such as personal biometrics to complete two-way authentication with the servers in the system to ensure that these 2 servers are secure and reliable and that the servers accurately send the corresponding shares of the key to the user during the subsequent recovery process;
[0074] The user calculates the shares for the two servers in the system as: 12349 mod 11 = 7, 12349 mod 17 = 7. The user secretly sends (7, 11) to the first server and (7, 17) to the second server. The servers save these data separately.
[0075] The user determines whether the key is lost. If the key is not lost, encryption and decryption are performed normally; if it is accidentally lost, key recovery is performed. First, verification information is sent to two servers in the system. After verification, the first server sends (7,11) to the user, and the second server sends (7,17) to the user.
[0076] The user uses (66, 71), (7, 11), (7, 17) to calculate:
[0077]
[0078] The calculated value Cut off the low-order s0 to obtain the required secret key key = 123.
[0079] This invention securely stores keys by constructing secret values through distributed storage, and securely uses keys through the user's biometric identification. This invention can be applied to key recovery or key update modules for various ciphertext systems, effectively reducing the difficulty of recovering keys after a user loses them and further reducing the risk of data being illegally used.
[0080] Example 2:
[0081] The present application provides a distributed key recovery system, which applies the above-mentioned distributed key recovery method and specifically includes:
[0082] A secret value generating unit, configured to construct a secret value according to a key;
[0083] A distributed key generation unit, used to determine the prime numbers that divide the secret value, and calculate the shares corresponding to each prime number based on the secret value;
[0084] A distributed key distribution unit, used to distribute each prime number and corresponding share to different servers;
[0085] The key recovery unit is used to obtain the prime numbers and corresponding shares stored in each server based on authentication when the key needs to be recovered to achieve key recovery.
[0086] For the above-mentioned distributed key recovery system of the present invention, its implementation principle and the resulting technical effects are the same as those of the embodiments of the foregoing distributed key recovery method. For the sake of brief description, for the parts not mentioned in this embodiment, reference may be made to the corresponding content in the foregoing method embodiments, and details will not be repeated here.
[0087] Embodiment 3:
[0088] The embodiment of the present invention further provides a storage medium, on which one or more programs readable by a computing device are stored. The one or more programs include instructions that, when executed by the computing device, cause the computing device to execute a distributed key recovery method in Embodiment 1.
[0089] Examples of the computer-readable storage medium here include: read-only memory (ROM), programmable read-only memory (PROM), electrically erasable programmable read-only memory (EEPROM), random access memory (RAM), dynamic random access memory (DRAM), static random access memory (SRAM), flash memory, non-volatile memory, CD-ROM, DVD-ROM, Blu-ray or optical disc memory, hard disk drive (HDD), solid state drive (SSD), cartridge memory (such as multimedia card, secure digital (SD) card or extreme digital (XD) card), magnetic tape, floppy disk, magneto-optical data storage device, optical data storage device, hard disk, solid state disk, and any other device configured to store a computer program and any associated data, data files, and data structures in a non-transitory manner and provide the computer program and any associated data, data files, and data structures to a processor or computer such that the processor or computer can execute the computer program. The computer program in the above computer-readable storage medium can run in an environment deployed in computer devices such as clients, hosts, proxy devices, servers, etc. In addition, in one example, the computer program and any associated data, data files, and data structures are distributed on a networked computer system or cloud platform such that the computer program and any associated data, data files, and data structures are stored, accessed, and executed in a distributed manner by one or more processors or computers.
[0090] Those skilled in the art should understand that the embodiments of the present invention can be provided as a method, a system, or a computer program product, etc. Therefore, the present invention can adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware aspects. Moreover, the present invention can adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk memory, CD-ROM, optical memory, etc.) containing computer-usable program code.
[0091] It should be noted that the term "comprising" does not exclude the presence of components or steps not listed in the claims. The articles "a" or "an" preceding a component do not exclude the presence of a plurality of such components. The present invention may be implemented by means of hardware including several different components and by means of a suitably programmed computer.
[0092] The various embodiments in this specification are described in a progressive manner. Each embodiment focuses on the differences from other embodiments. For the same or similar parts among the various embodiments, reference may be made to each other. For the devices disclosed in the embodiments, since they correspond to the methods disclosed in the embodiments, the description is relatively simple. For the relevant parts, reference may be made to the description in the method part.
[0093] The above description of the disclosed embodiments enables those skilled in the art to implement or use the present invention. Various modifications to these embodiments will be obvious to those skilled in the art. The general principles defined herein can be implemented in other embodiments without departing from the spirit or scope of the present invention. Therefore, the present invention will not be limited to the embodiments shown herein, but rather to the broadest scope consistent with the principles and novel features disclosed herein.
Claims
1. A distributed key recovery method, characterized in that: Construct a secret value according to the key; determine the secret value according to the user's initial prime number m0 and share b0, and the secret value takes the key as the high-order bit; Determine the secret value splitting prime numbers, and calculate the corresponding shares of each prime number in combination with the secret value; The calculation formula is: b i = s mod m i , 1 ≤ i ≤ n Where s is the secret value, m i represents the splitting prime number, b i represents the share corresponding to the splitting prime number m i and n represents the number of splitting prime numbers; Distribute each prime number and its corresponding share to different servers; When the key needs to be recovered, obtain the prime numbers and their corresponding shares stored in each server based on authentication to achieve key recovery, including: According to prime number m j Calculate the key recovery parameter tuple (M, M j , M j -1 ) according to the following formula; the prime number m j includes the initial prime number m0 and the prime number m stored in each server i , and; Based on the recovery parameter tuple (M, M j , M j -1 ) and the share b j , determine the secret value s' to be recovered according to the following formula; the share b j includes the initial share b0 and the share b i corresponding to the prime number m i stored in each server; s′ is the recovered secret value, j is the prime number m j and the corresponding share b j index of; Extract the high-order bit in the secret value s′ to determine the key.
2. The key recovery method according to claim 1, characterized in that Segmented prime number m i Satisfies the following relational expression:
3. A distributed key recovery system, characterized in that, Applying the distributed key recovery method according to any one of claims 1-2, the system includes: A secret value generation unit for constructing a secret value according to the key; A distributed key generation unit for determining the secret value splitting prime numbers and calculating the corresponding shares of each prime number in combination with the secret value; A distributed key distribution unit for distributing each prime number and its corresponding share to different servers; A key recovery unit for obtaining the prime numbers and their corresponding shares stored in each server based on authentication to achieve key recovery when the key needs to be recovered.
4. The key recovery system according to claim 3, wherein The distributed key generation unit randomly generates the splitting prime numbers according to the following formula, Wherein, m0 is the initial prime number, n represents the number of segmented prime numbers, and m i represents that the segmented prime number s is a secret value.
5. The key recovery system according to claim 3, wherein The distributed key generation unit calculates the corresponding shares of each prime number according to the following formula: b i = s mod m i , 1 ≤ i ≤ n Where s is the secret value, m i represents the splitting prime number, b i represents the share corresponding to the splitting prime number m i and n represents the number of splitting prime numbers.
6. A storage medium having stored thereon one or more programs readable by a computing device, characterized in that: The one or more programs include instructions that, when executed by a computing device, cause the computing device to execute a distributed key recovery method according to any one of claims 1-2.
Citation Information
Patent Citations
Embedding a secret in a larger polynomial
US20100046740A1