Lattice-Based Digital Signature Batch Verification
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Early lattice-based signature schemes leak private key information in message/signature transcripts, and existing schemes do not efficiently support signature aggregation and batch verification, leading to increased computational costs and signature size.
Innovation Solution
A method using Gaussian sampling and rejection sampling techniques to generate digital signatures, allowing for efficient batch verification by leveraging a public key and private key relationship, where signatures are validated through modulo operations and iterative noise polynomial generation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If early lattice-based signature schemes are used, then digital signatures can be generated, but private key information leaks in message/signature transcripts
Solution Approach 1:
The patent extracts and removes the problematic transcript leakage property from the signature scheme by implementing rejection sampling that ensures signatures are distributed according to a public distribution independent of the private key. This separates the signature generation process from private key information exposure.
Solution Approach 2:
The patent introduces rejection sampling as an intermediary mechanism between the private key and the signature output. This intermediary process ensures that even though the signature is generated using the private key, the final output follows a public distribution that reveals no information about the private key.
2Reliability
If traditional signature verification is performed for each message individually, then signature validity can be confirmed, but computational overhead increases and efficiency decreases
Solution Approach 1:
The patent merges multiple individual signature verifications into a single batch verification operation. By combining the verification of multiple signatures simultaneously, the system maintains the accuracy of individual verification while achieving the efficiency of batch processing, reducing overall computational overhead.
Solution Approach 2:
The patent creates a universal verification mechanism that can handle both individual signature verification and batch signature verification through the same mathematical framework. The batch verification procedure serves multiple functions: verifying individual signatures, verifying groups of signatures, and maintaining security properties across different verification scenarios.
3Ease of operation
If signature aggregation is not supported, then individual signature verification is straightforward, but signature size and storage requirements increase
Solution Approach 1:
The patent merges multiple signatures into a single aggregated signature through batch verification. This combining process reduces the total quantity of signature data that needs to be stored and transmitted, while the verification simplicity is maintained through the unified batch verification procedure that checks all signatures simultaneously.
Data Source
AI summary
A method is set forth for signing and subsequently verifying a plurality of digital messages, including the following steps implemented using at least one processor-based subsystem: selecting parameters including an integer q, a relatively smaller integer p that is coprime with q, and a Gaussian function parameter; generating random polynomial f relating to p and random polynomial g relating to q; producing a public key that includes h, where h is equal to a product that can be derived using g and the inverse of f mod q; producing a private key from which f and g can be derived; storing the private key and publishing the public key; producing a plurality of message digests by hashing each of the digital messages with the public key; for each message digest, producing a digital signature using the message digest, the private key, and a Gaussian noise polynomial related to the Gaussian function parameter; and performing a batch verification procedure utilizing the plurality of digital signatures and the public key to determine whether the digital signatures are valid.


