Standard curves and curve checking.
[u/mdw/catacomb] / tests / ec
index 3831c53..aba2b58 100644 (file)
--- a/tests/ec
+++ b/tests/ec
@@ -1,4 +1,4 @@
-# $Id: ec,v 1.1 2004/03/23 15:19:32 mdw Exp $
+# $Id: ec,v 1.3 2004/03/27 17:54:12 mdw Exp $
 #
 # Elliptic curve tests
 
@@ -39,6 +39,42 @@ check {
        0xf8e6d46a003725879cefee1294db32298c06885ee186b7ee"
     0;
 
+  "niceprime: 6277101735386680763835789423207666416083908700390324961279
+     prime: -3, 0x64210519e59c80e70fa7e9ab72243049feb8deecc146b9b1"
+    "0x188da80eb03090f67cbf20eb43a18800f4ff0afd82ff1012,
+       0x07192b95ffc8da78631011ed6b24cdd573f977a11e794811"
+    0;
+  "niceprime: 6277101735386680763835789423207666416083908700390324961279
+     prime: -3, 0x64210519e59c80e70fa7e9ab72243049feb8deecc146b9b1"
+    "0x188da80eb03090f67cbf20eb43a18800f4ff0afd82ff1012,
+       0x07192b95ffc8da78631011ed6b24cdd573f977a11e794810"
+    -1;
+  "niceprime: 6277101735386680763835789423207666416083908700390324961279
+     prime: -3, 0x64210519e59c80e70fa7e9ab72243049feb8deecc146b9b1"
+    "0x188da80eb03090f67cbf20eb43a18800f4ff0afd82ff1012,
+       0xf8e6d46a003725879cefee1294db32298c06885ee186b7ee"
+    0;
+  "niceprime: 6277101735386680763835789423207666416083908700390324961279
+     prime: -3, 0x64210519e59c80e70fa7e9ab72243049feb8deecc146b9b1"
+    "0x188da80eb03090f67cbf20eb43a18801f4ff0afd82ff1411, 
+      0xdccf19d3e76abfa05d529c07575f54c94fa5fc9f3decc246"
+    0;
+  "niceprime: 6277101735386680763835789423207666416083908700390324961279
+     primeproj: -3, 0x64210519e59c80e70fa7e9ab72243049feb8deecc146b9b1"
+    "0x188da80eb03090f67cbf20eb43a18800f4ff0afd82ff1012,
+       0x07192b95ffc8da78631011ed6b24cdd573f977a11e794811"
+    0;
+  "niceprime: 6277101735386680763835789423207666416083908700390324961279
+     primeproj: -3, 0x64210519e59c80e70fa7e9ab72243049feb8deecc146b9b1"
+    "0x188da80eb03090f67cbf20eb43a18800f4ff0afd82ff1012,
+       0x07192b95ffc8da78631011ed6b24cdd573f977a11e794810"
+    -1;
+  "niceprime: 6277101735386680763835789423207666416083908700390324961279
+     primeproj: -3, 0x64210519e59c80e70fa7e9ab72243049feb8deecc146b9b1"
+    "0x188da80eb03090f67cbf20eb43a18800f4ff0afd82ff1012,
+       0xf8e6d46a003725879cefee1294db32298c06885ee186b7ee"
+    0;
+
   "binpoly: 0x800000000000000000000000000000000000000c9
     bin: 1, 0x20a601907b8c953ca1481eb10512f78744a3205fd"
     "0x3f0eba16286a2d57ea0991168d4994637e8343e36,
@@ -91,6 +127,20 @@ find {
     "0x188da80eb03090f67cbf20eb43a18801f4ff0afd82ff1411, 
       0xdccf19d3e76abfa05d529c07575f54c94fa5fc9f3decc246";
 
+  "niceprime: 6277101735386680763835789423207666416083908700390324961279
+     prime: -3, 0x64210519e59c80e70fa7e9ab72243049feb8deecc146b9b1"
+    0x188da80eb03090f67cbf20eb43a18800f4ff0afd82ff1012
+    "0x188da80eb03090f67cbf20eb43a18800f4ff0afd82ff1012,
+       0x07192b95ffc8da78631011ed6b24cdd573f977a11e794811";
+  "niceprime: 6277101735386680763835789423207666416083908700390324961279
+     prime: -3, 0x64210519e59c80e70fa7e9ab72243049feb8deecc146b9b1"
+    0x188da80eb03090f67cbf20eb43a18800f4ff0afd82ff1011 inf;
+  "niceprime: 6277101735386680763835789423207666416083908700390324961279
+     prime: -3, 0x64210519e59c80e70fa7e9ab72243049feb8deecc146b9b1"
+    0x188da80eb03090f67cbf20eb43a18801f4ff0afd82ff1411
+    "0x188da80eb03090f67cbf20eb43a18801f4ff0afd82ff1411, 
+      0xdccf19d3e76abfa05d529c07575f54c94fa5fc9f3decc246";
+
   "binpoly: 0x800000000000000000000000000000000000000c9
     bin: 1, 0x20a601907b8c953ca1481eb10512f78744a3205fd"
     0x3f0eba16286a2d57ea0991168d4994637e8343e36
@@ -120,6 +170,19 @@ neg {
     "0x188da80eb03090f67cbf20eb43a18800f4ff0afd82ff1012,
        0xf8e6d46a003725879cefee1294db32298c06885ee186b7ee";
 
+  "niceprime: 6277101735386680763835789423207666416083908700390324961279
+     prime: -3, 0x64210519e59c80e70fa7e9ab72243049feb8deecc146b9b1"
+    "0x188da80eb03090f67cbf20eb43a18800f4ff0afd82ff1012,
+       0x07192b95ffc8da78631011ed6b24cdd573f977a11e794811"
+    "0x188da80eb03090f67cbf20eb43a18800f4ff0afd82ff1012,
+       0xf8e6d46a003725879cefee1294db32298c06885ee186b7ee";
+  "niceprime: 6277101735386680763835789423207666416083908700390324961279
+     primeproj: -3, 0x64210519e59c80e70fa7e9ab72243049feb8deecc146b9b1"
+    "0x188da80eb03090f67cbf20eb43a18800f4ff0afd82ff1012,
+       0x07192b95ffc8da78631011ed6b24cdd573f977a11e794811"
+    "0x188da80eb03090f67cbf20eb43a18800f4ff0afd82ff1012,
+       0xf8e6d46a003725879cefee1294db32298c06885ee186b7ee";
+
   "binpoly: 0x800000000000000000000000000000000000000c9
     bin: 1, 0x20a601907b8c953ca1481eb10512f78744a3205fd"
     "0x3f0eba16286a2d57ea0991168d4994637e8343e36,
@@ -148,6 +211,19 @@ dbl {
     "0xdafebf5828783f2ad35534631588a3f629a70fb16982a888,
        0xdd6bda0d993da0fa46b27bbc141b868f59331afa5c7e93ab";
 
+  "niceprime: 6277101735386680763835789423207666416083908700390324961279
+     prime: -3, 0x64210519e59c80e70fa7e9ab72243049feb8deecc146b9b1"
+    "0x188da80eb03090f67cbf20eb43a18800f4ff0afd82ff1012,
+       0x07192b95ffc8da78631011ed6b24cdd573f977a11e794811"
+    "0xdafebf5828783f2ad35534631588a3f629a70fb16982a888,
+       0xdd6bda0d993da0fa46b27bbc141b868f59331afa5c7e93ab";
+  "niceprime: 6277101735386680763835789423207666416083908700390324961279
+     primeproj: -3, 0x64210519e59c80e70fa7e9ab72243049feb8deecc146b9b1"
+    "0x188da80eb03090f67cbf20eb43a18800f4ff0afd82ff1012,
+       0x07192b95ffc8da78631011ed6b24cdd573f977a11e794811"
+    "0xdafebf5828783f2ad35534631588a3f629a70fb16982a888,
+       0xdd6bda0d993da0fa46b27bbc141b868f59331afa5c7e93ab";
+
   "binpoly: 0x800000000000000000000000000000000000000c9
     bin: 1, 0x20a601907b8c953ca1481eb10512f78744a3205fd"
     "0x3f0eba16286a2d57ea0991168d4994637e8343e36,
@@ -160,6 +236,12 @@ dbl {
       0x325f41d0ef702dc310254c42d65851a3b91471ac7"
     "0x1aeb33fed9c49e0200a0c561ea66d5ab85bd4c2d4,
       0x49ed3be7f510e30e2462c517ad39038e493fc573c";
+
+  "binpoly: 0x020000000000000000000000000000200000000000000001
+    bin: 0, 0x1ee9"
+    "0x18, 0xd" 
+    "0x1bd555555555555555555555555554e8000000000000158,
+      0x14e999999999999999999999999998d7000000000001fe6";
 }
 
 add {
@@ -180,6 +262,23 @@ add {
     "0x76e32a2557599e6edcd283201fb2b9aadfd0d359cbb263da,
        0x782c37e372ba4520aa62e0fed121d49ef3b543660cfd05fd";
 
+  "niceprime: 6277101735386680763835789423207666416083908700390324961279
+     prime: -3, 0x64210519e59c80e70fa7e9ab72243049feb8deecc146b9b1"
+     "0x188da80eb03090f67cbf20eb43a18800f4ff0afd82ff1012,
+       0x07192b95ffc8da78631011ed6b24cdd573f977a11e794811"
+    "0xdafebf5828783f2ad35534631588a3f629a70fb16982a888,
+       0xdd6bda0d993da0fa46b27bbc141b868f59331afa5c7e93ab"
+    "0x76e32a2557599e6edcd283201fb2b9aadfd0d359cbb263da,
+       0x782c37e372ba4520aa62e0fed121d49ef3b543660cfd05fd";
+  "niceprime: 6277101735386680763835789423207666416083908700390324961279
+     primeproj: -3, 0x64210519e59c80e70fa7e9ab72243049feb8deecc146b9b1"
+     "0x188da80eb03090f67cbf20eb43a18800f4ff0afd82ff1012,
+       0x07192b95ffc8da78631011ed6b24cdd573f977a11e794811"
+    "0xdafebf5828783f2ad35534631588a3f629a70fb16982a888,
+       0xdd6bda0d993da0fa46b27bbc141b868f59331afa5c7e93ab"
+    "0x76e32a2557599e6edcd283201fb2b9aadfd0d359cbb263da,
+       0x782c37e372ba4520aa62e0fed121d49ef3b543660cfd05fd";
+
   "binpoly: 0x800000000000000000000000000000000000000c9
     bin: 1, 0x20a601907b8c953ca1481eb10512f78744a3205fd"
     "0x3f0eba16286a2d57ea0991168d4994637e8343e36,
@@ -216,6 +315,23 @@ sub {
     "0xdafebf5828783f2ad35534631588a3f629a70fb16982a888,
        0xdd6bda0d993da0fa46b27bbc141b868f59331afa5c7e93ab";
 
+  "niceprime: 6277101735386680763835789423207666416083908700390324961279
+     prime: -3, 0x64210519e59c80e70fa7e9ab72243049feb8deecc146b9b1"
+    "0x76e32a2557599e6edcd283201fb2b9aadfd0d359cbb263da,
+       0x782c37e372ba4520aa62e0fed121d49ef3b543660cfd05fd"
+     "0x188da80eb03090f67cbf20eb43a18800f4ff0afd82ff1012,
+       0x07192b95ffc8da78631011ed6b24cdd573f977a11e794811"
+    "0xdafebf5828783f2ad35534631588a3f629a70fb16982a888,
+       0xdd6bda0d993da0fa46b27bbc141b868f59331afa5c7e93ab";
+  "niceprime: 6277101735386680763835789423207666416083908700390324961279
+     primeproj: -3, 0x64210519e59c80e70fa7e9ab72243049feb8deecc146b9b1"
+    "0x76e32a2557599e6edcd283201fb2b9aadfd0d359cbb263da,
+       0x782c37e372ba4520aa62e0fed121d49ef3b543660cfd05fd"
+     "0x188da80eb03090f67cbf20eb43a18800f4ff0afd82ff1012,
+       0x07192b95ffc8da78631011ed6b24cdd573f977a11e794811"
+    "0xdafebf5828783f2ad35534631588a3f629a70fb16982a888,
+       0xdd6bda0d993da0fa46b27bbc141b868f59331afa5c7e93ab";
+
   "binpoly: 0x800000000000000000000000000000000000000c9
     bin: 1, 0x20a601907b8c953ca1481eb10512f78744a3205fd"
     "0x634000577f86aa315009d6f9b906691f6edd691fe,
@@ -262,6 +378,33 @@ mul {
      6277101735386680763835789423176059013767194773182842284081
      inf;
 
+  "niceprime: 6277101735386680763835789423207666416083908700390324961279
+     prime: -3, 0x64210519e59c80e70fa7e9ab72243049feb8deecc146b9b1"
+     "0x188da80eb03090f67cbf20eb43a18800f4ff0afd82ff1012,
+       0x07192b95ffc8da78631011ed6b24cdd573f977a11e794811"
+     6277101735386680763835789423176059013767194773182842284080
+     "0x188da80eb03090f67cbf20eb43a18800f4ff0afd82ff1012,
+        0xf8e6d46a003725879cefee1294db32298c06885ee186b7ee";
+  "niceprime: 6277101735386680763835789423207666416083908700390324961279
+     prime: -3, 0x64210519e59c80e70fa7e9ab72243049feb8deecc146b9b1"
+     "0x188da80eb03090f67cbf20eb43a18800f4ff0afd82ff1012,
+       0x07192b95ffc8da78631011ed6b24cdd573f977a11e794811"
+     6277101735386680763835789423176059013767194773182842284081
+     inf;
+  "niceprime: 6277101735386680763835789423207666416083908700390324961279
+     primeproj: -3, 0x64210519e59c80e70fa7e9ab72243049feb8deecc146b9b1"
+     "0x188da80eb03090f67cbf20eb43a18800f4ff0afd82ff1012,
+       0x07192b95ffc8da78631011ed6b24cdd573f977a11e794811"
+     6277101735386680763835789423176059013767194773182842284080
+     "0x188da80eb03090f67cbf20eb43a18800f4ff0afd82ff1012,
+        0xf8e6d46a003725879cefee1294db32298c06885ee186b7ee";
+  "niceprime: 6277101735386680763835789423207666416083908700390324961279
+     primeproj: -3, 0x64210519e59c80e70fa7e9ab72243049feb8deecc146b9b1"
+     "0x188da80eb03090f67cbf20eb43a18800f4ff0afd82ff1012,
+       0x07192b95ffc8da78631011ed6b24cdd573f977a11e794811"
+     6277101735386680763835789423176059013767194773182842284081
+     inf;
+
   "binpoly: 0x800000000000000000000000000000000000000c9
     bin: 1, 0x20a601907b8c953ca1481eb10512f78744a3205fd"
     "0x3f0eba16286a2d57ea0991168d4994637e8343e36,
@@ -288,4 +431,15 @@ mul {
       0x325f41d0ef702dc310254c42d65851a3b91471ac7"
     5846006549323611672814742442876390689256843201587
     inf;
+
+  "binpoly: 0x800000000000000000000000000000000000000c9/bin: 1, 1"
+    "0x2fe13c0537bbc11acaa07d793de4e6d5e5c94eee8,
+      0x289070fb05d38ff58321f2e800536d538ccdaa3d9"
+    5846006549323611672814741753598448348329118574063
+    inf;
+  "binpoly: 0x800000000000000000000000000000000000000c9/binproj: 1, 1"
+    "0x2fe13c0537bbc11acaa07d793de4e6d5e5c94eee8,
+      0x289070fb05d38ff58321f2e800536d538ccdaa3d9"
+    5846006549323611672814741753598448348329118574063
+    inf;
 }