Expunge revision histories in files.
[u/mdw/catacomb] / tests / rsa
diff --git a/tests/rsa b/tests/rsa
new file mode 100644 (file)
index 0000000..314358a
--- /dev/null
+++ b/tests/rsa
@@ -0,0 +1,232 @@
+# $Id: rsa,v 1.1 2004/04/08 01:36:16 mdw Exp $
+#
+# Test vectors for the completely mad RSA infrastructure tests
+
+p1sig-pad {
+  # nbits msg rc result eparam
+  256 "616263" 0 
+    0x0001ffffffffffffffffffffffffffffffffffffffffffffff00cc22cc616263
+    "cc22cc";
+  129 "616263" 0 0x0001ffffffffffffffff00cc22cc616263 "cc22cc";
+  128 "616263" -1 0 "cc22cc";
+}
+
+p1sig-priv {
+  # n e d msg rc result eparam
+  0xccbd3b508e1ac2ed16f0f85adfec8d17ad525018307e613e0ee3aa4652b7ceb3
+    0x10001 
+    0x1fd9da85ec2d8ea09abe8f2c7804916853ac1f05189b657af9b294f73c515bf9
+    "616263" 0
+    0xc484642d0e4dc4a4424d22410456dbdd9275b5c157d6974a66bee9aa02501c26
+    "cc22cc";
+
+  0xb6dd0145ada7547bba5db3a35d34e612a8d73e93c33c720f4e4506428cacc6861b2143ed3a0683394fd94cfab8ab66a024161e9c9c1848d50627b3ac46de6d1b1d73ae7b5540b3df65c53aed9d4bdf1f86c8ddacfaf608823bb3d307d89d4c8bb11b5198f9851a519538787cd054ced98734daa2f7f2dc5b51c8c02ea8c362ff
+    0x10001
+    0xbee578ae84da6a17c0369191b97bbfb33b0f7904488c9185e8efa5d953820abd7515051461beeabea9dcefbfcd8921598c528b2272d1e7367b7676db222091443944672d439fe4cc75f4f9f0594a0b19a8c634fc7f88d0f16e08ec9a95f1f0c3c03ad467a2d7db37428c145cd26b8796264de2f2209a3c09f54fa51de689b81
+    "a9993e364706816aba3e25717850c26c9cd0d89d" 0
+    0x0f642606b7aaf99ff4bb5853c51e31a02c58d8c1c33f3c584d4edc58b08a16d5dc8064b6e198edcc4dc06666171a113619d7da16dfd96cebfdb5cc5050af6fab3d9f2ca8b8d6ece1d513fabc98a11fe37892fcf0827ea2e792427a69b3523504f46c55ed8af9a1c59687ca73c4baad7235a1a3faedec14f95ddfa8d0554739a8
+     "3021300906052b0e03021a05000414";
+}
+
+p1vrf-pad {
+  # nbits sig msg rc result eparam
+  256 0x0001ffffffffffffffffffffffffffffffffffffffffffffff00cc22cc616263
+    "" 3 "616263" "cc22cc";
+  256 0x0101ffffffffffffffffffffffffffffffffffffffffffffff00cc22cc616263
+    "" -1 "" "cc22cc";
+  256 0x0002ffffffffffffffffffffffffffffffffffffffffffffff00cc22cc616263
+    "" -1 "" "cc22cc";
+  256 0x0001ffffffffffffffffffffffffffffffffffffffffffffff01cc22cc616263
+    "" -1 "" "cc22cc";
+  256 0x0001ffffffffffffffff00cc22ccffffffffffffffffffffff00cc22cc616263
+    "" 18 "ffffffffffffffffffffff00cc22cc616263" "cc22cc";
+  256 0x0001ffffffffffffff00cc22ccffffffffffffffffffffffff00cc22cc616263
+    "" -1 "" "cc22cc";
+  256 0x0001ffffffffffffffffffffffffffffffffffffffffffffff00cc21cc616263
+    "" -1 "" "cc22cc";
+  256 0x0001ffffffffffffffffffffffffffffffffffffffffffffff00cc22cc616262
+    "" 3 "616262" "cc22cc";
+  129 0x0001ffffffffffffffff00cc22cc616263 "" 3 "616263" "cc22cc";
+  128 0x0001ffffffffffffff00cc22cc616263 "" -1 "" "cc22cc";
+}
+
+p1vrf-pub {
+  # n e sig msg rc result eparam
+  0xccbd3b508e1ac2ed16f0f85adfec8d17ad525018307e613e0ee3aa4652b7ceb3
+    0x10001
+    0xc484642d0e4dc4a4424d22410456dbdd9275b5c157d6974a66bee9aa02501c26
+    "" 3 "616263" "cc22cc"; 
+  0xccbd3b508e1ac2ed16f0f85adfec8d17ad525018307e613e0ee3aa4652b7ceb3
+    0x10001
+    0xc484642d0e4dc4a4424d22410456dbdd9275b5c157d6974a66bee9aa02501c26
+    "616263" 0 "" "cc22cc"; 
+  0xccbd3b508e1ac2ed16f0f85adfec8d17ad525018307e613e0ee3aa4652b7ceb3
+    0x10001
+    0x27654c24f4ffefffc3bef7be8ae469db3069407702391eeb551ce9544621b63a
+    "" 18 "ffffffffffffffffffffff00cc22cc616263" "cc22cc"; 
+  0xccbd3b508e1ac2ed16f0f85adfec8d17ad525018307e613e0ee3aa4652b7ceb3
+    0x10001
+    0xd980f3047ab74bc4e7bb99eeb17fcc657f50ee26146b7f2a9f982ef2f44cba
+    "" -1 "" "cc22cc"; 
+
+  0xb6dd0145ada7547bba5db3a35d34e612a8d73e93c33c720f4e4506428cacc6861b2143ed3a0683394fd94cfab8ab66a024161e9c9c1848d50627b3ac46de6d1b1d73ae7b5540b3df65c53aed9d4bdf1f86c8ddacfaf608823bb3d307d89d4c8bb11b5198f9851a519538787cd054ced98734daa2f7f2dc5b51c8c02ea8c362ff
+    0x10001
+    0x0f642606b7aaf99ff4bb5853c51e31a02c58d8c1c33f3c584d4edc58b08a16d5dc8064b6e198edcc4dc06666171a113619d7da16dfd96cebfdb5cc5050af6fab3d9f2ca8b8d6ece1d513fabc98a11fe37892fcf0827ea2e792427a69b3523504f46c55ed8af9a1c59687ca73c4baad7235a1a3faedec14f95ddfa8d0554739a8
+    "" 20 "a9993e364706816aba3e25717850c26c9cd0d89d"
+     "3021300906052b0e03021a05000414";
+}
+
+p1enc-pad {
+  # nbits msg rc ct eparam
+  256 "616263" 0
+    0x0002efbdfc524ad6419b65537a59b42a4662918436d6e0e4804b6b1000616263 "";
+  105 "616263" 0
+    0x0002efbd98524ad6419b00616263 "";
+  104 "616263" -1 0 "";
+}
+
+p1enc-pub {
+  # n e msg rc ct eparam
+  0xccbd3b508e1ac2ed16f0f85adfec8d17ad525018307e613e0ee3aa4652b7ceb3 
+    0x10001 "616263" 0
+    0x8f20a0fc778b7c55567f41c344d39bfcdaca04fd475f2290dc05c236585a68ca "";
+
+  0xb6dd0145ada7547bba5db3a35d34e612a8d73e93c33c720f4e4506428cacc6861b2143ed3a0683394fd94cfab8ab66a024161e9c9c1848d50627b3ac46de6d1b1d73ae7b5540b3df65c53aed9d4bdf1f86c8ddacfaf608823bb3d307d89d4c8bb11b5198f9851a519538787cd054ced98734daa2f7f2dc5b51c8c02ea8c362ff
+    0x10001
+    "616263"
+    0
+    0xaf91f5abf4766348eaaff1e8e5561b10bc1e3b15b6dff221869389a70d371d649b6cf78c5444f5d03a9feac12d5741cbc340e09d112063b1486568fca7c59b4c90604f0b6243eccc18901afa9001fc5f669108ebc75d6713e28d4a081723184332d4fb2ca391e3247a76c85323e66352d60c0a6ce8240af6f0583058820b1e32
+    "";
+}
+
+p1dec-pad {
+  # nbits msg rc pt eparam
+  256 0x0002efbdfc524ad6419b65537a59b42a4662918436d6e0e4804b6b1000616263
+    3 "616263" "";
+  105 0x0002efbd98524ad6419b00616263 
+    3 "616263" "";
+  104 0x0002efbd98524ad64100616263 
+    -1 "" "";
+  256 0x0002efbdfc524ad6419b00537a59b42a4662918436d6e0e4804b6b1000616263
+    21 "537a59b42a4662918436d6e0e4804b6b1000616263" "";
+  256 0x0002efbdfc524ad6419b00537a59b42a4662918436d6e0e4804b6b1000616263
+    3 "616263" "537a59b42a4662918436d6e0e4804b6b1000";
+  256 0x0102efbdfc524ad6419b65537a59b42a4662918436d6e0e4804b6b1000616263
+    -1 "" "";
+  256 0x0001efbdfc524ad6419b65537a59b42a4662918436d6e0e4804b6b1000616263
+    -1 "" "";
+  256 0x0002efbdfc524ad6419b65537a59b42a4662918436d6e0e4804b6b1000616263
+    3 "616263" "";
+  256 0x0002efbdfc524ad6410065537a59b42a4662918436d6e0e4804b6b1000616263
+    -1 "" "";
+}
+
+p1dec-priv {
+  # p e d msg rc pt eparam
+  0xccbd3b508e1ac2ed16f0f85adfec8d17ad525018307e613e0ee3aa4652b7ceb3
+    0x10001 
+    0x1fd9da85ec2d8ea09abe8f2c7804916853ac1f05189b657af9b294f73c515bf9
+    0x8f20a0fc778b7c55567f41c344d39bfcdaca04fd475f2290dc05c236585a68ca
+    3 "616263" "";
+  0xccbd3b508e1ac2ed16f0f85adfec8d17ad525018307e613e0ee3aa4652b7ceb3
+    0x10001 
+    0x1fd9da85ec2d8ea09abe8f2c7804916853ac1f05189b657af9b294f73c515bf9
+    0x19d6408010f0c2722b44cd4d5e006b6ffaa634aa225d727fa37c7c6ec29c5155
+    21 "537a59b42a4662918436d6e0e4804b6b1000616263" "";
+  0xccbd3b508e1ac2ed16f0f85adfec8d17ad525018307e613e0ee3aa4652b7ceb3
+    0x10001 
+    0x1fd9da85ec2d8ea09abe8f2c7804916853ac1f05189b657af9b294f73c515bf9~
+    0x952aa4893cd2620e4942f449529ea2f7105b9d67e041a676259fb986bc507b7d
+    -1 "" "";
+
+  0xb6dd0145ada7547bba5db3a35d34e612a8d73e93c33c720f4e4506428cacc6861b2143ed3a0683394fd94cfab8ab66a024161e9c9c1848d50627b3ac46de6d1b1d73ae7b5540b3df65c53aed9d4bdf1f86c8ddacfaf608823bb3d307d89d4c8bb11b5198f9851a519538787cd054ced98734daa2f7f2dc5b51c8c02ea8c362ff
+    0x10001
+    0xbee578ae84da6a17c0369191b97bbfb33b0f7904488c9185e8efa5d953820abd7515051461beeabea9dcefbfcd8921598c528b2272d1e7367b7676db222091443944672d439fe4cc75f4f9f0594a0b19a8c634fc7f88d0f16e08ec9a95f1f0c3c03ad467a2d7db37428c145cd26b8796264de2f2209a3c09f54fa51de689b81
+    0xaf91f5abf4766348eaaff1e8e5561b10bc1e3b15b6dff221869389a70d371d649b6cf78c5444f5d03a9feac12d5741cbc340e09d112063b1486568fca7c59b4c90604f0b6243eccc18901afa9001fc5f669108ebc75d6713e28d4a081723184332d4fb2ca391e3247a76c85323e66352d60c0a6ce8240af6f0583058820b1e32
+    3 "616263" "";
+}
+
+oaepenc-pad {
+  # nbits msg rc ct mgf hash eparam
+  1024 "616263" 0
+    0x151709bd895ba510b5b3de3293c6de93adbb20cb065dcfbe3b2ca60aa39e458b30d14406eba05f0e479ddff40f554aba11da533c6d98df0321164c986807e8019c6918896817f37700a46c7fd71741a7692fcbd443952b67c32b838a576332b3bc1bab002fe3c941e9150d08b539908ef7f1901ac1246065c8520ac1beffed
+    sha-mgf sha "";
+}
+
+oaepdec-pad {
+  # nbits msg rc pt mgf hash eparam
+  1024
+    0x151709bd895ba510b5b3de3293c6de93adbb20cb065dcfbe3b2ca60aa39e458b30d14406eba05f0e479ddff40f554aba11da533c6d98df0321164c986807e8019c6918896817f37700a46c7fd71741a7692fcbd443952b67c32b838a576332b3bc1bab002fe3c941e9150d08b539908ef7f1901ac1246065c8520ac1beffed
+    3 "616263" sha-mgf sha "";
+  1024
+    0x151709bd895ba510b5b3de3293c6de93adbb20cb065dcfbe3b2ca60aa39e458b30d14406eba05f0e479ddff40f554aba11da533c6d98df0321164c986807e8019c6918896817f37700a46c7fd71741a7692fcbd443952b67c32b838a576332b3bc1bab002fe3c941e9150d08b539908ef7f1901ac1246065c8520ac1beffec
+    -1 "" sha-mgf sha "";
+}
+
+oaepenc-pub {
+  # n e msg rc ct mgf hash eparam
+  0xb6dd0145ada7547bba5db3a35d34e612a8d73e93c33c720f4e4506428cacc6861b2143ed3a0683394fd94cfab8ab66a024161e9c9c1848d50627b3ac46de6d1b1d73ae7b5540b3df65c53aed9d4bdf1f86c8ddacfaf608823bb3d307d89d4c8bb11b5198f9851a519538787cd054ced98734daa2f7f2dc5b51c8c02ea8c362ff
+    0x10001
+    "616263"
+    0
+    0xa5c94083e56aeff3490a4abd63251b332a26cca0e521815af5d2915b2422fbc7e672c8e67c3dea8c355e0b999a1f8acc905cc4437a6ddc5a7d6f54489436bd24922f83d75629d2cb92a7963d010727ef8981c3c01971962f454e42d54996e74617022d7513505fef7b1f7d5dbdeccc4673594d01f943236e4439b3175c3f801b
+    sha-mgf sha "";
+}
+
+oaepdec-priv {
+  # n e d msg rc pt mgf hash eparam
+  0xb6dd0145ada7547bba5db3a35d34e612a8d73e93c33c720f4e4506428cacc6861b2143ed3a0683394fd94cfab8ab66a024161e9c9c1848d50627b3ac46de6d1b1d73ae7b5540b3df65c53aed9d4bdf1f86c8ddacfaf608823bb3d307d89d4c8bb11b5198f9851a519538787cd054ced98734daa2f7f2dc5b51c8c02ea8c362ff
+    0x10001
+    0xbee578ae84da6a17c0369191b97bbfb33b0f7904488c9185e8efa5d953820abd7515051461beeabea9dcefbfcd8921598c528b2272d1e7367b7676db222091443944672d439fe4cc75f4f9f0594a0b19a8c634fc7f88d0f16e08ec9a95f1f0c3c03ad467a2d7db37428c145cd26b8796264de2f2209a3c09f54fa51de689b81
+    0x6ae9901c7c40104b38e10097bd42212afd437867ee4c72e7e81d7486b8721aeab493be40e3bd4335bef05c76bba1a2e30795e76fe04517d5f8fa87d16756002b061674594cb85c32b96c3a690e135d64923bd7551c45b6b89ebb89941377ce02d5c801feb33c20ebacf8dd6d6bd44d4f29bc2ff4dca35db52da545ef97733955
+    3 "616263" sha-mgf sha "";
+  0xb6dd0145ada7547bba5db3a35d34e612a8d73e93c33c720f4e4506428cacc6861b2143ed3a0683394fd94cfab8ab66a024161e9c9c1848d50627b3ac46de6d1b1d73ae7b5540b3df65c53aed9d4bdf1f86c8ddacfaf608823bb3d307d89d4c8bb11b5198f9851a519538787cd054ced98734daa2f7f2dc5b51c8c02ea8c362ff
+    0x10001
+    0xbee578ae84da6a17c0369191b97bbfb33b0f7904488c9185e8efa5d953820abd7515051461beeabea9dcefbfcd8921598c528b2272d1e7367b7676db222091443944672d439fe4cc75f4f9f0594a0b19a8c634fc7f88d0f16e08ec9a95f1f0c3c03ad467a2d7db37428c145cd26b8796264de2f2209a3c09f54fa51de689b81
+    0x6ae9901c7c40104b38e10097bd42212afd437867ee4c72e7e81d7486b8721aeab493be40e3bd4335bef05c76bba1a2e30795e76fe04517d5f8fa87d16756002b061674594cb85c32b96c3a690e135d64923bd7551c45b6b89ebb89941377ce02d5c801feb33c20ebacf8dd6d6bd44d4f29bc2ff4dca35db52da545ef97733954
+    -1 "" sha-mgf sha "";
+}
+
+psssig-pad {
+  # nbits msg rc result mgf hash saltsz
+  256 "a9993e364706816aba3e25717850c26c9cd0d89d" 0
+    0x3426a2a3e34a2ea4b6831d1366f0477cf42d9b98fddf692f3d14f9b8a168e4bc
+    sha-mgf sha 10;
+  256 "a9993e364706816aba3e25717850c26c9cd0d89d" -1
+    0 sha-mgf sha 20;
+  273 "a9993e364706816aba3e25717850c26c9cd0d89d" 0
+    0xb5c91e4c0c00aaaffba7d581011366f0477cf42d9b98fddf692f3d14f9b8a168e4bc
+    sha-mgf sha 10;
+}
+
+pssvrf-pad {
+  # nbits sig msg rc result mgf hash saltsz
+  256 
+    0x3426a2a3e34a2ea4b6831d1366f0477cf42d9b98fddf692f3d14f9b8a168e4bc
+    "a9993e364706816aba3e25717850c26c9cd0d89d" 0 "" sha-mgf sha 10;
+  256 
+    0x3426a2a3e34a2ea4b6831d1366f0477cf42d9b98fddf692f3d14f9b8a168e4bc
+    "a9993e364706816aba3e25717850c26c9cd0d89e" -1 "" sha-mgf sha 10;
+  256 
+    0x3426a2a3e34a2ea4b6831d1366f0477cf42d9b98fddf692f3d14f9b8a168e4bd
+    "a9993e364706816aba3e25717850c26c9cd0d89d" -1 "" sha-mgf sha 10;
+  256 
+    0x3526a2a3e34a2ea4b6831d1366f0477cf42d9b98fddf692f3d14f9b8a168e4bc
+    "a9993e364706816aba3e25717850c26c9cd0d89d" -1 "" sha-mgf sha 10;  
+}
+
+psssig-priv {
+  0x6af87c8c97ae0c7668bc361ff1c358198309c80cd8a74a6d9d9cc846ea63ede9
+    0x10001
+    0x30ec4a0a5854d733a5ddc3e3584469f0a7d4b1f0cb38b8cfb04483c68b77a01
+    "a9993e364706816aba3e25717850c26c9cd0d89d" 0
+    0x2b484543397da31ca7aaf774c4b19acd69eb8bc230b6d98a2ae10798793bd53f
+    sha-mgf sha 10;
+}
+
+pssvrf-pub {
+  0x6af87c8c97ae0c7668bc361ff1c358198309c80cd8a74a6d9d9cc846ea63ede9
+    0x10001
+    0x2b484543397da31ca7aaf774c4b19acd69eb8bc230b6d98a2ae10798793bd53f
+    "a9993e364706816aba3e25717850c26c9cd0d89d" 0 "" sha-mgf sha 10;
+}