Claims
- 1. A method for calculating a rational expression in finite field GF(22) in a form of: p(X1,X2,⋯,Xr)q(X1,X2,⋯,Xr)where p, qεGF(22n)[X1, X2, . . . , Xr], comprising the steps of:calculating a multiplication in GF(22n) that arises in calculations using polynomials p, qεGF(22n)[X1, X2, . . . , Xr] according to a multiplication formula: (x1α+y1(α+1))×(x2α+y2(α+1))=(x1x2+a(x1+y1)(x2+y2))α+(y1y2+a(x1+y1)(x2+y2))(α+1)where x1, x2, y1, y2, aεGF(2n), α∉GF(2n), α2+α+a=0 and GF(22n)=GF(2n)(α));calculating an inverse q−1 of q in GF(22n) according to an inverse calculation formula: (xα+y(α+1))−1=(a(x+y)2+xy)−1(yα+x(α+1)) where x, y, aεGF(2n), α∉GF(2n), α2+α+a=0 and GF(22n)=GF(2n)(α)); andcalculating p×q−1 by using said multiplication formula.
- 2. The method of claim 1, further comprising the step of:expressing elements other than a point at infinity 0 of a group over elliptic curves E(GF(22n)) in the finite field GF(22n) in terms of affine coordinates (x, y) so as to express group operations over elliptic curves as rational expressions in x and y, so that the calculating steps calculate a group operation over elliptic curves by calculating said rational expression.
- 3. A device for calculating a rational expression in finite field GF(22n) in a form of: p(X1,X2,⋯,Xr)q(X1,X2,⋯,Xr)where p, qεGF(22n)[X1, X2, . . . , Xr], comprising:a first unit for calculating a multiplication in GF(22n) that arises in calculations using polynomials p, qεGF(22n)[X1, X2, . . . , Xr] according to a multiplication formula: (x1α+y1(α+1))×(x2α+y2(α+1))=(x1x2+a(x1+y1)(x2+y2))α+(y1y2+a(x1+y1)(x2+y2))(α+1)where x1, x2, y1, y2, aεGF(2n), α∉GF(2n), α2+α+a=0 and GF(22n)=GF(2n)(α));a second unit for calculating an inverse q−1 of q in GF(22n) according to an inverse calculation formula: (xα+y(α+1))−1=(a(x+y)2+xy)−1(yα+x(α+1)) where x, y, aεGF(2n), αεGF(2n), α2+α+a=0 and GF(22n)=GF(2n)(α)); anda third unit for calculating p×q−1 by using said multiplication formula.
- 4. An article of manufacture, comprising:a computer usable medium having computer readable program code means embodied therein for causing a computer to function as a system for calculating a rational expression in finite field GF(22n) in a form of: p(X1,X2,⋯,Xr)q(X1,X2,⋯,Xr)where p, qεGF(22n)[X1, X2, . . . , Xr], the computer readable program code means includes:first computer readable program code means for causing said computer to calculate a multiplication in GF(22n) that arises in calculations using polynomials p, qεGF(22n)[X1, X2, . . . , Xr] according to a multiplication formula: (x1α+y1(α+1))×(x2α+y2(α+1))=(x1x2+a(x1+y1)(x2+y2))α+(y1y2+a(x1+y1)(x2+y2))(α+1)where x1, x2, y1, y2, aεGF(2n), α∉GF(2n), α2+α+a=0 and GF(22n)=GF(2n)(α));second computer readable program code means for causing said computer to calculate an inverse q−1 of q in GF(22n) according to an inverse calculation formula: (xα+y(α+1))−1=(a(x+y)2+xy)−1(yα+x(α−1)) where x, y, αεGF(2n), α∉GF(2n), α2+α+a=0 and GF(22n)=GF(2n)(α)); andthird computer readable program code means for causing said computer to calculate p×q−1 by using said multiplication formula.
- 5. A method for calculating a rational expression in finite field GF(22n) in a form of:p(X1,X2,⋯,Xr)q(X1,X2,⋯,Xr)where p, qεGF(22n)[X1, X2, . . . , Xr], comprising the steps of:calculating a multiplication in GF(22n) that arises in calculations using polynomials p, qεGF(22n)[X1, X2, . . . , Xr] according to a multiplication formula: (x1+y1 α)×(x2+y2 α)=(x1x2+ay1y2)+((x1+y1)(x2+y2)+x1x2)α and a square calculation formula(x1+y1 α)2=(x12+ay12)+y12αwhere x1, x2, y1, y2, aεGF(2n), α∉GF(22), α2+α+a=0 and GF(22n)=GF(2n)(α);calculating an inverse q−1 of q in GF(22n) according to an inverse calculation formula: (x1+y1)−1=(x1(x1+y1)+ay12)−1((x1+y1)+y1 α)where x1, y1, aεGF(2n), α∉GF(2n), α2+α+a=0 and GF(22n)=GF(2n)(α); andcalculating p×q−1 by using said multiplication formula.
- 6. The method of claim 5, further comprising the step of:expressing elements other than a point at infinity 0 of a group over elliptic curves E(GF(22n)) in finite field GF(22n) in terms of affine coordinates (x, y) so as to express group operations over elliptic curves as rational expressions in x and y, so that the calculating steps calculate a group operation over elliptic curves by calculating said rational expression.
- 7. The method of claim 6, wherein the calculating steps calculate a multiplicative inverse (i, j) of an element (x1, y1) of a group over elliptic curves as a rational expression in x1 and y1.
- 8. The method of claim 6, wherein the calculating steps calculate an addition (x3+y3)=(x1, y1)+(x2, y2) of elements (x1, y1) and (x2, y2) of a group over elliptic curves as a rational expression in x1, y1, x2 and y2, where (x1, y1)≠(x2, y2) and (x1, y1)≠−(x2, y2).
- 9. The method of claim 6, wherein the calculating steps calculate a double (x3, y3)=2(x1, y1) of an element (x1, y1) of a group over elliptic curves as a rational expression in x1 and y1, where (x1, y1)≠(x1, y1).
- 10. The method of claim 6, wherein the calculating steps calculate a natural number multiple (x3, y3)=n(x1, y1) of an element (x1, y1) of a group over elliptic curves, where n is a natural number, as a combination of multiplicative inverse calculations, additions, and double calculations in x1 and y1.
- 11. A device for calculating a rational expression in finite field GF(22n) in a form of: p(X1,X2,⋯,Xr)q(X1,X2,⋯,Xr)where p, qεGF(22n)[X1, X2, . . . , Xr], comprising:a first unit for calculating a multiplication in GF(22n) that arises in calculations using polynomials p, qεGF(22n)[X2, X2, . . . , Xr] according to a multiplication formula: (x1+y1 α)×(x2+y2 α)=(x1x2+ay1y2)+((x1+y1)(x2+y2)+x1x2)αand a square calculation formula(x1+y1 α)2=(x12+ay12)+y12αwhere x1, x2, y1, y2, aεGF(2n), α∉GF(2n), α2+α+a=0 and GF(22n)=GF(2n)(α);a second unit for calculating an inverse q−1 of q in GF(22n) according to an inverse calculation formula: (x1+y1 α)−1=(x1(x1+y1)+ay12)−1((x1+y1)+y α) where x1, y1, aεGF(2n), α∉GF(2n), α2+α+a=0 and GF(22n)=GF(2n)(α); anda third unit for calculating p×q−1 by using said multiplication formula.
- 12. An article of manufacture, comprising:a computer usable medium having computer readable program code means embodied therein for causing a computer to function as a system for calculating a rational expression in finite field GF(22n) in a form of: p(X1,X2,⋯,Xr)q(X1,X2,⋯,Xr)where p, qεGF(22n)[X1, X2, . . . , Xr], the computer readable program code means includes:first computer readable program code means for causing said computer to calculate a multiplication in GF(22n) that arises in calculations using polynomials p, qεGF(22n)[X1, X2, . . . , Xr] according to a multiplication formula: (x1+y1 α)×(x2+y2 α)=(x1x2+ay1y2)+((1+y1)(x2+y2)+x1x2)αand a square calculation formula(x1+y1 α)2=(x12+ay12)+y12αwhere x1, x2, y1, y2, aεGF(2n), α∉GF(2n), α2+α+a=0 and GF(2n2)=GF(2n)(α);second computer readable program code means for causing said computer to calculate an inverse q−1 of q in GF(22n) according to an inverse calculation formula: (x1+y1 α)−1=(x1(x1+y1)+ay12)−1((x1+y1)+y1 α) where x1, y1, aεGF(2n), α∉GF(2n), α2+α+a=0 and GF(22n)=GF(2n)(α); andthird computer readable program code means for causing said computer to calculate p×q−1 by using said multiplication formula.
Priority Claims (3)
Number |
Date |
Country |
Kind |
P9-15739 |
Jan 1997 |
JP |
|
P9-206992 |
Jul 1997 |
JP |
|
P9-206995 |
Jul 1997 |
JP |
|
CROSS REFERENCE TO RELATED APPLICATION
This is a divisional of U.S. application No. 09/014,891 filed Jan. 28, 1998 and now U.S. Pat. No. 6,038,581.
US Referenced Citations (5)