Patent ID: 7248700
Filing Date: 2007-07-24
Classification: G06F,H04L

Abstract:
1. A device for calculating a result of a modular exponentiation within an asymmetrical cryptosystem, n being a modulus, d being an exponent and a private key of the asymmetrical cryptosystem, c being a quantity to be subjected to the modular exponentiation, and, as a result, a quantity m is obtained which equals the modular exponentiation of c with the private key d as an exponent, comprising: means for calculating a first auxiliary quantity dp, wherein the means for calculating a first auxiliary quantity is formed to calculate the first auxiliary quantity dp as follows: wherein p is a first prime number, and wherein mod represents a modulo operation; means for calculating a second auxiliary quantity dq, wherein the means for calculating a second auxiliary quantity is formed to calculate the second auxiliary quantity dq according to the following equation: wherein q is a second prime number, wherein a product of p and q equals the modulus n; means for generating a random number (IRND); means for generating a third auxiliary quantity dp′, wherein the means for generating a third auxiliary quantity dp′ is formed to calculate the third auxiliary quantity according to the following equation: wherein IRND is a random number generated by the means for generating a random number, and wherein dp is the first auxiliary quantity calculated by the means for calculating a first auxiliary quantity; means for generating a fourth auxiliary quantity dq′, wherein dq′ is defined according to the following equation: wherein IRND is the random number generated by the means for generating a random number, and wherein dq is the second auxiliary quantity calculated by the means for calculating a second auxiliary quantity; means for generating a safety parameter T; means for generating a fifth auxiliary quantity Mp, wherein the means for generating a fifth auxiliary quantity is formed to calculate the fifth auxiliary quantity Mp according to the following equation: wherein T is a safety parameter generated by the means for generating a safety parameter, and wherein dp′ is the third auxiliary quantity calculated by the means for calculating a third auxiliary quantity; means for generating a sixth auxiliary quantity Mq, wherein the means for generating a sixth auxiliary quantity is formed to calculate the sixth auxiliary quantity Mq according to the following equation: wherein T is the safety parameter generated by the means for generating a safety parameter, and wherein dq′ is the fourth auxiliary quantity calculated by the means for calculating a fourth auxiliary quantity; means for calculating a seventh auxiliary quantity H7, wherein the means for calculating the seventh auxiliary quantity is formed to calculate the seventh auxiliary quantity H7 according to the following equation: wherein T is the safety parameter T generated by the means for generating a safety parameter, wherein Mp is the fifth auxiliary quantity calculated by the means for generating a fifth auxiliary quantity, and wherein Mq is the sixth auxiliary quantity calculated by the means for generating a sixth auxiliary quantity; means for calculating an eighth auxiliary quantity H8, wherein the means for calculating an eighth auxiliary quantity H8 is formed to calculate the eighth auxiliary quantity H8 according to the following equation: wherein T is the safety parameter T generated by the means for generating a safety parameter, wherein dp′ is the third auxiliary quantity calculated by the means for generating a third auxiliary quantity, and wherein dq′ is the fourth auxiliary quantity calculated by the means for generating a fourth auxiliary quantity; means for comparing the seventh auxiliary quantity H7 and the eighth auxiliary quantity H8, wherein the means for comparing is arranged to indicate an error if the seventh and eighth auxiliary quantities are different; and means for calculating the result of the modular exponentiation m in case no error has been indicated, wherein the means for calculating is formed to calculate the result m according to the following equation: wherein Mp is the fifth auxiliary quantity calculated by the means for generating a fifth auxiliary quantity, and wherein Mq is the sixth auxiliary quantity calculated by the means for generating a sixth auxiliary quantity.