Claims
- 1. An apparatus for creating and authenticating a digital signature comprising:a means for processing; a means for storage coupled to said processing means; said storage means comprising code configured to provide: means for generating a signature with two points having x and y coordinates; means for generating a sum of said two points; and, means for deducing possible values of said x coordinate of said sum using only said x coordinates of said two points.
- 2. The apparatus of claim 1 wherein said means for deducing possible values can be generated by at least two possible sources, a first correct source and a second incorrect source.
- 3. The apparatus of claim 2 wherein the possibility of the existence of said second incorrect source is statistically insignificant.
- 4. The apparatus of claim 1 further including said storage means comprising code configured to provide means for comparing said possible values to a predicted value and assuming authenticity when said comparing is satisfied.
- 5. The apparatus of claim 1 further including said storage means comprising code configured to provide:means for generating a random integer m; means for computing a point P1, having coordinates (X1, Y1), on an elliptic curve; and, means for computing an integer u using said m and said P1.
- 6. The apparatus of claim 5 wherein said means for computing said point P1 on said elliptic curve has a starting point (X1, 1).
- 7. The apparatus of claim 5 wherein said means for computing said integer u is generated by m+our Pri*M(ciphertext, P) where said ciphertext is the encrypted message to be sent and said M is a hash function.
- 8. The apparatus of claim 6 wherein said apparatus for creating and authenticating said digital signature further comprises:means for generating a point Q having coordinates (X, Y), using said u; means for generating a point P2 having coordinates (X2, Y2), using said P1; means for testing an equality P1+P2=Q; and, means for identifying a signature as not authentic when said equality P1+P2=Q is not satisfied.
- 9. The apparatus of claim 8 wherein testing said equality P1+P2=Q is performed without using said Y1 and said Y2.
- 10. A method of creating a digital signature comprising means for:generating a random integer m; computing a point P1, having coordinates (X1, Y1), on an elliptic curve; and, computing an integer u using m and P1.
- 11. The method of claim 10 wherein said means for computing said point P1 on an elliptic curve has a starting point (X1, 1).
- 12. The method of claim 11 wherein said means for computing said P1 is accomplished by m°(X1, 1).
- 13. The method of claim 10 wherein said means for computing said integer u is generated by m+our Pri*M(ciphertext, P) where said ciphertext is the encrypted message to be sent and said M is a hash function.
- 14. The method of claim 13 further including means for sending a pair (u, P1) as a digital signature to a receiver.
- 15. The method of claim 11 further comprising means for authenticating said digital signature comprising means for:using said u, generating a point Q having coordinates (X, Y); using said P1, generating a point P2, having coordinates (X2, Y2); testing the equality P1+P2=Q; and, identifying a signature as not authentic when said equality P1+P2=Q is not satisfied.
- 16. The method of claim 15 wherein said means for testing said equality P1+P2=Q; is performed without using said Y1 and said Y2.
- 17. The method of claim 11 further comprising means for authenticating said digital signature comprising means for:using said u, generating a point Q having coordinates (X, Y); using said P1, generating a point P2 having coordinates (X2, Y2); testing an equality P1+P2=Q; and, identifying a signature as authentic when said equality P1+P2=Q is satisfied.
- 18. The method of claim 17 wherein means for testing said equality P1+P2=Q is performed without using said Y1 and said Y2.
- 19. An article of manufacture comprising:a computer usable medium having computer readable program code embodied therein for creating a digital signature, the computer readable program code in said article of manufacture comprising: means for computer readable program code configured to cause a computer to generate a random integer m; means for computer readable program code configured to cause a computer to compute a point P1, having coordinates (X1, Y1), on an elliptic curve; means for computer readable program code configured to cause a computer to compute an integer u using said m and said P1.
- 20. The article of manufacture of claim 19 wherein said means for computer readable program code configured to cause a computer to compute said point P1 on said elliptic curve has a starting point of (X1, 1.
Parent Case Info
This is a continuation of application Ser. No. 09/544,530 filed Apr. 6, 2000 now U.S. Pat. No. 6,285,760 which is a continuation of Ser. No. 09/149,876 filed Sep. 9, 1998, now U.S. Pat. No. 6,049,610 which is a continuation of Ser. No. 08/758,688 filed Nov. 27, 1996 now U.S. Pat. No. 5,805,703 which is a continuation of Ser. No 08/484,264 filed Jun. 7, 1995 now U.S. Pat. No. 5,581,616 which is a Continuation-In-Part of Ser. No. 08/167,408 filed Dec. 14, 1993 now U.S. Pat. No. 5,463,690 which is a continuation of Ser. No. 07/955,479 filed Oct. 2, 1992, now U.S. Pat. No. 5,271,061, which is a continuation of Ser, No. 07/761,276 filed Sep. 17, 1991 now U.S. Pat. No. 5,159,632.
US Referenced Citations (4)
| Number |
Name |
Date |
Kind |
|
5581616 |
Crandall |
Dec 1996 |
A |
|
6049610 |
Crandall |
Apr 2000 |
A |
|
6285760 |
Crandall |
Sep 2001 |
B1 |
|
6307935 |
Crandall et al. |
Oct 2001 |
B1 |
Continuations (6)
|
Number |
Date |
Country |
| Parent |
09/544530 |
Apr 2000 |
US |
| Child |
09/946967 |
|
US |
| Parent |
09/149876 |
Sep 1998 |
US |
| Child |
09/544530 |
|
US |
| Parent |
08/758688 |
Nov 1996 |
US |
| Child |
09/149876 |
|
US |
| Parent |
08/484264 |
Jun 1995 |
US |
| Child |
08/758688 |
|
US |
| Parent |
07/955479 |
Oct 1992 |
US |
| Child |
08/167408 |
|
US |
| Parent |
07/761276 |
Sep 1991 |
US |
| Child |
07/955479 |
|
US |
Continuation in Parts (1)
|
Number |
Date |
Country |
| Parent |
08/167408 |
Dec 1993 |
US |
| Child |
08/484264 |
|
US |