Method, device and non-transitory computer-readable medium for cryptographic computation
AssigneeWinbond Electronics Corp.
InventorUri Kaluzhny
Life of this patent
Estimating the term…
Abstract
A method, a device and a non-transitory computer-readable medium for cryptographic computation are provided. The method for computation includes: receiving, in a Montgomery multiplier circuit having a predefined block size, a pair of operands A and B and a modulus M for computation of a Montgomery product of A and B mod M; specifying a number n of blocks of the predefined block size to be used in the computation; computing a blinded modulus M′ as a multiple of the modulus M by a random factor R, M′=R*M, while selecting R so that the length of M′ is less than n times the block size by at least two bits; and operating the Montgomery multiplier circuit to compute and output the Montgomery product of A and B mod M′.
Claims12
A method for cryptographic computation, comprising:
- receiving, in a Montgomery multiplier circuit having a predefined block size, a pair of operands A and B and a modulus M for computation of a Montgomery product of A and B mod M;
- specifying a number n of blocks of the predefined block size to be used in the computation, wherein n is an integer greater than 1;
- computing a blinded modulus M′ as a multiple of the modulus M by a random factor R, while selecting R so that the length of M′ is less than n times the block size by at least two bits;
- and
- operating the Montgomery multiplier circuit to compute and output the Montgomery product of A and B mod M′.
A device for cryptographic computation, comprising:
- inputs configured to receive a pair of operands A and B and a modulus M;
- and
- a Montgomery multiplier circuit, which has a predefined block size and is configured to receive as inputs the pair of operands A and B and the modulus M and to generate an output equal to a Montgomery product of A and B mod M, using a specified number n of blocks of the predefined block size in computation of the Montgomery product, wherein n is an integer greater than 1,
- wherein the Montgomery multiplier circuit comprises a multiplier, which is configured to compute a blinded modulus M′ as a product of the modulus M with a random factor R, wherein R is selected so that the length of M′ is less than n times the block size by at least two bits, and the Montgomery multiplier circuit is operative to compute and output the Montgomery product of A and B mod M′.
A non-transitory computer-readable medium, storing instructions, wherein the instructions, when read by a programmable processor having a predefined block size, cause the processor to receive a pair of operands A and B and a modulus M for computation of a Montgomery product of A and B mod M using a specified number n of blocks of the predefined block size, to calculate a blinded modulus M′ as a multiple of the modulus M by a random factor R, while selecting R so that the length of M′ is less than n times the block size by at least two bits, and to compute and output the Montgomery product of A and B mod M′, wherein n is an integer greater than 1.
Dependencies are inferred from the claim text.