Binary-Tree Zero-Knowledge Proofs for Faster, Smaller Signatures
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing zero-knowledge proof methods based on MPC-in-the-Head and VOLE-in-the-Head suffer from slow signing and verification speeds and large signature sizes, necessitating improvements to reduce time, resources, and signature size.
Innovation Solution
A method, apparatus, and computer program utilizing a binary tree configuration with XOR operations and secret key injection to optimize zero-knowledge proof, specifically using a Goldreich-Goldwasser-Micali tree, to enhance speed and reduce signature size.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If zero-knowledge proof is performed based on MPC-in-the-Head or VOLE-in-the-Head, then security is ensured by relying only on the safety of the block cipher, but the signature size becomes larger and the signing and verification speed becomes slow
Solution Approach 1:
The patent segments the secret key into multiple shares and distributes them to different virtual machines. Each virtual machine performs a portion of the zero-knowledge proof computation independently, allowing parallel processing that significantly improves signing and verification speed while maintaining security through the distributed key shares
Solution Approach 2:
The patent introduces a binary tree structure as an intermediary mechanism to organize and manage the secret key shares across multiple virtual machines. The binary tree enables efficient aggregation and verification of partial proofs from different virtual machines, improving overall proof generation speed without compromising security
2Reliability
If zero-knowledge proof is performed based on MPC-in-the-Head or VOLE-in-the-Head, then security is ensured by relying only on the safety of the block cipher, but the signature size becomes larger
Solution Approach 1:
The patent segments the signature into multiple components corresponding to different virtual machines and tree levels. This segmentation allows for more compact representation of the signature data, reducing the overall signature size while maintaining the security properties provided by the distributed key shares and binary tree structure
3Productivity
If the number of virtual machines is increased to improve parallel processing, then the speed of zero-knowledge proof improves, but the time and resources required for proof increases
Solution Approach 1:
The patent performs preliminary setup of the binary tree structure and secret key distribution before the actual zero-knowledge proof is executed. This preliminary action organizes the computational workload in advance, allowing subsequent proof generation to proceed efficiently with minimal additional setup time, thus improving proof speed without proportionally increasing total time and resources
Solution Approach 2:
The patent organizes virtual machines and computational tasks in a hierarchical binary tree structure rather than a flat parallel arrangement. This dimensional organization allows for more efficient resource utilization and faster aggregation of partial proofs, improving proof speed while reducing the overall computational overhead compared to simple parallel processing
Data Source
Figure 1
Figure 2
Figure 3
AI summary
The disclosure relates to a method, an apparatus, a system, and a computer program for zero-knowledge proof based on a binary tree, and more specifically, the disclosure discloses a method for performing zero-knowledge proof using a computing apparatus, the method including: configuring, by a signatory, based on a secret key, a binary tree comprising a second child node produced based on an XOR operation result of a first child node, among child nodes located at level N+1 (where, N ≥ 1) with respect to a parent node located at level N, and the parent node; transmitting, by the signatory, to a verifier, data for verification configured based on a plurality of nodes comprising some leaf nodes, excluding one or more leaf nodes, among all leaf nodes of the binary tree; and proving that the signatory possesses the secret key, based on the transmitted data for verification.