Shared Private Key Generation via Secret Sharing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing technologies face challenges in generating a series of shared private keys to prevent key reuse and enable key recovery, while maintaining security by not revealing the master private key.
Innovation Solution
A computer-implemented method where a coordinator generates a master private key based on a seed value, splits it into shares using a secret sharing scheme, and distributes these shares to participants. Each participant then generates shares of child private keys using the master private key share and additional hash-based components.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If a master private key is distributed amongst participants to enable shared key generation, then key recovery and series generation are enabled, but the risk of key exposure and security compromise increases
Solution Approach 1:
The master private key is segmented into multiple shares using secret sharing schemes (e.g., Shamir's Secret Sharing). Each participant receives only a share rather than the complete key, enabling key recovery when threshold shares combine while maintaining security since no single share reveals the master key. This directly resolves the contradiction by allowing versatility without increasing exposure risk.
Solution Approach 2:
A coordinator acts as an intermediary to manage the distribution of key shares and facilitate child key generation. The coordinator enables participants to generate child private key shares without ever exposing the master private key, thus providing key recovery capability while maintaining security through the intermediary's controlled distribution process.
2Productivity
If child private keys are generated from the master private key to prevent key reuse, then key series generation is enabled, but the complexity of key management increases
Solution Approach 1:
The system performs preliminary action by pre-distributing master key shares to participants before any child key generation is needed. This allows participants to independently generate child private key shares using their pre-held shares and public key information, enabling efficient key series generation without increasing management complexity during actual use.
Solution Approach 2:
The master private key shares serve multiple functions: they enable generation of any number of child private key shares, support key recovery, and facilitate threshold signature operations. This multi-functionality allows the system to generate key series efficiently without requiring separate mechanisms for each function, thereby reducing overall management complexity.
3Object-affected harmful factors
If the master private key is kept secret to maintain security, then security is maintained, but the ability to generate child keys and recover keys is compromised
Solution Approach 1:
The master private key is segmented into shares that are distributed to participants. The coordinator retains the ability to combine shares for key recovery while participants use their shares to generate child keys. This segmentation maintains security by never exposing the complete master key while enabling both key generation and recovery capabilities through coordinated share combination.
Solution Approach 2:
The coordinator serves as an intermediary that enables child key generation and master key recovery without requiring participants to possess or expose the complete master private key. The coordinator facilitates these operations by collecting necessary shares and performing computations, thus maintaining security protection while providing adaptability for key generation and recovery.
Data Source
AI summary
A computer-implemented method of generating shares of child private keys, and wherein the method is performed by a first participant of the group and comprises:receiving, from a coordinator, a first share of a master private key, wherein the master private key is generated based on a first portion of a hash of a seed value;receiving, from a coordinator, a master chain code for the master private key, wherein the master chain code is generated based on a second portion of the hash of the seed value;receiving, from a coordinator, a master public key corresponding to the master private key;generating one or more first shares of one or more respective child private keys, wherein each first share of the respective child private key is generated based on the first share of the master private key, and a first portion of a hash of i) the master chain code, ii) the master public key and iii) a respective key index.


