Blockchain-Based Joint Blind Key Escrow for Secure Credential Management
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current methods for secure credential management in the digital world, such as key escrowing, are vulnerable to impersonation risks due to reliance on third-party storage or user memory, where either loss of secrets or malicious third-party access can occur.
Innovation Solution
A computer-implemented method using a client-server network with a blockchain system to securely escrow and retrieve private keys or passwords, employing cryptographic blinding, digital signatures, and double-encryption to prevent unauthorized access, ensuring the correctness and uniqueness of public keys and avoiding reliance on passwords.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If a third party is used to store secret data, then the user does not need to memorize or store the secret data themselves, but the third party could impersonate the user and access secret data if they are malicious or hacked
Solution Approach 1:
The secret data is divided into multiple shares using secret sharing schemes, where no single party (including the third party server) can reconstruct the complete secret alone. The secret is segmented across multiple components that require collaboration to recover, preventing impersonation by any single entity.
Solution Approach 2:
A trusted third party server acts as an intermediary that facilitates secure secret sharing and recovery without having access to the complete secret. The server mediates between users and their secret data, enabling convenient storage and retrieval while maintaining security through cryptographic protocols that prevent the server from learning the secret.
2Reliability
If the user memorizes or stores secret data themselves, then no trust on third parties is needed, but the system has vulnerabilities when the user loses or forgets the secret value
Solution Approach 1:
Different parts of the secret sharing system have different security properties. The user retains local control over their secret shares, while the third party server provides centralized recovery capabilities. This local quality differentiation allows users to maintain security while enabling recovery through the server's assistance.
Solution Approach 2:
The system performs preliminary secret sharing before any potential loss or forgetfulness occurs. By pre-dividing the secret into shares and distributing them, the system prepares recovery mechanisms in advance, so that if the user loses their secret, they can recover it through the predetermined sharing scheme without needing to remember the complete secret.
3Loss of information
If a Key Recovery Agent is used to escrow encryption keys, then encrypted data can be recovered, but the Key Recovery Agent can unilaterally recover and impersonate the owner of the encrypted data
Solution Approach 1:
The encryption key recovery capability is segmented so that no single entity (including the Key Recovery Agent) can unilaterally recover the complete key. The key is divided into multiple shares that require collaboration among multiple parties, preventing the Key Recovery Agent from impersonating the data owner alone.
Solution Approach 2:
The system implements asymmetric roles where the Key Recovery Agent has limited recovery capabilities but lacks the authority to impersonate the data owner. The cryptographic design creates asymmetric permissions where recovery is possible only through specific collaborative protocols that prevent unauthorized impersonation.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A computer-implemented method for escrowing secret data in a server of a client-server network, the client-server network comprising: a first client having at least one public and private client key pairs, at least one trusted client having at least one public and private trusted client key pairs, a server having a public and private server key pairs, a blockchain system comprising a plurality of nodes which are configured to store the public keys of the elements of the client-server network. It is also described a computer-implemented method for obtaining secret data of a server wherein the secret data is escrowed with the above computer-implemented method for escrowing secret data in a server. System, computer-readable mediums and computer programs, which are configured to implement or perform said computer-implemented methods, are also described.