Speed enhanced cryptographic method and apparatus
AssigneeNTRU Cryptosystems, Inc.
InventorsJeffrey Hoffstein, Joseph H. Silverman
Life of this patent
Estimating the term…
Abstract
A method for performing a cryptographic operation involving transforming digital information is described. A digital operator is provided that has a component selected from a large set of elements. The component is expanded into a plurality of factors, each factor having a low Hamming weight. Digital information is transformed using the digital operator. Computer readable medium embody instructions for the method.
Claims33
A method for performing a cryptographic operation that comprises transforming digital information, the method comprising:
- providing digital information;
- providing a digital operator having a component selected from a large set of elements;
- expanding the component into a plurality of factors, each factor having a low hamming weight;
- and
- transforming the digital information using the digital operator, said transforming comprising computing multiples;
- said method further comprising:
- selecting a ring R;
- selecting an R-module M;
- selecting two or more subsets R1, R2, . . . , Rk of R with the property that r1 is an element in R1, r2 is an element in R2, . . . and rk is an element in Rk;
- computing r*m, where r is in R and m is in M, by expanding r as r1*r2 . . . rk, where k is an integer and computing the quantity r1*(r2*( . . . (rk*m).
A computer readable medium containing instructions for a method for performing a cryptographic operation that comprises transforming digital information, the method comprising:
- providing digital information;
- providing a digital operator having a component selected from a large set of elements;
- expanding the component into a plurality of factors, each factor having a low hamming weight;
- and
- transforming the digital information using the digital operator, said transforming comprising computing multiples;
- said method further comprising:
- selecting a ring R;
- selecting an R-module M;
- selecting two or more subsets R1, R2, . . . , Rk of R with the property that r1 is an element in R1, r2 is an element in R2, . . . and rk is an element in Rk;
- computing r*m, where r is in R and m is in M, by expanding r as r1* r2* . . . rk, where k is an integer and computing the quantity r1*(r2*( . . . (rk*m).
Dependencies are inferred from the claim text.