Bilinear Pairing Delegation with Verifiable Proof Values
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing cryptographic protocols that utilize bilinear pairings face challenges in securely delegating the calculation of these values to a calculation server, as the verifiability of the bilinear pairing value supplied by the server is crucial for security, but current methods are inefficient, requiring many exponentiations and lacking in resource efficiency.
Innovation Solution
A method is proposed where a trusted entity selects public and secret elements, generates specific values, and transmits them to a calculation server to perform efficient and verifiable bilinear pairing calculations, allowing the entity to verify the correctness of the pairing value with minimal exponentiations, using values a1 and a2 derived from the server's calculations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If bilinear pairing calculation is delegated to a calculation server, then calculation efficiency is improved, but security and verifiability are worsened
Solution Approach 1:
The patent implements a feedback mechanism where the trusted entity receives proof values from the calculation server and verifies them against expected results. The entity can detect incorrect calculations through this feedback loop, ensuring that the delegation to an untrusted server does not compromise security. The verification process provides continuous feedback to ensure the server performs calculations correctly.
Solution Approach 2:
The patent introduces proof values as an intermediary element between the trusted entity and the calculation server. These proof values act as a mediator that carries verification information from the server back to the entity, enabling the entity to verify the correctness of calculations without needing to trust the server directly. This intermediary mechanism resolves the contradiction by enabling verification through a third element.
2Reliability
If verification mechanism is implemented, then security is improved, but computational complexity is worsened
Solution Approach 1:
The patent extracts the verification burden from the trusted entity by having the calculation server compute and return proof values. Instead of requiring the entity to perform complex verification calculations, the verification logic is taken out and executed by the server, which then provides the results to the entity. This reduces the computational complexity for the entity while maintaining security.
Solution Approach 2:
The patent implements partial verification where the entity only needs to verify specific proof values returned by the server rather than reperforming the entire bilinear pairing calculation. This partial action approach reduces computational complexity significantly while still providing adequate security verification for the delegated calculation.
3Reliability
If proof values are transmitted, then verifiability is improved, but communication overhead is worsened
Solution Approach 1:
The patent applies local quality by having the server compute and return only the specific proof values that are necessary for verification, rather than transmitting all intermediate calculation data. The proof values are locally optimized to provide maximum verification capability with minimum communication overhead, containing only the essential information needed for the entity to verify the calculation.
Data Source
AI summary
One embodiment relates to a method for enabling an entity to delegate calculation of a bilinear pairing value e(A,B) between two values A and B to a calculation server. The entity may select public elements P1 and P2 and secret elements S1 and S2, two of the elements from among P1, P2, S1, and S2 being selected to be equal to A and B, generate elements R1=vS1, R2=uS2, T1=uP1+S1, T2=vP2=S2, where u and v are random numbers, and transmit R1, R2, T1, and T2 to the calculation server. The server may calculate (a1)y=e(T1,T2)[e(R1,P2)e(P1,R2)]−1, and (a2)z=e(D1,D2), y and z designating two integers equal to 1 or to an integer c, D1 and D2 designating two public elements from among A and B or from among R1 and R2 and transmit a1 and a2 to the entity. The entity may obtain the value e(A,B) from a1 or a2.


