Key Generation
Generating Secure Elliptic-Curve Keys Without Exposing the Private Key
Last updated
Generating Secure Elliptic-Curve Keys Without Exposing the Private Key
Last updated
A two-party method can be used to generate a public key for elliptic-curve signing (such as ECDSA or EdDSA). This two-party approach can be used to generate a public key without either party knowing the private key . Here's how it works:
Concept of Elliptic-Curve Keys: The private key corresponds to a public key , defined as , where is the generator of the elliptic-curve group.
Objective: The goal is for party to hold a share , and party to hold a share , with the condition .
The Process of Two-Party Key Generation
Initial Step: Each party independently selects a random value: chooses and computes , and chooses and computes .
Exchange and Calculation: and exchange and respectively, and each then defines . By elliptic-curve properties, , thus generating the public key without exposing .
Addressing Security Concerns
Problem with Initial Approach: If is corrupt, it could bias by waiting for from and then choosing to manipulate .
Solution - Commitment Scheme: To prevent this, sends a commitment to , essentially a cryptographic "envelope" that hides but binds to it. After sends , reveals .
Ensuring Randomness and Security: This method ensures that and are chosen independently. If one party is honest, the result is random and secure. Neither party knows , as it's only additively shared between them.