On-Chain Distributed Key Generation With Zero-Knowledge Share Proofs

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing blockchain systems face challenges in implementing distributed key generation (DKG) protocols, which are crucial for secure and decentralized key management, especially in scenarios where peer-to-peer encrypted transmission is avoided to reduce message complexity.

Innovation Solution

A method for implementing DKG in a blockchain system involves each node generating n secret shares, encrypting and sharing these shares with other nodes, and using zero-knowledge proofs to verify the integrity of the shares. This process is conducted through on-chain contracts, ensuring transparency and security.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If peer-to-peer encrypted transmission is used for secret share distribution, then security is improved, but message complexity increases to O(n²)

Engineering Contradiction:
ImprovesecurityVSAvoidmessage complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces an on-chain contract as an intermediary to mediate the distribution of secret shares. Instead of direct peer-to-peer transmission between all node pairs, each node sends its secret shares to the on-chain contract, which then distributes them to other nodes. This reduces message complexity from O(n²) to O(n) while maintaining security through the contract's verification mechanism using zero-knowledge proofs.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If on-chain contracts are used for verification, then transparency and security are improved, but computational overhead increases

Engineering Contradiction:
ImprovesecurityVSAvoidcomputational overhead
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent applies preliminary action by having each node generate zero-knowledge proofs locally before submitting secret shares to the on-chain contract. The proofs verify the correctness of secret shares and public verification parameters in advance, allowing the contract to perform simple verification rather than complex validation. This reduces the computational overhead on the blockchain network while maintaining security.

Inventive Principle:
Principle #10Preliminary action

3Adaptability or versatility

If distributed key generation is implemented without centralized authority, then decentralization is improved, but key management complexity increases

Engineering Contradiction:
ImprovedecentralizationVSAvoidkey management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the key generation process into independent steps that can be executed by different nodes: secret share generation, local encryption, zero-knowledge proof creation, on-chain submission, and verification. Each node performs its segment independently without requiring coordination with other nodes for critical operations, reducing key management complexity while maintaining decentralization. The on-chain contract automates the distribution and verification segments.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS20250293863A1Methods for implementing distributed key generation in blockchain, systems, and nodes
Publication Date: 2025.09.18 ANT BLOCKCHAIN TECHNOLOGY (SHANGHAI) CO LTD
  • US20250293863A1 patent drawing
  • US20250293863A1 patent drawing
  • US20250293863A1 patent drawing

AI summary

A method for implementing distributed key generation in a blockchain by a blockchain node includes: generating n secret shares, retaining a share and respectively encrypting a remaining n−1 secret shares by using keys of receivers, generating a public verification parameter corresponding to a secret share of the blockchain node, generating a zero-knowledge proof indicating that the secret share of the blockchain node and the public verification parameter match, sending the secret share, the public verification parameter, and the zero-knowledge proof to an on-chain contract by using a transaction, verifying, by the on-chain contract based on the zero-knowledge proof, that the encrypted secret share and the public verification parameter match, obtaining, from contract information, a verified secret share corresponding to the blockchain node, performing decryption by using a key of the blockchain node, and calculating a private key share of the blockchain node based on a local secret share.