aboutsummaryrefslogtreecommitdiffstats
path: root/src/tests
diff options
context:
space:
mode:
Diffstat (limited to 'src/tests')
-rw-r--r--src/tests/data/kdf/kdf1_iso18033.vec24
-rw-r--r--src/tests/data/pubkey/dlies.vec1000
-rw-r--r--src/tests/data/pubkey/rsa_kem.vec132
-rw-r--r--src/tests/test_dlies.cpp151
-rw-r--r--src/tests/test_ecies.cpp1
-rw-r--r--src/tests/test_pubkey.cpp1
6 files changed, 1256 insertions, 53 deletions
diff --git a/src/tests/data/kdf/kdf1_iso18033.vec b/src/tests/data/kdf/kdf1_iso18033.vec
new file mode 100644
index 000000000..389ae9b0b
--- /dev/null
+++ b/src/tests/data/kdf/kdf1_iso18033.vec
@@ -0,0 +1,24 @@
+
+# Test vectors from ISO 18033-2
+
+# C.5.1
+
+[KDF1-18033(SHA-1)]
+Secret = D6E168C5F256A2DCFF7EF12FACD390F393C7A88D
+OutputLen = 107
+Output = C325EBBB41A82551D5D0AD4834870A05EF3918C8CAAE38873F07DCA43127A4DEE36A6CA5970F6C06926037DE7DF79C4915D83FF705821D2C46A1FA7BB81B73E27176FEB7FD3A45E40B843F1AAEBCCB1EF4FA7EE3B9B491A342F43EAAA435EFDED41E0A3A6EC2EFF1F2ED95
+
+Secret = B711F58766B5D696513538F03036F30E0FC11CE1CAAE38873F07DCA43127A4DEE36A6CA5970F6C06926037DE7DF79C4915D83FF705821D2C46A1FA7BB81B73E27176FEB7FD3A45E40B843F1AAEBCCB1FD4AE168ACA94F8D062951EDEC1469BFEB97B79490FA58AD1D3CCB4
+OutputLen = 20
+Output = 281D7CB2D7D5531ED1F9382152D9BE9A89A1DF09
+
+# C.5.3
+
+[KDF1-18033(SHA-256)]
+Secret = D6E168C5F256A2DCFF7EF12FACD390F393C7A88D
+OutputLen = 20
+Output = 0742BA966813AF75536BB6149CC44FC256FD6406
+
+Secret = 09248DA92DCF5CA8360AE7F18533A19C6BA8E99ADF79665BC31DC5A62F70535E52C53015B9D37D412FF3C1193439599E1B628774C50D9CCB78D82C425E4521EE47B8C36A4BCFFE8B8112A89312FC04432A6DB6F05118F9946C80230CD9222E0146F2CBD5251CC388A62359
+OutputLen = 20
+Output = 6F0195F38EED2417AA6EB7A365245073E58711DB \ No newline at end of file
diff --git a/src/tests/data/pubkey/dlies.vec b/src/tests/data/pubkey/dlies.vec
index d0546b4e0..245cdeddc 100644
--- a/src/tests/data/pubkey/dlies.vec
+++ b/src/tests/data/pubkey/dlies.vec
@@ -1,42 +1,982 @@
+########################### Test vectors created with bouncycastle 1.54 ###########################
-P = 179769313486231590770839156793787453197860296048756011706444423684197180216158519368947833795864925541502180565485980503646440548199239100050792877003355816639229553136239076508735759914822574862575007425302077447712589550957937778424442426617334727629299387668709205606050270810842907692932019128194467627007
+########### Block cipher mode ###########
+
+#public static void main(String[] args) throws InvalidCipherTextException {
+# // 2048-bit MODP Group. RFC3526
+# BigInteger g = new BigInteger( "2", 10 );
+# BigInteger p = new BigInteger( "FFFFFFFFFFFFFFFFC90FDAA22168C234C4C6628B80DC1CD129024E088A67CC74020BBEA63B139B22514A0879"
+# + "8E3404DDEF9519B3CD3A431B302B0A6DF25F14374FE1356D6D51C245E485B576625E7EC6F44C42E9A637ED6B0BFF5CB6F406B7ED"
+# + "EE386BFB5A899FA5AE9F24117C4B1FE649286651ECE45B3DC2007CB8A163BF0598DA48361C55D39A69163FA8FD24CF5F"
+# + "83655D23DCA3AD961C62F356208552BB9ED529077096966D670C354E4ABC9804F1746C08CA18217C32905E462E36CE3B"
+# + "E39E772C180E86039B2783A2EC07A28FB5C55DF06F4C52C9DE2BCBF6955817183995497CEA956AE515D2261898FA0510"
+# + "15728E5A8AACAA68FFFFFFFFFFFFFFFF", 16 );
+#
+# DHParameters dhParams = new DHParameters( p, g );
+#
+# // alice priv key
+# BigInteger xAlice = new BigInteger( "A01E167DE1013D6859E6CB068B7BF272C1D49DC764AD7676BFA0D85177", 16 );
+# DHPrivateKeyParameters alicePriv = new DHPrivateKeyParameters( xAlice, dhParams );
+#
+# // alice pub key
+# BigInteger yAlice = g.modPow(xAlice, p);
+# DHPublicKeyParameters alicePub = new DHPublicKeyParameters( yAlice, dhParams );
+#
+# // bob priv key
+# BigInteger xBob = new BigInteger( "8DD88BDC19AC1403A3FC3A0FC63D360F1062E3494177DC27F7EBCBD4A7", 16 );
+#
+# // bob pub key
+# BigInteger yBob = g.modPow(xBob, p);
+# DHPublicKeyParameters bobPub = new DHPublicKeyParameters( yBob, dhParams );
+#
+# // DLIES
+# byte[] d = new byte[ 0 ]; // the derivation parameter for the KDF function
+# byte[] e = new byte[ 0 ]; // the encoding parameter for the KDF function
+# int macKeySize = 256;
+# int cipherKeySize = 256;
+# byte[] iv = new byte[ 16 ];
+# CipherParameters cipherParams = new ParametersWithIV( new IESWithCipherParameters( d, e, macKeySize, cipherKeySize ), iv );
+#
+# IESEngine dlies =
+# new IESEngine( new DHBasicAgreement(), new KDF2BytesGenerator( new SHA256Digest() ), new HMac( new SHA256Digest() ), new PaddedBufferedBlockCipher( new CBCBlockCipher(
+# new AESEngine() ) ) );
+# dlies.init( true, alicePriv, bobPub, cipherParams );
+#
+# byte[] message = Hex.decode( "00" );
+# byte[] result = dlies.processBlock( message, 0, message.length );
+#
+# byte[] ephPublicKey = alicePub.getY().toByteArray();
+# byte[] out = Arrays.concatenate( ephPublicKey, result );
+#
+# System.out.println( Hex.toHexString( out ) );
+
+####### KDF2
+
+Kdf = KDF2(SHA-512)
+Mac = HMAC(SHA-512)
+MacKeyLen = 64
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00000000000000000000000000000000
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb7c5f222b4215cd1b1c197fe8cfa2a252ad4c61a599ade3c8e8d0442b93afc626405fbe7bb1d103bdd8ce9468071a013f0f627c2cdcd61a253bbf81feb5ae6093aee4a5bd71f2a2f20764615d0e70561903de24a46cfbc9340f4fe5ce209ad48c97a4e3a3c5c75186a020f4b44008f270
+
+Kdf = KDF2(SHA-512)
+Mac = HMAC(SHA-512)
+MacKeyLen = 32
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00000000000000000000000000000000
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb7c5f222b4215cd1b1c197fe8cfa2a252ad4c61a599ade3c8e8d0442b93afc626405fbe7bb1d103bdd8ce9468071a013f5be4a46a387f09e11d75b5d21993f4eeb287410282007dba329b59a588d84888dd6f6c8d74047ae9b82097e64da28721e70adb43526752aac237f565cdebf0be
+
+Kdf = KDF2(SHA-512)
+Mac = HMAC(SHA-512)
+MacKeyLen = 20
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00000000000000000000000000000000
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb7c5f222b4215cd1b1c197fe8cfa2a252ad4c61a599ade3c8e8d0442b93afc626405fbe7bb1d103bdd8ce9468071a013ff78712a17c1894f458195e0fff798d995090d935e3deb25e13fedb9abbce760da4f49b70ae6e0b6c6261a182386b687873e03f24ac64dd74ce841a4ab04a2bb6
+
+Kdf = KDF2(SHA-512)
+Mac = HMAC(SHA-512)
+MacKeyLen = 64
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00112233445566778899aabbccddeeff
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fbe0004a18072d33b7a7ac09362953dec57197a78ccdac0f1aa98d2a2eb6580a48053b0df23dfe2518253813dc1d1e6651cfefdaa03d8a2bd25201f40abbae203d1487b0d79c57aef0c5d2fb05f9f86f8fa2806eb3cec40a46b9bf7589142ef680bea0cf197e28dd4615c6f921418a4f54
+
+Kdf = KDF2(SHA-512)
+Mac = HMAC(SHA-512)
+MacKeyLen = 32
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00112233445566778899aabbccddeeff
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fbe0004a18072d33b7a7ac09362953dec57197a78ccdac0f1aa98d2a2eb6580a48053b0df23dfe2518253813dc1d1e6651457da847bc1f337d1219222f97d75fb2ae68938e7f28d7e9595b87627d07d0bed859d0fb0077655b1c36ec12024cfedb4f8db121fd82e3029c27f8bac0c6ba1e
+
+Kdf = KDF2(SHA-512)
+Mac = HMAC(SHA-512)
+MacKeyLen = 20
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00112233445566778899aabbccddeeff
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fbe0004a18072d33b7a7ac09362953dec57197a78ccdac0f1aa98d2a2eb6580a48053b0df23dfe2518253813dc1d1e66513c34a7effee403da2137493cd7f3e55b77a0cdd894c7126cea1d50956297e9316ca319ae00b59f45fdc781d0569825835376d3ad8876d1e5351c958cc858de25
+
+Kdf = KDF2(SHA-256)
+Mac = HMAC(SHA-256)
+MacKeyLen = 32
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00000000000000000000000000000000
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb97f3ed7829ec1c4b6d22646252e19a267df9b0100f47f6a376c9b9d9c35a446d1eb7b12fe7f6d6e659d9c83c3c9b3c2a51405729857b99429f910de4fd993092b037a8270bbedcc5168f821167a256e4
+
+Kdf = KDF2(SHA-256)
+Mac = HMAC(SHA-256)
+MacKeyLen = 16
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00000000000000000000000000000000
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb97f3ed7829ec1c4b6d22646252e19a267df9b0100f47f6a376c9b9d9c35a446d1eb7b12fe7f6d6e659d9c83c3c9b3c2a3878d585b4501ae07e88d18b5ebb87b028347a4dd9a4624b849ab5b9bf18daf8
+
+Kdf = KDF2(SHA-256)
+Mac = HMAC(SHA-256)
+MacKeyLen = 32
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00112233445566778899aabbccddeeff
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb41ca8e7f448450d7c6ff6b7e61e0a4fba8f40c2944183f9c7c8a46bc7eb2d468aa5fb1cd9739320e6a60909994fb459b5515c49b1eb4a33015aa908886ec3bd26b57ad9158dbac9a8ede364fb763f5c2
+
+Kdf = KDF2(SHA-256)
+Mac = HMAC(SHA-256)
+MacKeyLen = 20
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00112233445566778899aabbccddeeff
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb41ca8e7f448450d7c6ff6b7e61e0a4fba8f40c2944183f9c7c8a46bc7eb2d468aa5fb1cd9739320e6a60909994fb459b06287932b21dbe518b9cb87a6147cbddfc72ec35f96ddf262271267bcfff1bdd
+
+Kdf = KDF2(SHA-1)
+Mac = HMAC(SHA-1)
+MacKeyLen = 20
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00000000000000000000000000000000
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb9378fd44585fabeac1d9f2941fa7fd229d2353130ecf210c7926c388c5e1e5438b3c6ba20f7551ef03d769e0d1c04587983fa4707e64dbe643d21f3a98267a3f5f14e7f3
+
+Kdf = KDF2(SHA-1)
+Mac = HMAC(SHA-1)
+MacKeyLen = 16
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00000000000000000000000000000000
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb9378fd44585fabeac1d9f2941fa7fd229d2353130ecf210c7926c388c5e1e5438b3c6ba20f7551ef03d769e0d1c0458758b34c3789b3a3200b293ada094ea99522362b81
+
+Kdf = KDF2(SHA-1)
+Mac = HMAC(SHA-1)
+MacKeyLen = 20
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00112233445566778899aabbccddeeff
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fbc220747adc100278b830f636b942d0daf1651e218ea592e01cd5a4a4234974a61b4a71ff4d1f19a5892d417fab9c21898ec74ba98720d2c72422e9214a68a9f4065d2a73
+
+Kdf = KDF2(SHA-1)
+Mac = HMAC(SHA-1)
+MacKeyLen = 16
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00112233445566778899aabbccddeeff
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fbc220747adc100278b830f636b942d0daf1651e218ea592e01cd5a4a4234974a61b4a71ff4d1f19a5892d417fab9c2189cb14a54612e3a980d73c1e0ad972deb25753eb75
+
+Kdf = KDF2(SHA-512)
+Mac = CMAC(AES-256)
+MacKeyLen = 32
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00000000000000000000000000000000
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb7c5f222b4215cd1b1c197fe8cfa2a252ad4c61a599ade3c8e8d0442b93afc626405fbe7bb1d103bdd8ce9468071a013fa0beb8264a28536dd671864fa73bf1d4
+
+Kdf = KDF2(SHA-512)
+Mac = CMAC(AES-256)
+MacKeyLen = 32
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00112233445566778899aabbccddeeff
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fbe0004a18072d33b7a7ac09362953dec57197a78ccdac0f1aa98d2a2eb6580a48053b0df23dfe2518253813dc1d1e6651825183042643dcaf2dc69700e29396d8
+
+Kdf = KDF2(SHA-256)
+Mac = CMAC(AES-256)
+MacKeyLen = 32
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00000000000000000000000000000000
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb97f3ed7829ec1c4b6d22646252e19a267df9b0100f47f6a376c9b9d9c35a446d1eb7b12fe7f6d6e659d9c83c3c9b3c2a203a3d53a802d02c1be57381a72fa28c
+
+Kdf = KDF2(SHA-256)
+Mac = CMAC(AES-256)
+MacKeyLen = 32
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00112233445566778899aabbccddeeff
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb41ca8e7f448450d7c6ff6b7e61e0a4fba8f40c2944183f9c7c8a46bc7eb2d468aa5fb1cd9739320e6a60909994fb459bee03ba55e204037119a97f02f1a8cb9b
+
+
+Kdf = KDF2(SHA-1)
+Mac = CMAC(AES-256)
+MacKeyLen = 32
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00000000000000000000000000000000
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb9378fd44585fabeac1d9f2941fa7fd229d2353130ecf210c7926c388c5e1e5438b3c6ba20f7551ef03d769e0d1c04587d25c8b9b56026ae8187f6c667c3bf57b
+
+Kdf = KDF2(SHA-1)
+Mac = CMAC(AES-256)
+MacKeyLen = 32
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00112233445566778899aabbccddeeff
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fbc220747adc100278b830f636b942d0daf1651e218ea592e01cd5a4a4234974a61b4a71ff4d1f19a5892d417fab9c2189abcc03fbf5fdaa8d101408b13fe9cea3
+
+####### KDF1-18033
+
+Kdf = KDF1-18033(SHA-512)
+Mac = HMAC(SHA-512)
+MacKeyLen = 64
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00000000000000000000000000000000
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fbd02e423bcbfd01b23c12d332dbd5f4748de89e038bc0841f254509c4119eb62d80013e6b6ea63ef00904494377677137449fbbe79ebe11c57a32e88d7b44ced4614eef8a4f1c8f061f1f60413af7ed6eddd9120d650ac9fd8216b12a6af8f1594ab117fd3536f2a44f70654330809ddc
+
+Kdf = KDF1-18033(SHA-512)
+Mac = HMAC(SHA-512)
+MacKeyLen = 32
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00000000000000000000000000000000
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fbd02e423bcbfd01b23c12d332dbd5f4748de89e038bc0841f254509c4119eb62d80013e6b6ea63ef009044943776771378743bfaff20afd91f48a78f4af831e42335aff26ffa98c1bf74ef0e1437b6eba839de9dfca32869fa021fe19dbabbd1d6d3da10b1e4f434bf760da236666b10d
+
+Kdf = KDF1-18033(SHA-512)
+Mac = HMAC(SHA-512)
+MacKeyLen = 20
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00000000000000000000000000000000
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fbd02e423bcbfd01b23c12d332dbd5f4748de89e038bc0841f254509c4119eb62d80013e6b6ea63ef00904494377677137edf4f8a39d3d8c791b3945f242ef5f321ea69a270bc6c2b24a55f3e65b67db24b7e9a8a270eb3f175b49461982a2c2d53b48fd296818f696454d13c10c7b1cc6
+
+Kdf = KDF1-18033(SHA-512)
+Mac = HMAC(SHA-512)
+MacKeyLen = 64
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00112233445566778899aabbccddeeff
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb8ab1751efd5cda04c715d94f0dc7f21058ddd90215a6dbb5f3029121c80ce39692acef02ecc5e5deb71352b45682de7ada1f4ec465be2f5fbe25776c3c03baa2c62cc3b44fa762798f3efb687a5281b7063fa71fdfc483e53dc0bfabe2853510fecb29b110b75d2292567eab1c86cb24
+
+Kdf = KDF1-18033(SHA-512)
+Mac = HMAC(SHA-512)
+MacKeyLen = 32
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00112233445566778899aabbccddeeff
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb8ab1751efd5cda04c715d94f0dc7f21058ddd90215a6dbb5f3029121c80ce39692acef02ecc5e5deb71352b45682de7aeba22adf488a429ce9bff1b51a916e917fb39d0a4719a6d3eadbfa1f5dbf93ada69056d0ba459693c9329446ceed6ab09bbd73a4651faa9107f56d132dd62072
+
+Kdf = KDF1-18033(SHA-512)
+Mac = HMAC(SHA-512)
+MacKeyLen = 20
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00112233445566778899aabbccddeeff
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb8ab1751efd5cda04c715d94f0dc7f21058ddd90215a6dbb5f3029121c80ce39692acef02ecc5e5deb71352b45682de7a21a5db0631ab9bf0f14e60f819a5bc7d2559531bce85fc466d9fdf6f3ce9cadaa60b5f833dc881deb143630b7e8a267a16144d926038ec3c2359b0f092935d22
+
+Kdf = KDF1-18033(SHA-256)
+Mac = HMAC(SHA-256)
+MacKeyLen = 32
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00000000000000000000000000000000
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb20faa6b9b8e36197a44df7ee04a6eb517621c0c25b54004b8c18da9d307743e2f75e0a106b1cd8d275ed146f0ea2d66342511e50f37a91ad3eb5efce92a858a95458a9484f9a9c939bc8ab8a028bbf22
+
+Kdf = KDF1-18033(SHA-256)
+Mac = HMAC(SHA-256)
+MacKeyLen = 20
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00000000000000000000000000000000
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb20faa6b9b8e36197a44df7ee04a6eb517621c0c25b54004b8c18da9d307743e2f75e0a106b1cd8d275ed146f0ea2d66355baba71e14d2826cf99292581db0e3f6356280965ebfa456093b75a50089f7c
+
+Kdf = KDF1-18033(SHA-256)
+Mac = HMAC(SHA-256)
+MacKeyLen = 16
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00000000000000000000000000000000
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb20faa6b9b8e36197a44df7ee04a6eb517621c0c25b54004b8c18da9d307743e2f75e0a106b1cd8d275ed146f0ea2d663fa3df2c346fec36f0181aafdde052872c021aeae057298c72068ea9271d19a30
+
+Kdf = KDF1-18033(SHA-256)
+Mac = HMAC(SHA-256)
+MacKeyLen = 32
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00112233445566778899aabbccddeeff
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb5905e1af473bff629d6559e6dfae76dd176135417ec1f8bd56da34e604f3cba3edfe626868e6a6f5706454cc808394ae979dbb099676e3e61f12de47d87eb2c68101edce237b18b3ba41eca6c8d4a2c6
+
+Kdf = KDF1-18033(SHA-256)
+Mac = HMAC(SHA-256)
+MacKeyLen = 20
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00112233445566778899aabbccddeeff
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb5905e1af473bff629d6559e6dfae76dd176135417ec1f8bd56da34e604f3cba3edfe626868e6a6f5706454cc808394ae08f8d798a81ef521ab83d5d63127c8df21bbeb596ca63fe3789c28091805f8eb
+
+Kdf = KDF1-18033(SHA-256)
+Mac = HMAC(SHA-256)
+MacKeyLen = 16
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00112233445566778899aabbccddeeff
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb5905e1af473bff629d6559e6dfae76dd176135417ec1f8bd56da34e604f3cba3edfe626868e6a6f5706454cc808394aeed35c9fcb24b2a440873264c97aadc860dc89e8b95a4e644c5ac2bb5f19c2c5e
+
+Kdf = KDF1-18033(SHA-1)
+Mac = HMAC(SHA-1)
+MacKeyLen = 20
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00000000000000000000000000000000
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb780aefcb510dadc91fb23e93c1dc3ab67515904c394001d13c57cc4e8f14120d8b5d102f8a0af143ac4ae59d8358714e71a4b9ae7881296a1f8e4fd7695a9cdc00613360
+
+Kdf = KDF1-18033(SHA-1)
+Mac = HMAC(SHA-1)
+MacKeyLen = 16
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00000000000000000000000000000000
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb780aefcb510dadc91fb23e93c1dc3ab67515904c394001d13c57cc4e8f14120d8b5d102f8a0af143ac4ae59d8358714e666ffa3f0881093199f6ab5e1f2bca9658b29114
+
+Kdf = KDF1-18033(SHA-1)
+Mac = HMAC(SHA-1)
+MacKeyLen = 20
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00112233445566778899aabbccddeeff
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb79d5d8fcd4cec89c61a875f1f44b76f2c6561450ec419bce39d5c18a83174866408ddcc61780820295438b12371cb6b77aa52d217e6b8f9bc0c940eee9f18827bfc42958
+
+Kdf = KDF1-18033(SHA-1)
+Mac = HMAC(SHA-1)
+MacKeyLen = 16
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00112233445566778899aabbccddeeff
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb79d5d8fcd4cec89c61a875f1f44b76f2c6561450ec419bce39d5c18a83174866408ddcc61780820295438b12371cb6b76f5a4cb193769a1cc3cabac1ef709ad5cd903113
+
+Kdf = KDF1-18033(SHA-512)
+Mac = CMAC(AES-256)
+MacKeyLen = 32
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00112233445566778899aabbccddeeff
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb8ab1751efd5cda04c715d94f0dc7f21058ddd90215a6dbb5f3029121c80ce39692acef02ecc5e5deb71352b45682de7a0b65f9aea49d094a71b64333211e3349
+
+Kdf = KDF1-18033(SHA-512)
+Mac = CMAC(AES-256)
+MacKeyLen = 32
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00000000000000000000000000000000
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fbd02e423bcbfd01b23c12d332dbd5f4748de89e038bc0841f254509c4119eb62d80013e6b6ea63ef00904494377677137c1b3b063d80fea08ce2cb5d846b4d6bc
+
+Kdf = KDF1-18033(SHA-256)
+Mac = CMAC(AES-256)
+MacKeyLen = 32
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00112233445566778899aabbccddeeff
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb5905e1af473bff629d6559e6dfae76dd176135417ec1f8bd56da34e604f3cba3edfe626868e6a6f5706454cc808394aef9fe22486b2f76c889d1d4d4903128f2
+
+Kdf = KDF1-18033(SHA-256)
+Mac = CMAC(AES-256)
+MacKeyLen = 32
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00000000000000000000000000000000
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb20faa6b9b8e36197a44df7ee04a6eb517621c0c25b54004b8c18da9d307743e2f75e0a106b1cd8d275ed146f0ea2d6635d54b68cd4f7e34845f8a658b2a1cc80
+
+Kdf = KDF1-18033(SHA-1)
+Mac = CMAC(AES-256)
+MacKeyLen = 32
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00112233445566778899aabbccddeeff
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb79d5d8fcd4cec89c61a875f1f44b76f2c6561450ec419bce39d5c18a83174866408ddcc61780820295438b12371cb6b7846bbcb1320b46d3857d683c68754868
+
+Kdf = KDF1-18033(SHA-1)
+Mac = CMAC(AES-256)
+MacKeyLen = 32
+Cipher = AES-256/CBC
+CipherKeyLen = 32
+IV = 00000000000000000000000000000000
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb780aefcb510dadc91fb23e93c1dc3ab67515904c394001d13c57cc4e8f14120d8b5d102f8a0af143ac4ae59d8358714e63cd5edcce32a71dfa645223fdc8249d
+
+########### Stream mode (XOR enc/dec) ###########
+
+#public static void main(String[] args) throws InvalidCipherTextException {
+# // 2048-bit MODP Group. RFC3526
+# BigInteger g = new BigInteger( "2", 10 );
+# BigInteger p = new BigInteger( "FFFFFFFFFFFFFFFFC90FDAA22168C234C4C6628B80DC1CD129024E088A67CC74020BBEA63B139B22514A0879"
+# + "8E3404DDEF9519B3CD3A431B302B0A6DF25F14374FE1356D6D51C245E485B576625E7EC6F44C42E9A637ED6B0BFF5CB6F406B7ED"
+# + "EE386BFB5A899FA5AE9F24117C4B1FE649286651ECE45B3DC2007CB8A163BF0598DA48361C55D39A69163FA8FD24CF5F"
+# + "83655D23DCA3AD961C62F356208552BB9ED529077096966D670C354E4ABC9804F1746C08CA18217C32905E462E36CE3B"
+# + "E39E772C180E86039B2783A2EC07A28FB5C55DF06F4C52C9DE2BCBF6955817183995497CEA956AE515D2261898FA0510"
+# + "15728E5A8AACAA68FFFFFFFFFFFFFFFF", 16 );
+#
+# DHParameters dhParams = new DHParameters( p, g );
+#
+# // alice priv key
+# BigInteger xAlice = new BigInteger( "A01E167DE1013D6859E6CB068B7BF272C1D49DC764AD7676BFA0D85177", 16 );
+# DHPrivateKeyParameters alicePriv = new DHPrivateKeyParameters( xAlice, dhParams );
+#
+# // alice pub key
+# BigInteger yAlice = g.modPow(xAlice, p);
+# DHPublicKeyParameters alicePub = new DHPublicKeyParameters( yAlice, dhParams );
+#
+# // bob priv key
+# BigInteger xBob = new BigInteger( "8DD88BDC19AC1403A3FC3A0FC63D360F1062E3494177DC27F7EBCBD4A7", 16 );
+#
+# // bob pub key
+# BigInteger yBob = g.modPow(xBob, p);
+# DHPublicKeyParameters bobPub = new DHPublicKeyParameters( yBob, dhParams );
+#
+# // DLIES
+# byte[] d = new byte[ 0 ]; // the derivation parameter for the KDF function
+# byte[] e = new byte[ 0 ]; // the encoding parameter for the KDF function
+# int macKeySize = 160;
+# int cipherKeySize = 256;
+# byte[] iv = new byte[ 16 ];
+# CipherParameters cipherParams = new ParametersWithIV( new IESWithCipherParameters( d, e, macKeySize, cipherKeySize ), iv );
+#
+# IESEngine dlies =
+# new IESEngine( new DHBasicAgreement(), new KDF2BytesGenerator( new SHA256Digest() ), new HMac( new SHA256Digest() ) );
+# dlies.init( true, alicePriv, bobPub, cipherParams );
+#
+# byte[] message = Hex.decode( "00" );
+# byte[] result = dlies.processBlock( message, 0, message.length );
+#
+# byte[] ephPublicKey = alicePub.getY().toByteArray();
+# byte[] out = Arrays.concatenate( ephPublicKey, result );
+#
+# System.out.println( Hex.toHexString( out ) );
+# }
+
+####### KDF2
+
+Kdf = KDF2(SHA-512)
+Mac = HMAC(SHA-512)
+MacKeyLen = 64
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb9b311515aa49918497c0c52f8c09e2cf6b3bc0343131a552b3d72ec4ee73f9628310a5d278a69c52f5a76c68031365e2504ef4abfa6e105f359e6d57c60a5beaf94a156544baba53139a3e90dd6218e504e58e1c8992df4565e68ec611c286bd
+
+Kdf = KDF2(SHA-512)
+Mac = HMAC(SHA-512)
+MacKeyLen = 32
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb9b311515aa49918497c0c52f8c09e2cf6b3bc0343131a552b3d72ec4ee73f962baa771f5b54bef678412dfd3ea7380a42014b50aec4cc55d841b2ae20a168b3d5e51da011736d60e6ad446adc72f60e41f7f25c9d2e76badc473c110b7fc67b8
+
+Kdf = KDF2(SHA-512)
+Mac = HMAC(SHA-512)
+MacKeyLen = 20
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb9b311515aa49918497c0c52f8c09e2cf6b3bc0343131a552b3d72ec4ee73f96262aa912053ba6ece87a75b8e2c1cf4fc49c5b03f7c433feaf8386ccc44e48375dc7d2a6fa59403a0e44fc268e7fb88eaa9faa66f120ca4f133631f5aace793e1
+
+Kdf = KDF2(SHA-256)
+Mac = HMAC(SHA-256)
+MacKeyLen = 32
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fbfdeb30b4378e3a6583da338d50cc23086dc8c3b33bc8e6d5612a44a2e1f0c5cbb8dbdb9d5c1e326f78df5beb66336ce5d95cd9f7cf349218874524519c2b5977
+
+Kdf = KDF2(SHA-256)
+Mac = HMAC(SHA-256)
+MacKeyLen = 20
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fbfdeb30b4378e3a6583da338d50cc23086dc8c3b33bc8e6d5612a44a2e1f0c5cbf1a5cfd4cf6a4a507d8151956d5573f94713d848517c37657f9d278b0c1f927e
+
+Kdf = KDF2(SHA-256)
+Mac = HMAC(SHA-256)
+MacKeyLen = 16
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fbfdeb30b4378e3a6583da338d50cc23086dc8c3b33bc8e6d5612a44a2e1f0c5cb0bdbd16fedfb41e28e6e52c6fc073a7f51d2951976602430a4788d9dcf94f40e
+
+Kdf = KDF2(SHA-1)
+Mac = HMAC(SHA-1)
+MacKeyLen = 20
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb070d66995d816ed81c1877398dbc56744848d0af4b63c374925eeeab5d99f55c3efe5a434f886c377d175a52798bc6edbb968932
+
+Kdf = KDF2(SHA-1)
+Mac = HMAC(SHA-1)
+MacKeyLen = 16
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb070d66995d816ed81c1877398dbc56744848d0af4b63c374925eeeab5d99f55cda95ccfde6fdb8159f286781e3abb3b0d8252f7d
+
+Kdf = KDF2(SHA-512)
+Mac = CMAC(AES-256)
+MacKeyLen = 32
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb9b311515aa49918497c0c52f8c09e2cf6b3bc0343131a552b3d72ec4ee73f9626e83627fdb17b36f71a61d52eb663564
+
+Kdf = KDF2(SHA-256)
+Mac = CMAC(AES-256)
+MacKeyLen = 32
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fbfdeb30b4378e3a6583da338d50cc23086dc8c3b33bc8e6d5612a44a2e1f0c5cbe4f06420b4e196e8d31a1667b2b50355
+
+Kdf = KDF2(SHA-1)
+Mac = CMAC(AES-256)
+MacKeyLen = 32
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb070d66995d816ed81c1877398dbc56744848d0af4b63c374925eeeab5d99f55cdeb9fc82441056058543f4240b7e5ebf
+
+####### KDF1-18033
+
+Kdf = KDF1-18033(SHA-512)
+Mac = HMAC(SHA-512)
+MacKeyLen = 64
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb068191059703df1b4b140329d94c796cd2e90d295c13bbdf475e08373bc7a22aec8bda0985f4cda3c620e9a2bfa0767d8ecfc5179cfe11c19672b1bef866e374a14a7ab51e90bbeaac8913d1b650e2addabe7f64debc1fb3a8110e6e58050817
+
+Kdf = KDF1-18033(SHA-512)
+Mac = HMAC(SHA-512)
+MacKeyLen = 32
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb068191059703df1b4b140329d94c796cd2e90d295c13bbdf475e08373bc7a22a43de2dfe50e0fb98b3e06e6df77d84eac49ac9f273b4c5a64ce5656f706a8df07e6ca7a88d26a28f3d4df96ae5b1146fa2709a87e70659bcf1ef9d0d531ba167
+
+Kdf = KDF1-18033(SHA-512)
+Mac = HMAC(SHA-512)
+MacKeyLen = 20
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb068191059703df1b4b140329d94c796cd2e90d295c13bbdf475e08373bc7a22a48f09818c5b240b402b40f080b9fd0f8103490c6592f8e56ae20ad10662f13415ada188324cb478888bab0b267ae5c05ba8acd20adc24beae6042b2d37541a77
+
+Kdf = KDF1-18033(SHA-256)
+Mac = HMAC(SHA-256)
+MacKeyLen = 32
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb536ba065e41dad66225d9469433a5dc53362280c1979818a3349c170060c3ace16137afc5f0642407ba3db6717c739bfff83d3195da75b6c7a82f78169742573
+
+Kdf = KDF1-18033(SHA-256)
+Mac = HMAC(SHA-256)
+MacKeyLen = 20
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb536ba065e41dad66225d9469433a5dc53362280c1979818a3349c170060c3acef0d102d22c4291474cd83749e499c1c65d179f1ec0cd27a3c995317597a135cc
+
+Kdf = KDF1-18033(SHA-256)
+Mac = HMAC(SHA-256)
+MacKeyLen = 16
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb536ba065e41dad66225d9469433a5dc53362280c1979818a3349c170060c3ace166abeaf1fa00a4815e47011090e272206df8c8f6362869c04eb0e704b625a87
+
+Kdf = KDF1-18033(SHA-1)
+Mac = HMAC(SHA-1)
+MacKeyLen = 20
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb96e324a74d5941d71563b32059bba36cd6990ee07690fd5ac201f81e2091835b9e0d6e486f279855a6b4e4855bd12e030367e698
+
+Kdf = KDF1-18033(SHA-1)
+Mac = HMAC(SHA-1)
+MacKeyLen = 16
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb96e324a74d5941d71563b32059bba36cd6990ee07690fd5ac201f81e2091835b30500fea11b5dfc1b60b691f3326c4d109970142
+
+Kdf = KDF1-18033(SHA-512)
+Mac = CMAC(AES-256)
+MacKeyLen = 32
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb068191059703df1b4b140329d94c796cd2e90d295c13bbdf475e08373bc7a22a6cfc28a4b15599d72666d18cb8a65e19
+
+Kdf = KDF1-18033(SHA-256)
+Mac = CMAC(AES-256)
+MacKeyLen = 32
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb536ba065e41dad66225d9469433a5dc53362280c1979818a3349c170060c3aceb5f786c722ea79e5c262c8b8b8f0f2f5
+
+Kdf = KDF1-18033(SHA-1)
+Mac = CMAC(AES-256)
+MacKeyLen = 32
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57dfafa0d81ac3aaca2570ad13cccd127239f4ee04843bb738234588f0daea53ccd8af65a5a00ed19fbb6f2eb57779ff2e38e3d5d27986253a1193dabf14d2402e1a33527866fa21f23f7abbee5f454aad762fc90139c8377bf6cc77af7f982404baea5ca4831dd8ed28babf2d43b1f65eff42167b82f020dfd4928d8e96dcb7845ecf8f560fbbf5646fae5bc4eda6d978e5fb333843a1f4525cfbdde756842a1e353f4de1503738eec6c9d901a78cdefedf8daaa49631da674b44cab2193c778bf29766730a656b42e96f84698f77913c718067048263034cf2a2f34572ab662e4b1c5b04cd71183433c591abd5613820544d46f7462bea57e44f23ab06e0fb96e324a74d5941d71563b32059bba36cd6990ee07690fd5ac201f81e2091835b29651165a98cf6ea7f18f6638151094a
+
+########################### Test vectors created with botan for AES-GCM tests ###########################
+
+Kdf = KDF2(SHA-512)
+Mac = HMAC(SHA-512)
+MacKeyLen = 64
+Cipher = AES-256/GCM
+CipherKeyLen = 32
+IV = 00000000000000000000000000000000
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57DFAFA0D81AC3AACA2570AD13CCCD127239F4EE04843BB738234588F0DAEA53CCD8AF65A5A00ED19FBB6F2EB57779FF2E38E3D5D27986253A1193DABF14D2402E1A33527866FA21F23F7ABBEE5F454AAD762FC90139C8377BF6CC77AF7F982404BAEA5CA4831DD8ED28BABF2D43B1F65EFF42167B82F020DFD4928D8E96DCB7845ECF8F560FBBF5646FAE5BC4EDA6D978E5FB333843A1F4525CFBDDE756842A1E353F4DE1503738EEC6C9D901A78CDEFEDF8DAAA49631DA674B44CAB2193C778BF29766730A656B42E96F84698F77913C718067048263034CF2A2F34572AB662E4B1C5B04CD71183433C591ABD5613820544D46F7462BEA57E44F23AB06E0FB142440A4B10508DB7E61E326B749F1B332A624C5DDF9E989A5D3A1FEC6FC5651A4FFBBC673A52C0B440DEFB8B3EEBB828A46DF1737A3E8DA67A3840041994D34C78D552A09423A4301F513CFF526D476C16C09D0C0F9D978B64A6AF8F883EBE704B412C72C91CE93B9DF82721ACFA6F3
+
+Kdf = KDF2(SHA-512)
+Mac = HMAC(SHA-512)
+MacKeyLen = 64
+Cipher = AES-256/GCM
+CipherKeyLen = 32
+IV = 00112233445566778899aabbccddeeff
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
+G = 2
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57DFAFA0D81AC3AACA2570AD13CCCD127239F4EE04843BB738234588F0DAEA53CCD8AF65A5A00ED19FBB6F2EB57779FF2E38E3D5D27986253A1193DABF14D2402E1A33527866FA21F23F7ABBEE5F454AAD762FC90139C8377BF6CC77AF7F982404BAEA5CA4831DD8ED28BABF2D43B1F65EFF42167B82F020DFD4928D8E96DCB7845ECF8F560FBBF5646FAE5BC4EDA6D978E5FB333843A1F4525CFBDDE756842A1E353F4DE1503738EEC6C9D901A78CDEFEDF8DAAA49631DA674B44CAB2193C778BF29766730A656B42E96F84698F77913C718067048263034CF2A2F34572AB662E4B1C5B04CD71183433C591ABD5613820544D46F7462BEA57E44F23AB06E0FB72CE0E99275D750433D9D8115E9F4FF5A91A341E1A3E73F64D8DBE1BFEC7FFA1D2CD8DEF2C0664017A337303455BCF37D076564864E0733DF29D910E8BF0308DCA81A064FEE96811A34B4D0E4BBA45BED459E7BE4FCA58918633F2C6CC34871759BE982DC459AB39F989E42113E0F0A2
+
+Kdf = KDF2(SHA-512)
+Mac = CMAC(AES-256)
+MacKeyLen = 32
+Cipher = AES-256/GCM
+CipherKeyLen = 32
+IV = 00000000000000000000000000000000
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
G = 2
-X1 = 3895469730603000759730584760913911891226712505433061
-X2 = 3202115124466487737101087673031994924801994092564435
-Msg = AB5BBE0D
-Ciphertext = 538F9C9CAC3EEB460B6D40B4AC331EBD3E2F3065E515177F47A083D1AC71533BF3B2931F52D71A99CA0804A633E1948F3B286453EA6CF0DD83C6DD1D2BD93B20F4942D9679CFDE5856DD81E152E1E5ADD023324B945CE68425B025AE5D0CF86C0D33244A60AF6045BD57018FFE5F84A9BF82193242FF32A64691586AAA298FE531CF06A56412DFEC3AD1F50FF8CD296310E5BB4D06E15AB0
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57DFAFA0D81AC3AACA2570AD13CCCD127239F4EE04843BB738234588F0DAEA53CCD8AF65A5A00ED19FBB6F2EB57779FF2E38E3D5D27986253A1193DABF14D2402E1A33527866FA21F23F7ABBEE5F454AAD762FC90139C8377BF6CC77AF7F982404BAEA5CA4831DD8ED28BABF2D43B1F65EFF42167B82F020DFD4928D8E96DCB7845ECF8F560FBBF5646FAE5BC4EDA6D978E5FB333843A1F4525CFBDDE756842A1E353F4DE1503738EEC6C9D901A78CDEFEDF8DAAA49631DA674B44CAB2193C778BF29766730A656B42E96F84698F77913C718067048263034CF2A2F34572AB662E4B1C5B04CD71183433C591ABD5613820544D46F7462BEA57E44F23AB06E0FB142440A4B10508DB7E61E326B749F1B332A624C5DDF9E989A5D3A1FEC6FC5651A4FFBBC673A52C0B440DEFB8B3EEBB82EAB5098B4E55338B28863B299D77FD6E
-P = 179769313486231590770839156793787453197860296048756011706444423684197180216158519368947833795864925541502180565485980503646440548199239100050792877003355816639229553136239076508735759914822574862575007425302077447712589550957937778424442426617334727629299387668709205606050270810842907692932019128194467627007
+Kdf = KDF2(SHA-512)
+Mac = CMAC(AES-256)
+MacKeyLen = 32
+Cipher = AES-256/GCM
+CipherKeyLen = 32
+IV = 00112233445566778899aabbccddeeff
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
G = 2
-X1 = 4556286536649761359339945350124531773703491905870156
-X2 = 4102583277207195475485889175414309483746012144669284
-Msg = C43BB390
-Ciphertext = C04F6BD6D1BFBDE74E775FB391A29B2D6FB7EE84C13D2061291DBA8708E406B0A6788F69F7DFEBE4CA35B31917EACD7D36CDBEBDCC51567ADF3F287F57592A0F73E1C990B807E0A67ACAE3F07361DF123C59E0A95CFCA9DEB3C7CCDC47C925F975AF0948B3DE9EC1E34EED30391FD4080D77DD07F091E3D5D89BC158A96485B28477AA95D62EFB9FA1D2B44A38A698F81C9518355BAE8B74
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57DFAFA0D81AC3AACA2570AD13CCCD127239F4EE04843BB738234588F0DAEA53CCD8AF65A5A00ED19FBB6F2EB57779FF2E38E3D5D27986253A1193DABF14D2402E1A33527866FA21F23F7ABBEE5F454AAD762FC90139C8377BF6CC77AF7F982404BAEA5CA4831DD8ED28BABF2D43B1F65EFF42167B82F020DFD4928D8E96DCB7845ECF8F560FBBF5646FAE5BC4EDA6D978E5FB333843A1F4525CFBDDE756842A1E353F4DE1503738EEC6C9D901A78CDEFEDF8DAAA49631DA674B44CAB2193C778BF29766730A656B42E96F84698F77913C718067048263034CF2A2F34572AB662E4B1C5B04CD71183433C591ABD5613820544D46F7462BEA57E44F23AB06E0FB72CE0E99275D750433D9D8115E9F4FF5A91A341E1A3E73F64D8DBE1BFEC7FFA1D2CD8DEF2C0664017A337303455BCF37845E0B4A59D925366D35D40C344FE6BD
-P = 1552518092300708935130918131258481755631334049434514313202351194902966239949102107258669453876591642442910007680288864229150803718918046342632727613031282983744380820890196288509170691316593175367469551763119843371637221007210577919
+Kdf = KDF1-18033(SHA-512)
+Mac = HMAC(SHA-512)
+MacKeyLen = 64
+Cipher = AES-256/GCM
+CipherKeyLen = 32
+IV = 00112233445566778899aabbccddeeff
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
G = 2
-X1 = 1054639601167296898572220004033907486000310327029
-X2 = 1342657759849572617856127220396675041367757265787
-Msg = 3B06E0705DC9DBA971AA624393984D5B
-Ciphertext = 2AB9B180CEF08E761EDB4D7B7C538FBA0FD37BACE9416789A0DD6551F2DDC6025C76A663F1AAD5000EC03418A6220ABA6D3DC5EA82D7340E2FFCB5665AD3A2223CDFF9C39889CBE31E44CD31BCFDCEFCF2A9916FD39E2720A7B826F7E6998F734F251C71DC970AF3FB12949C14AA759966733BFC976CAD0BE71FC5DBE285200E75647C62
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57DFAFA0D81AC3AACA2570AD13CCCD127239F4EE04843BB738234588F0DAEA53CCD8AF65A5A00ED19FBB6F2EB57779FF2E38E3D5D27986253A1193DABF14D2402E1A33527866FA21F23F7ABBEE5F454AAD762FC90139C8377BF6CC77AF7F982404BAEA5CA4831DD8ED28BABF2D43B1F65EFF42167B82F020DFD4928D8E96DCB7845ECF8F560FBBF5646FAE5BC4EDA6D978E5FB333843A1F4525CFBDDE756842A1E353F4DE1503738EEC6C9D901A78CDEFEDF8DAAA49631DA674B44CAB2193C778BF29766730A656B42E96F84698F77913C718067048263034CF2A2F34572AB662E4B1C5B04CD71183433C591ABD5613820544D46F7462BEA57E44F23AB06E0FB9A0B0CAB5C285FB0CB1F788213B6B82A2C2E485C1D514BAEF7FC241D57DB031D9E80361C55B562232759A660C89E0DE0E11BB8C807142C1C98C07C9BD08BFC7A3D9977133AD07DDED60728B46D668444A74BC001CFBFB8E8FE0BACF6A4078DD4212DC7CDC3291CB3F02AC0B7CDF6E65D
-P = 1552518092300708935130918131258481755631334049434514313202351194902966239949102107258669453876591642442910007680288864229150803718918046342632727613031282983744380820890196288509170691316593175367469551763119843371637221007210577919
+Kdf = KDF1-18033(SHA-512)
+Mac = HMAC(SHA-512)
+MacKeyLen = 64
+Cipher = AES-256/GCM
+CipherKeyLen = 32
+IV = 00000000000000000000000000000000
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
G = 2
-X1 = 1019791127804545295775858763356184757983418129858
-X2 = 791304855263120499982139573682243365135340447126
-Msg = DD92A05E19BBAD4A33CEFFA0FA2727E9
-Ciphertext = 3F0300C53C0BB02A3EF2EFCC751EE5D98AE991730C1C2FE39D11A74D32D892AD63A9EECA09BBBE606FB426E03BBD480FD224E09712BB85FE649D543CBC23113A39F9102C65D31DF330ADF233735C1D60D1BCDE22744392D2D9DE50393984F276A33DD85F763ED1226B88DF1662554AD27820F66A995FE1481189A2B8C3071D0C32EE9960
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57DFAFA0D81AC3AACA2570AD13CCCD127239F4EE04843BB738234588F0DAEA53CCD8AF65A5A00ED19FBB6F2EB57779FF2E38E3D5D27986253A1193DABF14D2402E1A33527866FA21F23F7ABBEE5F454AAD762FC90139C8377BF6CC77AF7F982404BAEA5CA4831DD8ED28BABF2D43B1F65EFF42167B82F020DFD4928D8E96DCB7845ECF8F560FBBF5646FAE5BC4EDA6D978E5FB333843A1F4525CFBDDE756842A1E353F4DE1503738EEC6C9D901A78CDEFEDF8DAAA49631DA674B44CAB2193C778BF29766730A656B42E96F84698F77913C718067048263034CF2A2F34572AB662E4B1C5B04CD71183433C591ABD5613820544D46F7462BEA57E44F23AB06E0FB7177BE14E602FEB0274B170E41879977CA357CD99EC7FF096964C0FE4AA7D39DC90D24DC433C695D3B2B4A7B88BF08B2099F5321322A66A5377C14FF3F7FF6C96FC72DA82DADAB8064248F0751EAEFC62ADFD4FA782D11EA953FA2FE924FFD7CB7310531D2A9A0091F23E0E195DAAB3E
-P = 1552518092300708935130918131258481755631334049434514313202351194902966239949102107258669453876591642442910007680288864229150803718918046342632727613031282983744380820890196288509170691316593175367469551763119843371637221007210577919
+Kdf = KDF1-18033(SHA-512)
+Mac = CMAC(AES-256)
+MacKeyLen = 32
+Cipher = AES-256/GCM
+CipherKeyLen = 32
+IV = 00000000000000000000000000000000
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
G = 2
-X1 = 1127072655127804554962850771491034708297993164117
-X2 = 909338501771729516589244957544435828677252574269
-Msg = 174E756AF8FFB51990BF3C69688D3A7F0B388F2BCE62A095BC12CD6DA2C2AD65
-Ciphertext = B99BBBC64F6320060200E6FFE7D1FE6E5EEA79DF142111AF88D377037BD9186341B7A7A27F2AE8BB77282B8EA13D821DD77186412CA3B9B5E1650A0D20687B1C8D556FD7D547D475F71BBD7D6417311F535A9A6D95CEA8AFD1146B1A1741828E8AD46B058507A67111CB62132350EEAC1212D90535677855E17B1DA9DC4CE790C4B917B1359123226FE62DCCE5475721F09CEA23
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57DFAFA0D81AC3AACA2570AD13CCCD127239F4EE04843BB738234588F0DAEA53CCD8AF65A5A00ED19FBB6F2EB57779FF2E38E3D5D27986253A1193DABF14D2402E1A33527866FA21F23F7ABBEE5F454AAD762FC90139C8377BF6CC77AF7F982404BAEA5CA4831DD8ED28BABF2D43B1F65EFF42167B82F020DFD4928D8E96DCB7845ECF8F560FBBF5646FAE5BC4EDA6D978E5FB333843A1F4525CFBDDE756842A1E353F4DE1503738EEC6C9D901A78CDEFEDF8DAAA49631DA674B44CAB2193C778BF29766730A656B42E96F84698F77913C718067048263034CF2A2F34572AB662E4B1C5B04CD71183433C591ABD5613820544D46F7462BEA57E44F23AB06E0FB7177BE14E602FEB0274B170E41879977CA357CD99EC7FF096964C0FE4AA7D39DC90D24DC433C695D3B2B4A7B88BF08B299019BFDC4ABE7BBED415937E9F58B9D
-P = 1552518092300708935130918131258481755631334049434514313202351194902966239949102107258669453876591642442910007680288864229150803718918046342632727613031282983744380820890196288509170691316593175367469551763119843371637221007210577919
+Kdf = KDF1-18033(SHA-512)
+Mac = CMAC(AES-256)
+MacKeyLen = 32
+Cipher = AES-256/GCM
+CipherKeyLen = 32
+IV = 00112233445566778899aabbccddeeff
+P = 32317006071311007300338913926423828248817941241140239112842009751400741706634354222619689417363569347117901737909704191754605873209195028853758986185622153212175412514901774520270235796078236248884246189477587641105928646099411723245426622522193230540919037680524235519125679715870117001058055877651038861847280257976054903569732561526167081339361799541336476559160368317896729073178384589680639671900977202194168647225871031411336429319536193471636533209717077448227988588565369208645296636077250268955505928362751121174096972998068410554359584866583291642136218231078990999448652468262416972035911852507045361090559
G = 2
-X1 = 1400390629906877310807893670888997072266707870316
-X2 = 1409894924299088894270577337460879151312883489271
-Msg = 75DAD921764736E389C4224DAF7B278EC291E682044742E2E9C7A025B54DD62F
-Ciphertext = C591E27A2C12742A959652F5F341F558CA0C7DAF2E6B5ACE32DCAAF459553BA23EF0235EAFD86A7F2D70587239D858484E5CD36122C2B9F6E410C7A9C307B2A2A084BB1B634A15AC9F09E38EAF421D14C5A07B6EB5EDE6915E8DE9D3D9D01DBD8822FBD79BA7FF3DF921B5451BBD9A12AB41FD4DAB829599BC2736B23753063C0C5FFCBA7DB06DE26D3C441D126FC1A46531F593
+X1 = 4316760088048858173826993660634587631078362099236037980378049883427191
+X2 = 3824157470039532100357278938102046076290169354062923298804711018976423
+Msg = 75dad921764736e389c4224daf7b278ec291e682044742e2e9c7a025b54dd62f
+Ciphertext = 57DFAFA0D81AC3AACA2570AD13CCCD127239F4EE04843BB738234588F0DAEA53CCD8AF65A5A00ED19FBB6F2EB57779FF2E38E3D5D27986253A1193DABF14D2402E1A33527866FA21F23F7ABBEE5F454AAD762FC90139C8377BF6CC77AF7F982404BAEA5CA4831DD8ED28BABF2D43B1F65EFF42167B82F020DFD4928D8E96DCB7845ECF8F560FBBF5646FAE5BC4EDA6D978E5FB333843A1F4525CFBDDE756842A1E353F4DE1503738EEC6C9D901A78CDEFEDF8DAAA49631DA674B44CAB2193C778BF29766730A656B42E96F84698F77913C718067048263034CF2A2F34572AB662E4B1C5B04CD71183433C591ABD5613820544D46F7462BEA57E44F23AB06E0FB9A0B0CAB5C285FB0CB1F788213B6B82A2C2E485C1D514BAEF7FC241D57DB031D9E80361C55B562232759A660C89E0DE0FB884998AEFEF7CE84F114928423F7E2
diff --git a/src/tests/data/pubkey/rsa_kem.vec b/src/tests/data/pubkey/rsa_kem.vec
index a55523533..0ffb8a535 100644
--- a/src/tests/data/pubkey/rsa_kem.vec
+++ b/src/tests/data/pubkey/rsa_kem.vec
@@ -2,6 +2,15 @@
# RSA-KEM tests vectors from ISO-18033-2
# http://www.shoup.net/iso/std4.pdf
+# Test C.6.1
+E = 65537
+P = 74100103850091296168511028051948833436338123529747970640732238422269665602829
+Q = 79461607023043824134896992211543210236933205105414344240218914846895267687977
+R = 032E45326FA859A72EC235ACFF929B15D1372E30B207255F0611B8F785D764374152E0AC009E509E7BA30CD2F1778E113B64E135CF4E2292C75EFE5288EDFDA4
+C0 = 4603E5324CAB9CEF8365C817052D954D44447B1667099EDC69942D32CD594E4FFCF268AE3836E2C35744AAA53AE201FE499806B67DEDAA26BF72ECBD117A6FC0
+KDF = KDF1-18033(SHA-1)
+K = 5F8DE105B5E96B2E490DDECBD147DD1DEF7E3B8E0E6A26EB7B956CCB8B3BDC1CA975BC57C3989E8FBAD31A224655D800C46954840FF32052CDF0D640562BDFADFA263CFCCF3C52B29F2AF4A1869959BC77F854CF15BD7A25192985A842DBFF8E13EFEE5B7E7E55BBE4D389647C686A9A9AB3FB889B2D7767D3837EEA4E0A2F04
+
# Test C.6.2
E = 65537
P = 74100103850091296168511028051948833436338123529747970640732238422269665602829
@@ -9,14 +18,131 @@ Q = 7946160702304382413489699221154321023693320510541434424021891484689526768797
R = 032E45326FA859A72EC235ACFF929B15D1372E30B207255F0611B8F785D764374152E0AC009E509E7BA30CD2F1778E113B64E135CF4E2292C75EFE5288EDFDA4
C0 = 4603E5324CAB9CEF8365C817052D954D44447B1667099EDC69942D32CD594E4FFCF268AE3836E2C35744AAA53AE201FE499806B67DEDAA26BF72ECBD117A6FC0
KDF = KDF2(SHA-1)
-K = 0E6A26EB7B956CCB8B3BDC1CA975BC57C3989E8FBAD31A224655D800C46954840F
+K = 0E6A26EB7B956CCB8B3BDC1CA975BC57C3989E8FBAD31A224655D800C46954840FF32052CDF0D640562BDFADFA263CFCCF3C52B29F2AF4A1869959BC77F854CF15BD7A25192985A842DBFF8E13EFEE5B7E7E55BBE4D389647C686A9A9AB3FB889B2D7767D3837EEA4E0A2F04B53CA8F50FB31225C1BE2D0126C8C7A4753B0807
-# Test C.6.4
+# Test C.6.3
+E = 65537
+P = 74100103850091296168511028051948833436338123529747970640732238422269665602829
+Q = 79461607023043824134896992211543210236933205105414344240218914846895267687977
+R = 032E45326FA859A72EC235ACFF929B15D1372E30B207255F0611B8F785D764374152E0AC009E509E7BA30CD2F1778E113B64E135CF4E2292C75EFE5288EDFDA4
+C0 = 4603E5324CAB9CEF8365C817052D954D44447B1667099EDC69942D32CD594E4FFCF268AE3836E2C35744AAA53AE201FE499806B67DEDAA26BF72ECBD117A6FC0
+KDF = KDF1-18033(SHA-256)
+K = 09E2DECF2A6E1666C2F6071FF4298305E2643FD5
+# Test C.6.4
E = 65537
P = 74100103850091296168511028051948833436338123529747970640732238422269665602829
Q = 79461607023043824134896992211543210236933205105414344240218914846895267687977
R = 032E45326FA859A72EC235ACFF929B15D1372E30B207255F0611B8F785D764374152E0AC009E509E7BA30CD2F1778E113B64E135CF4E2292C75EFE5288EDFDA4
C0 = 4603E5324CAB9CEF8365C817052D954D44447B1667099EDC69942D32CD594E4FFCF268AE3836E2C35744AAA53AE201FE499806B67DEDAA26BF72ECBD117A6FC0
KDF = KDF2(SHA-256)
-K = 10a2403db42a8743cb989de86e668d168cbe6046
+K = 10A2403DB42A8743CB989DE86E668D168CBE6046
+
+
+# Test vectors generated with BouncyCastle 1.54
+
+#import java.math.BigInteger;
+#import java.security.SecureRandom;
+#
+#import org.bouncycastle.crypto.AsymmetricCipherKeyPair;
+#import org.bouncycastle.crypto.digests.SHA1Digest;
+#import org.bouncycastle.crypto.digests.SHA256Digest;
+#import org.bouncycastle.crypto.digests.SHA512Digest;
+#import org.bouncycastle.crypto.engines.RSAEngine;
+#import org.bouncycastle.crypto.generators.KDF1BytesGenerator;
+#import org.bouncycastle.crypto.generators.KDF2BytesGenerator;
+#import org.bouncycastle.crypto.generators.RSAKeyPairGenerator;
+#import org.bouncycastle.crypto.kems.RSAKeyEncapsulation;
+#import org.bouncycastle.crypto.params.KeyParameter;
+#import org.bouncycastle.crypto.params.RSAKeyGenerationParameters;
+#import org.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters;
+#import org.bouncycastle.crypto.CipherParameters;
+#import org.bouncycastle.crypto.InvalidCipherTextException;
+#import org.bouncycastle.util.encoders.Hex;
+#
+#public class RSA_KEM {
+#
+# public static void main(String[] args) throws InvalidCipherTextException {
+# // Generate RSA key pair
+# RSAKeyPairGenerator rsaGen = new RSAKeyPairGenerator();
+# rsaGen.init(new RSAKeyGenerationParameters(BigInteger.valueOf(65537), new SecureRandom(), 2048, 5));
+# AsymmetricCipherKeyPair keys = rsaGen.generateKeyPair();
+#
+# // Set RSA-KEM parameters
+# RSAKeyEncapsulation kem;
+# //KDF1BytesGenerator kdf = new KDF1BytesGenerator(new SHA1Digest());
+# KDF2BytesGenerator kdf = new KDF2BytesGenerator(new SHA1Digest());
+# SecureRandom rnd = new SecureRandom();
+# byte[] encKey = new byte[256];
+# byte[] randElem = new byte[256];
+# KeyParameter sessKey;
+#
+# // Run RSA-KEM
+# kem = new RSAKeyEncapsulation(kdf, rnd);
+#
+# kem.init(keys.getPublic());
+# sessKey = (KeyParameter)kem.encrypt(encKey, 0, 256);
+#
+# RSAEngine rsaEngine = new RSAEngine();
+# rsaEngine.init(false, (CipherParameters) keys.getPrivate());
+# randElem = rsaEngine.processBlock(encKey, 0, 256);
+#
+# System.out.println("E = 65537");
+# System.out.println("P = " + ((RSAPrivateCrtKeyParameters) keys.getPrivate()).getP());
+# System.out.println("Q = " + ((RSAPrivateCrtKeyParameters) keys.getPrivate()).getQ());
+# System.out.println("R = " + Hex.toHexString( randElem ).toUpperCase());
+# System.out.println("C0 = " + Hex.toHexString( encKey ).toUpperCase());
+# System.out.println("KDF = KDF2(SHA-1)");
+# System.out.println("K = " + Hex.toHexString( sessKey.getKey() ).toUpperCase());
+# }
+#
+#}
+
+
+E = 65537
+P = 164595018656847388234196458295155176106758058516345827114376462850563872821063372112958430530617671033588730874556123844100607371610222357044282210077745438573569464675422956060816242459751581224391340938674316979740379513584046730132237584210162428969621574895730609832661623255469386625333399495443111996269
+Q = 154815693339461674971201202928063553732348769555838450004553011845712199598612461913292296568174793540787763943903927157071815682359748526650950854481712029197298601776364230444684691118479599447186381098181319184319389074673921642098571884038579323293539363273392989580933234215294363547330708372978868708523
+R = 0E37156BA7E268DA28FA234531267352ACCBE1238096B46D1BCBFB9404309BF625A2EF0DFC7009DDD032A86BACCE46F105FCAF11E776D0CF8D5C8B6ACB2EA8A493D352C1394CCA37FE91A97A06758398F7C041BFAF0216B9DC9872223AE6031D995C15DCBE8DCEE7EC01FBDA1E485FAC4D3645C47617A03E941AFB0017A6BA48FB00F24F036A52029F0F032288AE9F010867C28C3FEE0A1289F2FC2302CEABC7C41441526BAB5F0B697A651C440B87752945944561471FBEEEC0E65F17B190F2C504B208674A9CDAF474FDF8F61371696105642E8FE700157C600E9E722200D371A5A177C98098F681632C1BFBC84DC7DFE8889E256DCDF8158277DF25B7ED28
+C0 = C03666B82F2E0076C9CF78056F3BE5549A2BD03349D0D52160C3D9C1C2B46FB4E65642B340EE73EE73D301CE8DB75A5CDF5B972011490758A1E0314E0E7E4B952A546FBA6EE8AA7370B6773D6E591D2561148FD049E571A5D8AEAF2BE9EA90F15FFE2736D62AC13BB6C2BA0FC993E7CD72FA890E50DBF27554D3BF7F1B913107F201C6D9EA3E56C53E5683C763C0E7E23F1CD416CBCAD7A6A688AB400CBC5D87B1D6DD3612E2615C87B398AE42B43FD5CEAF762033AC3860C38E96CEF3E5B1180C0EB5DE5D33138131A78D12B4E826ACE6BE2F1954CD56716D3BD7FE23C7187EE40E34BF5CD0F01B0F9A6DE390830EC71CB9021ADBCE5AE761E6A1439E157E01
+KDF = KDF1-18033(SHA-1)
+K = 2879A51427541B4CDAC3AD823C75FB2B4CF895BFC8F08DF4F1355CCE27C5A544B3701E91D4E6A8FB9FA7762168974202D6719DA117AB506386F6BAED09F1F8FB84620684AE4C962C05CE130D6BA770F1A54CA8C68CCEA59702DE33DDF456B0F34813CC8BFE6999C6086B5EE96122669EAF85FD427D6EC80250FB86D39AAEA752A57EDE4AD5802B709B536A42F1C9285BAA73884DA2E22204C0D60404DE70E24D03BBA5ED3A453782D0B49800EDCE562FE2793B6C9AA59881FB29992BDA65C67BF2625EBCBC66EE87F734C95DDFEC808EF6D44DD9682801F26D0F91F60F85F01A1A3D197CD13DFC2B174F4BE14CBB14A5946F8E22E9AC492472707DB684B85E0E
+
+E = 65537
+P = 165682553981176118532729182146905998679943181743603610826612411317699124590307661258927675906473733978600336684278647483508039146807670237361320224284884260137823150284470410159567305207616168401019780840936247120935592214517200106038748853738693679377569061489838937379549520603546589138787128041588064878139
+Q = 143206712570371537550995404277407237228050083266520061998580639832334534746420654502869922349173806485254421425144895914807064547119687982721578817558387859855456340407418648913018484932412203528851361523506272199499411641260838497681809120731343660418816310306493100346440107882636773330640419989066678161591
+R = 28129474639D1203418D213E86445D947F72CAB0D8E7A3C71B1CBA0CDF73374290CEA1ABE108E4E449030D1E2C6606DA563BD752E8541B5B6E450542CC77DBB0A48B7A336E8733D1294DD656B39D8093A20DE7756F919BDBDFCE659AD4067FC25157282CC278ECABAA203831CA341189E4EAEA006703CF08F9A1C03ABC5A4FA92D40ECEF8CE50D4F2F26CCDC73628BBE7434B2726FEC43DAA57E84B506BDB5B656E2D955D679B250DD4B3338F6AA1987F8583963F714D42D7D44C5AAA6ACF0167880FD429C7F675C92FEFD372DFB49856F1D56F975D15C5DA34A9934A9BF5F07B4C3FEC7B5D28BB9B84C0F56DC699AE9B41E6BBD01AD1AA716FD5D8865231325
+C0 = 1581A71B5411C07F1062F6C1336C5A36D2444635CB8F054DDFCEAC9DB1A0669C8E39305ADA0592D11950BEC110E864909102E43F83898D24D27F8537938AD0F9C944F263128DD43A34983D87546642494E1E9CBD2439D9F1BF4B82553C7442F59CC6D98FF37BCA1734F2041F448781B98E50C7B00CD6156A0BE94C54558B1B70CF56D525FEFBAB6791EE4DA16702D55A6E1A29E3C0F63197AB9C8C0F7A1678F786AF06D35E411044FCCFB5DEFD231BA565DA4E53AEEECA5A73A2A51FCC31504AA0F532B9EC9D9CF9DBD2B2F292EB628F698C407E8144365ABE978F746944E195E2CB0DDAD492F2DAD02C8ED4DAB0BC238902991C873E3DAB6F942627F35EDF5B
+KDF = KDF2(SHA-1)
+K = C5A2D782FE1C4214AB97F236A798AD36B64B0C8409AE3FBC59410DED70093FB4F7BC38B94E2678BC053D9735E09E6202CD477C74B101800673606C8C1F0A929CA3B1E34539DD7DFDEB800B42CF3DD6C14256C153682E9F84731B8261A8F45C2A6D2DAB0998BA7D3DBB29135612941B4A4585DBEF739A96DEFCD2B74CAF01A5E0909097B6DA509CD6943E89092E68D28A680CEF9C66D3CE9FE21361D29A555A9512A9C2E41C9D544286D4D4410CC88BB2A10E482DE0D4E6B315FF59C89DD10E94D627551409034786E6A2D208131F373B65109B243D470AF4CFC6A553899CAA3155A2175AE8839A4F055EDAECA1BC2684F939DCEC78EDF7FB732D7846B3A18625
+
+E = 65537
+P = 179755607498698915156472312052390412374888590078375696682532716957195195099259588363411397567713254275286890726691187860893111162737997682002393982240049851937818640585805951138169144697989793856350446557625052761041597980829377580837366042983675457609703917876740065059607053414664192851238580007259316720001
+Q = 148719184858104886900273938140975358813632106139149548242878818497931617501707960253163319706085166733518552164915488661596182276698642829123689633530834640799438040580668970280384710610904953557835073384753529961289979742647223109396909547559071386644256344079306844126126599542442383558280600414522015893031
+R = 3EE2CB0B6F63517F3CF563DFD42996FF6AAEA37C2C0DC534A394A5D993B4E5CDA2DBD3BB775BADEBFF1395F07D3C8EAA9E48B826350966613493FEDFC713CD7ED56D67619E01C87B7F077F463DD786A54AB94D69A7F4A0E2A1FAE9AA6EF3BEB65072752129FD50E69C7C83EF24185D0F6ADD80010A48C8209DB8F623D32758AC839CCFDF5FC9D21B300422C3D259E6BC93EADFFBDCD00233AD9A599852DCBB511C3553C56CD70638C208FAF37D1EF166F8578C6FD9989A1CB6CB2FD02A1D3678A955F17E8F9E3F102B04F809EB51AC2CE2F44DD71E6E92435BCDF0B390689634068D17FA5AB4ACCBDCC836543256557F5BEF58DF0FF610ABBAABA5303FAE786C
+C0 = 3F2F160FA19409E3053626B32D1C2404A01A036C05933E2C698FF22584CCC85FB07E022A346D229084F9C4DB15B17C6ACB2FC7B987D1ED0E276525113856A6A2924EF4ACC9094AFD0B27814CF3003964D3A2ED6BF9E2C1259DBB3866E8CC6459223B059B52F826CAC8FF8639522D1B96891033637A351236ABB4090F8436FDD57E5EDAD304E1910E31E2D4141CB418507256A5D4DDCBCBF460BB7331A54CE595900A7D4FE8BACCECEDCB7285250A6294EF6E6A1B1D07D5B22B5DE495A081404DC610F422066B328A200314F5E4061D772FDFF8754FFD843375BB83F19CA5D92B057556F9C90F288008E4A493AFB48098E5BF16A0566C7E7C6AEC8CFDD2993DFA
+KDF = KDF1-18033(SHA-256)
+K = EB904FC37892E8154D04243A85B4B4ECAAA57C4CBF270DABAC718FF187AA0850E0F2E7E0BDA0DE2F906669C4735F236CBC4B8B295757C92A76FCCD7E19B66B18416642B63477978DD21950520CDE6982AABAFFDF311C9D9D666841297FC6EBAAD1A303DBCD9342D524A860FBD9459921A2ABD9C7A7A76C5976FD825D1F190750BC9AF86E93A710BD1F6423B24949F74DD3D47055ED7AC2FE0731B95A1F6CF800DC6B01FAED1FBCFBF7739681A091BD71FF348DA6F873AEDF74DC78BC51E0BC12A7D961467349ADAA903B377439DA8B89B59D1AEAC218171DAC7D0161652876840E83ED257E7F442720C7A95C789C3BF71491ED9FD614C2F8361449DC828989F6
+
+E = 65537
+P = 174046890283469981585949748084588782939194923413091656190673083567523094911170964227361574020858404084585662363904510122441927570563481403504090513712717690123363848523867890907908094889910522763278946428974722067709246573085561453779287668510821777191086478423606338468569126373720116453187524405485772061839
+Q = 159886943456237230511782182155135817897256893518822406366694405173420983366707947079250785226814562408785742924747520534652016503484243119104833754434242033432495210989066912519012696876909415983027430528396497006208411998289498383728139997758102585880193256248894236292500748201796836402007794726533935272231
+R = B4CC3C096FE80BF1E684AF845BFC800D062C150008FEAD3BE59EFA151CF17396CFB3D46BBC92E0CEDEE58430C6D2C44B58A9C2A03C2A5CFAAF46BF1F8D1DF41A5371C04060688448DFBCA47D3A15B3C385283427ECCEFEE78C66491DC6760A2F455DB153C26738985841A47049458CD4753A1EC48519030B6436A48A68E8534981DAB1AB0431DC4A7CF587D09EFAD13406C51C74D5CE8D66525791A2D8A916908F691CBC7CDA5205C2D63B7CAD7FD2144D2DBFEF8D8078F87CD26A6F4E5AAEA16E5FF5EADB0D9D4F9CF5C66BF9B433499B69CF2857EDD03600253305E7D2FF94C3E2A8083B423484781E7A05229A58AC07911811104EB8DD0336FA576F5A8B35
+C0 = 49913BF2D62222EAAE1DB7F864879777BF4692D9FD37403F7507825ED715E87DF6D635170A4F55045B02B3464AF353B7E2E601640F44E280B1E19E158785C24BFB9762A5BB8FB00809990CB9E4F1771F1E522A89EFF67659CB8916B1393E19909C480EF38C22A3170C28C0C4EC60C1CEBA00FD740B3AE3AE7DFBBE142D251F4E985B95C37A1516840F2B942D18F2A0E652226617D46C4629419DC46413CF0D084AF8E02B011B2C12996187EB0550918F9AAEA2572A0D57E5DD2A115E51B9826F7B4C3D55A68F97F97F69800577104BA96AF2D6BA5093A614299F0D9DB12B9787D30F78958EFB5351E4C947A6C5B7C1A6575A6DDA273067FC6775DC421BE36F5D
+KDF = KDF2(SHA-256)
+K = 428A41D3DD6616E53FA74F810419051EBDF681B3714CA3F26170C78E17101B5C539FD6B02446EA3F7E3F4C769A0FC8960DEACB10FECF7AC1F4EEE2FDD0BFF8E84ECF02E7137C53C9B003DA9AAC897A6BC53590013037497C78C76FFA6DE9F663023430DCAA9BBFDBECDF040CB6A53233517604CF130F27BC3D6071160A4F3C7BF3025B391B75BCE68978D22530047C88210EC3B7D5C70B818EFB918E9BE81A4DD4E43C3C2234A0EF04840DB4092FAEFE6B216DA7E153B8D3306583FB2605635FC7EA829D28C78DFA6A268F83FF0C7413203C8E4D0BD6804A81C6E89B7D6CA75128BCB08CB6034FBDCCFA21120A03419568588842C76E020A0421A8A87E64251B
+
+E = 65537
+P = 146322265547229421453860780971902143051303041033416042645882020825094157913878642939804253448552439940923642759323031670253155786844025280534330614230541220963959783346500062839405049709904412394986928442891456821174158709683716293283651651769705737708866705750158297813695995634661647418391504788057547514647
+Q = 129767039082616161544399761373644746030229222410917829012071323664225125630516983958202525186512259379284360095733938992803044795665548845422328358269410402137832225443746550997158014332624820747790487469585420099915597895802412802364656829129766039650228465555912059986552091776600128100526678441920008253431
+R = 0A7DDB169851D28F0A0A330F283AB8DD63FF201668B17AB9138E4BE781D7963376A2E242C30664182422338704FAE793C8E474577EEF7382AD46635157840DFF73D0E72FB3F248F5C79EEFA759379D3CC49EEB8B4755EFFA61905A8FE6C0A20A6791D5DBB56DF9D974B9EFE0AF7804092D80FAC58F37CAD6367AB5BC3C183998DC582CF2DF7115592A23E58E1C40FD0CA76E6C3EF2620B4A4451FBF0379305E6333B18C95FA97C88F0AE985D2F091F2B0359000EDD5A67356BFCCE6B89ACC38F99035628A9D8FC946C13399D9813650ACB2C672C01B43FAD68785063A74FCE2B134050606B92ABE1E1C00685FE2C3E781F458C525E017BBAB8C3FEE99E4C78E9
+C0 = 40B5857B61D2A93B5CF161082FD038411A66F050D67E7F5311259558F5C39E2A28B4A11EB589751604E6DC7C1BEB202AF36DDE8E989C7D417FB57B463992A87DBF6156B6D6CB1859192BF24880DFDFF029B59E89E1880D02FE034F5FF7A6EB261D246BA01EA99ACFAA63891D8D407696AF6BFDEF8E8ADA674B64240B9DA8158D8702CED3B1C53CE8873A211846C78731E1749FFDCEBE7A82C06FB29D9120C1BB010356D4706A0CA63278D54F1A4B4AF2235A960376ADBFE1009569F47BA0A238356137B48C898256117F5649DA7CD3B37E07146BE20503FCBBB7B56936F55E644274DB8FB223EB742F6571C0F138BF7D47D7B22B74840F7C25D6303EE509ED90
+KDF = KDF1-18033(SHA-512)
+K = A7578BFE83F5DFC954AA77B1500223ADAE95732FE4E0F9A113BAA64FDCB9B6DB90FD0F5FC368A03260F6E6D9B7A09690CC3CDA377DF6F610305ED5B1081DF74FF652624969959528610D7213673B1DEE617ECFAEA5C2B90A51041AAE90C3776BE3BAF8C34F3E3C6697BD68C0E30CCF2017C3D1BAE437FE3986F24CE169FC45C5A66D77EE3907F3DB528DBD1130B50E5057ECD6FF0AF0A60B0014D530893C86E09E6A648BC90FEB05C25F2CCD5E86C7528592FF327EDBA50B24B70962C9A3452C95A112422DB2AABA0CEA6975C618B416D5BA9839F07EC6EBE546FDE124E3711444E163C3FC35E3C556225DB8D4609D82A464F8A25B947FBE07BB33AB68CCE7E2
+
+E = 65537
+P = 173466727612170665053230974561284992669615075850373117935328353815057776125036931883590530932574436808197614319625448483719789159280294890998552972249170781694144018291911167398959048875645193355003315200680151736397370782143501256220377331633473554658664634675386428423257172040331555908065971198679611755071
+Q = 147514752710875817505922751816319995058312482129669054703409146925442819936600608407673355354605646058684922838932503269856024866278652403898079964020914797278930030920509188075473372339780176843394194955659795410885348609060042900468496002515833355095851932369334931994425808408373828494286063225583413423723
+R = 5148AC6B207F40FF0C045F542B69D66DB95FAFAA8BFF49C586662300106FBBF820D2C419C9BEEB826D3C3EF1E67036A448BB5B95F0EB4B50371AB511638AB7FABA8ECC386E9E5BB54645CE111F45CA78E4188BE7B892FDC01D04E92D89709ED4F19A8C4226C929BF150D8C9E4AA1B9FF15A515A248467E2220F9FC1A04414344299C5A6FCC08212E1613F6E67337B9CC972A0D5321F387E6803C702FCEF97FDB160C828524D22FDF78C1B5DF05393EBE29100A5826780D28E2F868139D97D43F6D5CAC4762125796043C8680171F2F1E58B286052350FEAF221371EAB7E24C5AD9F7EE1E9C722CC26963BC51D2C39688E987C2BC0407E33FAB1EF191322C4E24
+C0 = 20BF68E7E981F3BA049692825770D1A98F2E64A5676207AC292E0287B7654315CDCD18791F2A68AF1AFAB550D4BE19345F0B22B693C90C79A4C88D46AAEE16A0D60A8B7520F8D80258B35C60B331F927A0E5045AD537116E77F887431966BE730505B951A81D34C34D5FBEB22D1A498C917C4648173EB5EC884848CBE01C3294C3C32EA6219A5E7B11BD53D4FC25B27A9F980B3E41022B4ABA0F92EE0A7B005F8D64229CCF0B44FCC21DBF64AEC354FB8F2140BD25AFD5FC9AED9EC7E53356CDBBCB556757BFAB594A5A13BAC870079F902AC310CAED87E57542DFBD0D9DE554B19DFB37FE04B7912B263C08B089E3A0EFD4DFA5E88995873C581553F3FB98A5
+KDF = KDF2(SHA-512)
+K = 487A8CDECF57A062E9FCFDCC2EB966296DE5874CEB725D15A17EAB2E55F622BA01E3863D7A8023D84BF043FC067F0710DFF710C0E7E4BAA78383894975050A43AAE975A755657828EA7B421E2E131A50CD43908AE9D8B7C3215BF6592F93D4D3DB0E15583DCBF91AB3DC300C73319DDF273D6B3169B4B0F8E1209361C7191B3D455D52C7D1E94B2721CC8A3BFD22301757B04676B192342643995D940E3C8D393A8A2D0A6F20D3DCDF112B9DDE4AB2D094BA2E696D23BD4C0BFD97623FC1F950D8B9CE7686AE70C5E0598DB6CFEDD7AE5370BF152B26DC5AFAC08DD97D4F8BA358D08E6D430B458B11DB4278F8C84DE7A09C2882CD7AE0C36F1EF13F7C6DFB95
diff --git a/src/tests/test_dlies.cpp b/src/tests/test_dlies.cpp
index ba8142dcb..75d751eaa 100644
--- a/src/tests/test_dlies.cpp
+++ b/src/tests/test_dlies.cpp
@@ -1,5 +1,6 @@
/*
* (C) 2014,2015 Jack Lloyd
+* (C) 2016 Daniel Neus, Rohde & Schwarz Cybersecurity
*
* Botan is released under the Simplified BSD License (see license.txt)
*/
@@ -24,7 +25,7 @@ class DLIES_KAT_Tests : public Text_Based_Test
public:
DLIES_KAT_Tests() : Text_Based_Test(
"pubkey/dlies.vec",
- {"P", "G", "X1", "X2", "Msg", "Ciphertext"})
+ {"Kdf", "Mac", "MacKeyLen", "Cipher", "CipherKeyLen", "IV", "P", "G", "X1", "X2", "Msg", "Ciphertext"})
{}
Test::Result run_one_test(const std::string&, const VarMap& vars) override
@@ -37,35 +38,52 @@ class DLIES_KAT_Tests : public Text_Based_Test
const std::vector<uint8_t> input = get_req_bin(vars, "Msg");
const std::vector<uint8_t> expected = get_req_bin(vars, "Ciphertext");
- Botan::DL_Group domain(p, g);
-
- Botan::DH_PrivateKey from(Test::rng(), domain, x1);
- Botan::DH_PrivateKey to(Test::rng(), domain, x2);
+ const std::string kdf_algo = get_req_str(vars, "Kdf");
+ const std::string mac_algo = get_req_str(vars, "Mac");
+ const size_t mac_key_len = get_req_sz(vars, "MacKeyLen");
- const std::string kdf_algo = "KDF2(SHA-1)";
- const std::string mac_algo = "HMAC(SHA-1)";
- const size_t mac_key_len = 16;
+ const std::string cipher_algo = get_opt_str(vars, "Cipher", "");
+ const size_t cipher_key_len = get_opt_sz(vars, "CipherKeyLen", 0);
+ const std::vector<uint8_t> iv = get_opt_bin(vars, "IV");
Test::Result result("DLIES");
std::unique_ptr<Botan::KDF> kdf(Botan::KDF::create(kdf_algo));
- std::unique_ptr<Botan::MAC> mac(Botan::MAC::create(mac_algo));
+ if(!kdf)
+ {
+ result.test_note("Skipping due to missing KDF: " + kdf_algo);
+ return result;
+ }
- if(!kdf || !mac)
+ std::unique_ptr<Botan::MAC> mac(Botan::MAC::create(mac_algo));
+ if(!mac)
{
- result.test_note("Skipping due to missing KDF or MAC algo");
+ result.test_note("Skipping due to missing MAC: " + mac_algo);
return result;
}
- Botan::DLIES_Encryptor encryptor(from,
- kdf->clone(),
- mac->clone(),
- mac_key_len);
+ std::unique_ptr<Botan::Cipher_Mode> enc;
+ std::unique_ptr<Botan::Cipher_Mode> dec;
+
+ if(! cipher_algo.empty())
+ {
+ enc.reset(Botan::get_cipher_mode(cipher_algo, Botan::ENCRYPTION));
+ dec.reset(Botan::get_cipher_mode(cipher_algo, Botan::DECRYPTION));
+ }
+
+ Botan::DL_Group domain(p, g);
+
+ Botan::DH_PrivateKey from(Test::rng(), domain, x1);
+ Botan::DH_PrivateKey to(Test::rng(), domain, x2);
- Botan::DLIES_Decryptor decryptor(to,
- kdf.release(),
- mac.release(),
- mac_key_len);
+ Botan::DLIES_Encryptor encryptor(from, kdf->clone(), enc.release(), cipher_key_len, mac->clone(), mac_key_len);
+ Botan::DLIES_Decryptor decryptor(to, kdf.release(), dec.release(), cipher_key_len, mac.release(), mac_key_len);
+
+ if(!iv.empty())
+ {
+ encryptor.set_initialization_vector(iv);
+ decryptor.set_initialization_vector(iv);
+ }
encryptor.set_other_key(to.public_value());
@@ -80,6 +98,101 @@ class DLIES_KAT_Tests : public Text_Based_Test
BOTAN_REGISTER_TEST("dlies", DLIES_KAT_Tests);
+Test::Result test_xor()
+ {
+ Test::Result result("DLIES XOR");
+
+ std::vector<std::string> kdfs = { "KDF2(SHA-512)", "KDF1-18033(SHA-512)" };
+ std::vector<std::string> macs = { "HMAC(SHA-512)", "CMAC(AES-128)" };
+
+ const size_t mac_key_len = 16;
+
+ std::unique_ptr<Botan::KDF> kdf;
+ std::unique_ptr<Botan::MAC> mac;
+
+ Botan::DH_PrivateKey alice(Test::rng(), Botan::DL_Group("modp/ietf/2048"));
+ Botan::DH_PrivateKey bob(Test::rng(), Botan::DL_Group("modp/ietf/2048"));
+
+ for(const auto& kfunc : kdfs)
+ {
+ kdf = Botan::KDF::create(kfunc);
+
+ if(!kdf)
+ {
+ result.test_note("Skipping due to missing KDF: " + kfunc);
+ continue;
+ }
+
+ for(const auto& mfunc : macs)
+ {
+ mac = Botan::MAC::create(mfunc);
+
+ if(!mac)
+ {
+ result.test_note("Skipping due to missing MAC: " + mfunc);
+ continue;
+ }
+
+ Botan::DLIES_Encryptor encryptor(alice, kdf->clone(), mac->clone(), mac_key_len);
+
+ // negative test: other pub key not set
+ Botan::secure_vector<byte> plaintext = Test::rng().random_vec(32);
+
+ result.test_throws("encrypt not possible without setting other public key", [&encryptor, &plaintext]()
+ {
+ encryptor.encrypt(plaintext, Test::rng());
+ });
+
+ encryptor.set_other_key(bob.public_value());
+ std::vector<byte> ciphertext = encryptor.encrypt(plaintext, Test::rng());
+
+ Botan::DLIES_Decryptor decryptor(bob, kdf->clone(), mac->clone(), mac_key_len);
+
+ // negative test: ciphertext too short
+ result.test_throws("ciphertext too short", [ &decryptor ]()
+ {
+ decryptor.decrypt(std::vector<byte>(2));
+ });
+
+ result.test_eq("decryption", decryptor.decrypt(ciphertext), plaintext);
+
+ check_invalid_ciphertexts(result, decryptor, unlock(plaintext), ciphertext);
+ }
+ }
+
+ return result;
+ }
+
+class DLIES_Unit_Tests : public Test
+ {
+ public:
+ std::vector<Test::Result> run() override
+ {
+ std::vector<Test::Result> results;
+
+ std::vector<std::function<Test::Result()>> fns =
+ {
+ test_xor
+ };
+
+ for(size_t i = 0; i != fns.size(); ++i)
+ {
+ try
+ {
+ results.push_back(fns[ i ]());
+ }
+ catch(std::exception& e)
+ {
+ results.push_back(Test::Result::Failure("DLIES unit tests " + std::to_string(i), e.what()));
+ }
+ }
+
+ return results;
+ }
+ };
+
+BOTAN_REGISTER_TEST("dlies-unit", DLIES_Unit_Tests);
+
#endif
}
diff --git a/src/tests/test_ecies.cpp b/src/tests/test_ecies.cpp
index 68edf71be..40fb7a2dc 100644
--- a/src/tests/test_ecies.cpp
+++ b/src/tests/test_ecies.cpp
@@ -6,7 +6,6 @@
#include "tests.h"
-
#if defined(BOTAN_HAS_ECIES)
#include "test_pubkey.h"
#include <botan/ecies.h>
diff --git a/src/tests/test_pubkey.cpp b/src/tests/test_pubkey.cpp
index 2f6de639d..cdd0c99b0 100644
--- a/src/tests/test_pubkey.cpp
+++ b/src/tests/test_pubkey.cpp
@@ -276,6 +276,7 @@ Test::Result PK_KEM_Test::run_one_test(const std::string&, const VarMap& vars)
}
catch(Botan::Lookup_Error&)
{
+ result.test_note("Skipping due to missing KDF: " + kdf);
return result;
}