RSA Signature Synchronization via Sliding Window Offset
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing secure multi-party computation (SMC) signature processes using RSA with floating exponents are vulnerable to device cloning attacks and sensitive to desynchronization, which can lead to failed signature generation when client and server devices lose synchronization.
Innovation Solution
A method where the client and server devices use dynamic offsets and shift values to generate RSA signature parts, with a 'sliding window' mechanism to recover synchronization and protect against cloning attacks by iteratively adjusting their values and counters to ensure successful signature generation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If floating exponent technique is used to prevent device cloning attacks, then security against cloning is improved, but sensitivity to device desynchronization increases causing signature generation failures
Solution Approach 1:
The patent implements dynamic offset values that are updated iteratively during signature generation. The client and server devices dynamically adjust their offset values based on feedback from signature verification attempts, allowing the system to adapt to desynchronization conditions while maintaining security through the floating exponent technique.
Solution Approach 2:
The patent employs a feedback mechanism where the server device provides information to the client device about signature generation success or failure. Based on this feedback, both devices iteratively update their dynamic offset values to achieve synchronization, thereby resolving the contradiction between security and operational success rate.
2Reliability
If dynamic offsets are updated at each transaction to prevent cloning, then security is improved, but device synchronization becomes more difficult to maintain
Solution Approach 1:
The patent enables devices to automatically maintain synchronization through self-service mechanisms. The client and server devices independently compute and update their dynamic offset values based on shared secret information and iterative feedback, eliminating the need for complex external synchronization protocols or manual intervention.
3Ease of operation
If iterative retry mechanism is implemented to handle desynchronization, then signature generation success rate is improved, but processing time increases
Solution Approach 1:
The patent implements a limited iterative retry mechanism where devices perform a predetermined number of offset adjustment attempts. This partial action approach balances the need for successful signature generation with time constraints, allowing sufficient retries to handle desynchronization while preventing excessive processing delays.
Data Source
Figure 1~2
Figure 3a~3b
Figure 4~5
AI summary
The present invention relates to a method of secure generation by a client device and a server device of an RSA signature of a message to be signed with a private exponent component d of an RSA key (p, q, N, d, e), wherein said client device stores a client device private exponent component dA, a client value, and a client dynamic offset, and said server device stores a server device private exponent component dB, where dB = d - dA modulo phi(N), a server value, a server dynamic offset and a failure counter, comprising: a. receiving from the client device a client part of said RSA signature (HS1 ) of said message to be signed, after incrementing its client value (pvA) by a first predetermined step E, from the client device private exponent component and from an updated client dynamic offset function of said client dynamic offset and of said client value, b. setting said failure counter to a first default value, c. incrementing said server value (pvB) by a second predetermined step (Ε'), d. generating a server part of said RSA signature (HS2) of said message to be signed, from the server device private exponent component and from an updated server dynamic offset function of said server dynamic offset and of said server value, e. generating said RSA signature by combining said client part of said RSA signature (HS1 ) and said server part of said RSA signature (HS2), f. checking if the generation of the RSA signature was a failure and when it was a failure, incrementing said failure counter and g\ iteratively repeating above steps c\ to f\, until said RSA signature is successfully generated or said failure counter reaches a first predetermined threshold S.