Protection of a prime number generation against side-channel attacks
AssigneeProton World International N.V.
InventorFrank Cuypers
Life of this patent
Estimating the term…
Abstract
A method for protecting the generation, by an electronic circuit, of at least one prime number by testing the primality of successive candidate numbers, including for each candidate number tests of primality with respect to prime numbers of at least one set of consecutive prime numbers, wherein the order of application of the tests is modified at least from one prime number generation to another.
Claims27
A method for protecting generation, by an electronic circuit, of a first prime number and a second prime number, the method comprising:
- using the electronic circuit for:
- for the first prime number, testing a primality of at least one first candidate number with respect to prime numbers of at least one set of consecutive prime numbers;
- and
- for the second prime number, testing a primality of at least one second candidate number with respect to the prime numbers of the at least one set of consecutive prime numbers;
- wherein:
- an order of testing the primality of the at least one first candidate number with respect to the prime numbers of the at least one set of consecutive prime numbers differs from an order of testing the primality of the at least one second candidate number with respect to the prime numbers of the at least one set of consecutive prime numbers;
- the at least one second candidate number comprises a plurality of second candidate numbers;
- and
- the order of testing the primality of the plurality of second candidate numbers is modified for each candidate number of the plurality of second candidate numbers.
A method, comprising:
- generating, using a circuit, a first sieve table for a first candidate number using a plurality of prime numbers;
- and
- generating, using the circuit, a second sieve table for at least one second candidate number using the plurality of prime numbers;
- wherein:
- generating the first sieve table comprises applying the plurality of prime numbers in a first order and wherein generating the second sieve table comprises applying the plurality of prime numbers in a second order different than the first order;
- the at least one second candidate number comprises a plurality of second candidate numbers;
- and
- the second order of testing the primality of the plurality of second candidate numbers is modified for each candidate number of the plurality of second candidate numbers.
A system comprising:
- a circuit that is configured to:
- generate a first sieve table for a first candidate number using a plurality of prime numbers;
- and
- generate a second sieve table for at least one second candidate number using the plurality of prime numbers;
- wherein:
- generating the first sieve table comprises applying the plurality of prime numbers in a first order and wherein generating the second sieve table comprises applying the plurality of prime numbers in a second order different than the first order;
- the at least one second candidate number comprises a plurality of second candidate numbers;
- and
- the second order of testing the primality of the plurality of second candidate numbers is modified for each candidate number of the plurality of second candidate numbers.
An apparatus comprising:
- a memory;
- and
- at least one processor coupled to the memory, for:
- generating a first sieve table for a first candidate number using a plurality of prime numbers;
- and
- generating a second sieve table for at least one second candidate number using the plurality of prime numbers;
- wherein:
- generating the first sieve table comprises applying the plurality of prime numbers in a first order and wherein generating the second sieve table comprises applying the plurality of prime numbers in a second order different than the first order;
- the at least one second candidate number comprises a plurality of second candidate numbers;
- and
- the second order of testing the primality of the plurality of second candidate numbers is modified for each candidate number of the plurality of second candidate numbers.
At least one processor readable storage device storing processor executable instructions which, when executed by at least one processor, cause the at least one processor to perform a method comprising:
- generating a first sieve table for a first candidate number using a plurality of prime numbers;
- and
- generating a second sieve table for at least one second candidate number using the plurality of prime numbers, wherein:
- generating the first sieve table comprises applying the plurality of prime numbers in a first order and wherein generating the second sieve table comprises applying the plurality of prime numbers in a second order different than the first order;
- the at least one second candidate number comprises a plurality of second candidate numbers;
- and
- the second order of testing the primality of the plurality of second candidate numbers is modified for each candidate number of the plurality of second candidate numbers.
Dependencies are inferred from the claim text.