From 5ccada09aae0cf846d3381a161d3eb20d4d9abfd Mon Sep 17 00:00:00 2001 From: Shane Lontis Date: Fri, 7 Aug 2020 14:29:00 +1000 Subject: [PATCH] Add evp_test fixes. Changed many tests so they also test fips (and removed 'availablein = default' from some tests). Seperated the monolithic evppkey.txt file into smaller maintainable groups. Changed the availablein option so it must be first - this then skips the entire test before any fetching happens. Changed the code so that all the OPENSSL_NO_XXXX tests are done in code via methods such as is_cipher_disabled(alg), before the fetch happens. Added missing libctx's found by adding a libctx to test_evp. Broke up large data files for cipher, kdf's and mac's into smaller pieces so they no longer need 'AvailableIn = default' Added missing algorithm aliases for cipher/digests to the providers. Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/12236) --- crypto/ec/ec_pmeth.c | 3 +- crypto/ec/ecdh_kdf.c | 7 +- crypto/evp/p5_crpt2.c | 19 +- crypto/evp/pbe_scrypt.c | 3 +- crypto/evp/pkey_kdf.c | 2 +- crypto/sm2/sm2_crypt.c | 21 +- crypto/sm2/sm2_pmeth.c | 21 +- crypto/sm2/sm2_sign.c | 28 +- include/crypto/ec.h | 2 +- include/crypto/evp.h | 6 + providers/defltprov.c | 10 +- providers/fips/fipsprov.c | 8 +- .../implementations/exchange/ecdh_exch.c | 3 +- providers/implementations/kdfs/scrypt.c | 17 +- providers/legacyprov.c | 8 +- test/evp_test.c | 666 +- test/recipes/30-test_evp.t | 132 +- test/recipes/30-test_evp_data/evpcase.txt | 54 - ...vpccmcavs.txt => evpciph_aes_ccm_cavs.txt} | 2 +- .../{evpciph.txt => evpciph_aes_common.txt} | 1243 +- .../30-test_evp_data/evpciph_aes_cts1.txt | 143 + ...ciph_aes_cts.txt => evpciph_aes_cts23.txt} | 264 +- .../30-test_evp_data/evpciph_aes_ocb.txt | 209 + .../{evpaessiv.txt => evpciph_aes_siv.txt} | 4 +- .../recipes/30-test_evp_data/evpciph_aria.txt | 249 + test/recipes/30-test_evp_data/evpciph_bf.txt | 8 - .../30-test_evp_data/evpciph_camellia.txt | 626 + .../30-test_evp_data/evpciph_chacha.txt | 3 +- test/recipes/30-test_evp_data/evpciph_des.txt | 22 + .../30-test_evp_data/evpciph_des3_common.txt | 21 + test/recipes/30-test_evp_data/evpciph_sm4.txt | 1 - test/recipes/30-test_evp_data/evpencod.txt | 4 +- test/recipes/30-test_evp_data/evpkdf_hkdf.txt | 195 + test/recipes/30-test_evp_data/evpkdf_krb5.txt | 131 + .../30-test_evp_data/evpkdf_pbkdf2.txt | 157 + .../30-test_evp_data/evpkdf_scrypt.txt | 63 + test/recipes/30-test_evp_data/evpkdf_ss.txt | 1121 + .../{evpkdf.txt => evpkdf_ssh.txt} | 1788 +- .../30-test_evp_data/evpkdf_tls11_prf.txt | 37 + .../30-test_evp_data/evpkdf_tls12_prf.txt | 46 + test/recipes/30-test_evp_data/evpkdf_x942.txt | 35 + test/recipes/30-test_evp_data/evpkdf_x963.txt | 112 + test/recipes/30-test_evp_data/evpmac.txt | 1061 - .../recipes/30-test_evp_data/evpmac_blake.txt | 242 + .../30-test_evp_data/evpmac_common.txt | 402 + .../30-test_evp_data/evpmac_poly1305.txt | 288 + .../30-test_evp_data/evpmac_siphash.txt | 166 + test/recipes/30-test_evp_data/evpmd_blake.txt | 91 + test/recipes/30-test_evp_data/evpmd_md.txt | 111 + test/recipes/30-test_evp_data/evpmd_md2.txt | 44 - test/recipes/30-test_evp_data/evpmd_mdc2.txt | 4 - .../recipes/30-test_evp_data/evpmd_ripemd.txt | 46 + .../{evpdigest.txt => evpmd_sha.txt} | 329 +- test/recipes/30-test_evp_data/evpmd_sm3.txt | 61 + .../30-test_evp_data/evpmd_whirlpool.txt | 51 + .../{evppbe.txt => evppbe_pbkdf2.txt} | 99 +- .../30-test_evp_data/evppbe_pkcs12.txt | 62 + .../30-test_evp_data/evppbe_scrypt.txt | 52 + .../30-test_evp_data/evppkey_brainpool.txt | 1360 ++ test/recipes/30-test_evp_data/evppkey_dsa.txt | 130 + test/recipes/30-test_evp_data/evppkey_ecc.txt | 575 +- .../recipes/30-test_evp_data/evppkey_ecdh.txt | 3470 +++ .../30-test_evp_data/evppkey_ecdsa.txt | 110 + test/recipes/30-test_evp_data/evppkey_ecx.txt | 582 + .../30-test_evp_data/evppkey_ffdhe.txt | 570 + .../{evppkey.txt => evppkey_kas.txt} | 20325 +++++----------- .../{evppkey_kdf.txt => evppkey_kdf_hkdf.txt} | 118 +- .../30-test_evp_data/evppkey_kdf_scrypt.txt | 63 + .../30-test_evp_data/evppkey_kdf_tls1_prf.txt | 71 + .../30-test_evp_data/evppkey_mismatch.txt | 85 + test/recipes/30-test_evp_data/evppkey_rsa.txt | 1693 ++ test/recipes/30-test_evp_data/evppkey_sm2.txt | 57 + test/recipes/30-test_evp_data/evprand.txt | 288 +- 73 files changed, 20157 insertions(+), 19943 deletions(-) delete mode 100644 test/recipes/30-test_evp_data/evpcase.txt rename test/recipes/30-test_evp_data/{evpccmcavs.txt => evpciph_aes_ccm_cavs.txt} (99%) rename test/recipes/30-test_evp_data/{evpciph.txt => evpciph_aes_common.txt} (58%) create mode 100644 test/recipes/30-test_evp_data/evpciph_aes_cts1.txt rename test/recipes/30-test_evp_data/{evpciph_aes_cts.txt => evpciph_aes_cts23.txt} (55%) create mode 100644 test/recipes/30-test_evp_data/evpciph_aes_ocb.txt rename test/recipes/30-test_evp_data/{evpaessiv.txt => evpciph_aes_siv.txt} (94%) create mode 100644 test/recipes/30-test_evp_data/evpciph_aria.txt create mode 100644 test/recipes/30-test_evp_data/evpciph_camellia.txt create mode 100644 test/recipes/30-test_evp_data/evpciph_des3_common.txt create mode 100644 test/recipes/30-test_evp_data/evpkdf_hkdf.txt create mode 100644 test/recipes/30-test_evp_data/evpkdf_krb5.txt create mode 100644 test/recipes/30-test_evp_data/evpkdf_pbkdf2.txt create mode 100644 test/recipes/30-test_evp_data/evpkdf_scrypt.txt create mode 100644 test/recipes/30-test_evp_data/evpkdf_ss.txt rename test/recipes/30-test_evp_data/{evpkdf.txt => evpkdf_ssh.txt} (86%) create mode 100644 test/recipes/30-test_evp_data/evpkdf_tls11_prf.txt create mode 100644 test/recipes/30-test_evp_data/evpkdf_tls12_prf.txt create mode 100644 test/recipes/30-test_evp_data/evpkdf_x942.txt create mode 100644 test/recipes/30-test_evp_data/evpkdf_x963.txt delete mode 100644 test/recipes/30-test_evp_data/evpmac.txt create mode 100644 test/recipes/30-test_evp_data/evpmac_blake.txt create mode 100644 test/recipes/30-test_evp_data/evpmac_common.txt create mode 100644 test/recipes/30-test_evp_data/evpmac_poly1305.txt create mode 100644 test/recipes/30-test_evp_data/evpmac_siphash.txt create mode 100644 test/recipes/30-test_evp_data/evpmd_blake.txt create mode 100644 test/recipes/30-test_evp_data/evpmd_md.txt delete mode 100644 test/recipes/30-test_evp_data/evpmd_md2.txt create mode 100644 test/recipes/30-test_evp_data/evpmd_ripemd.txt rename test/recipes/30-test_evp_data/{evpdigest.txt => evpmd_sha.txt} (59%) create mode 100644 test/recipes/30-test_evp_data/evpmd_sm3.txt create mode 100644 test/recipes/30-test_evp_data/evpmd_whirlpool.txt rename test/recipes/30-test_evp_data/{evppbe.txt => evppbe_pbkdf2.txt} (61%) create mode 100644 test/recipes/30-test_evp_data/evppbe_pkcs12.txt create mode 100644 test/recipes/30-test_evp_data/evppbe_scrypt.txt create mode 100644 test/recipes/30-test_evp_data/evppkey_brainpool.txt create mode 100644 test/recipes/30-test_evp_data/evppkey_dsa.txt create mode 100644 test/recipes/30-test_evp_data/evppkey_ecdh.txt create mode 100644 test/recipes/30-test_evp_data/evppkey_ecdsa.txt create mode 100644 test/recipes/30-test_evp_data/evppkey_ecx.txt create mode 100644 test/recipes/30-test_evp_data/evppkey_ffdhe.txt rename test/recipes/30-test_evp_data/{evppkey.txt => evppkey_kas.txt} (55%) rename test/recipes/30-test_evp_data/{evppkey_kdf.txt => evppkey_kdf_hkdf.txt} (62%) create mode 100644 test/recipes/30-test_evp_data/evppkey_kdf_scrypt.txt create mode 100644 test/recipes/30-test_evp_data/evppkey_kdf_tls1_prf.txt create mode 100644 test/recipes/30-test_evp_data/evppkey_mismatch.txt create mode 100644 test/recipes/30-test_evp_data/evppkey_rsa.txt create mode 100644 test/recipes/30-test_evp_data/evppkey_sm2.txt diff --git a/crypto/ec/ec_pmeth.c b/crypto/ec/ec_pmeth.c index 7eeeedc0e9..0758d9be4a 100644 --- a/crypto/ec/ec_pmeth.c +++ b/crypto/ec/ec_pmeth.c @@ -216,7 +216,8 @@ static int pkey_ec_kdf_derive(EVP_PKEY_CTX *ctx, goto err; /* Do KDF stuff */ if (!ecdh_KDF_X9_63(key, *keylen, ktmp, ktmplen, - dctx->kdf_ukm, dctx->kdf_ukmlen, dctx->kdf_md)) + dctx->kdf_ukm, dctx->kdf_ukmlen, dctx->kdf_md, + ctx->libctx, ctx->propquery)) goto err; rv = 1; diff --git a/crypto/ec/ecdh_kdf.c b/crypto/ec/ecdh_kdf.c index fb501c6ada..7695e0be18 100644 --- a/crypto/ec/ecdh_kdf.c +++ b/crypto/ec/ecdh_kdf.c @@ -24,13 +24,14 @@ int ecdh_KDF_X9_63(unsigned char *out, size_t outlen, const unsigned char *Z, size_t Zlen, const unsigned char *sinfo, size_t sinfolen, - const EVP_MD *md) + const EVP_MD *md, + OPENSSL_CTX *libctx, const char *propq) { int ret = 0; EVP_KDF_CTX *kctx = NULL; OSSL_PARAM params[4], *p = params; const char *mdname = EVP_MD_name(md); - EVP_KDF *kdf = EVP_KDF_fetch(NULL, OSSL_KDF_NAME_X963KDF, NULL); + EVP_KDF *kdf = EVP_KDF_fetch(libctx, OSSL_KDF_NAME_X963KDF, propq); if ((kctx = EVP_KDF_CTX_new(kdf)) != NULL) { *p++ = OSSL_PARAM_construct_utf8_string(OSSL_KDF_PARAM_DIGEST, @@ -59,6 +60,6 @@ int ECDH_KDF_X9_62(unsigned char *out, size_t outlen, const unsigned char *sinfo, size_t sinfolen, const EVP_MD *md) { - return ecdh_KDF_X9_63(out, outlen, Z, Zlen, sinfo, sinfolen, md); + return ecdh_KDF_X9_63(out, outlen, Z, Zlen, sinfo, sinfolen, md, NULL, NULL); } #endif diff --git a/crypto/evp/p5_crpt2.c b/crypto/evp/p5_crpt2.c index 6e89ffd999..7b8f99d511 100644 --- a/crypto/evp/p5_crpt2.c +++ b/crypto/evp/p5_crpt2.c @@ -19,9 +19,11 @@ #include "crypto/evp.h" #include "evp_local.h" -int PKCS5_PBKDF2_HMAC(const char *pass, int passlen, - const unsigned char *salt, int saltlen, int iter, - const EVP_MD *digest, int keylen, unsigned char *out) +int pkcs5_pbkdf2_hmac_with_libctx(const char *pass, int passlen, + const unsigned char *salt, int saltlen, + int iter, const EVP_MD *digest, int keylen, + unsigned char *out, + OPENSSL_CTX *libctx, const char *propq) { const char *empty = ""; int rv = 1, mode = 1; @@ -40,7 +42,7 @@ int PKCS5_PBKDF2_HMAC(const char *pass, int passlen, if (salt == NULL && saltlen == 0) salt = (unsigned char *)empty; - kdf = EVP_KDF_fetch(NULL, OSSL_KDF_NAME_PBKDF2, NULL); + kdf = EVP_KDF_fetch(libctx, OSSL_KDF_NAME_PBKDF2, propq); kctx = EVP_KDF_CTX_new(kdf); EVP_KDF_free(kdf); if (kctx == NULL) @@ -78,6 +80,15 @@ int PKCS5_PBKDF2_HMAC(const char *pass, int passlen, return rv; } +int PKCS5_PBKDF2_HMAC(const char *pass, int passlen, const unsigned char *salt, + int saltlen, int iter, const EVP_MD *digest, int keylen, + unsigned char *out) +{ + return pkcs5_pbkdf2_hmac_with_libctx(pass, passlen, salt, saltlen, iter, + digest, keylen, out, NULL, NULL); +} + + int PKCS5_PBKDF2_HMAC_SHA1(const char *pass, int passlen, const unsigned char *salt, int saltlen, int iter, int keylen, unsigned char *out) diff --git a/crypto/evp/pbe_scrypt.c b/crypto/evp/pbe_scrypt.c index fa7b1de17c..97997377e1 100644 --- a/crypto/evp/pbe_scrypt.c +++ b/crypto/evp/pbe_scrypt.c @@ -46,7 +46,7 @@ int EVP_PBE_scrypt(const char *pass, size_t passlen, OSSL_PARAM params[7], *z = params; if (r > UINT32_MAX || p > UINT32_MAX) { - EVPerr(EVP_F_EVP_PBE_SCRYPT, EVP_R_PARAMETER_TOO_LARGE); + EVPerr(0, EVP_R_PARAMETER_TOO_LARGE); return 0; } @@ -62,6 +62,7 @@ int EVP_PBE_scrypt(const char *pass, size_t passlen, if (maxmem == 0) maxmem = SCRYPT_MAX_MEM; + /* Use OPENSSL_CTX_set0_default() if you need a library context */ kdf = EVP_KDF_fetch(NULL, OSSL_KDF_NAME_SCRYPT, NULL); kctx = EVP_KDF_CTX_new(kdf); EVP_KDF_free(kdf); diff --git a/crypto/evp/pkey_kdf.c b/crypto/evp/pkey_kdf.c index ac4a0fa461..a2d25a925f 100644 --- a/crypto/evp/pkey_kdf.c +++ b/crypto/evp/pkey_kdf.c @@ -49,7 +49,7 @@ static int pkey_kdf_init(EVP_PKEY_CTX *ctx) if (pkctx == NULL) return 0; - kdf = EVP_KDF_fetch(NULL, kdf_name, NULL); + kdf = EVP_KDF_fetch(ctx->libctx, kdf_name, ctx->propquery); kctx = EVP_KDF_CTX_new(kdf); EVP_KDF_free(kdf); if (kctx == NULL) { diff --git a/crypto/sm2/sm2_crypt.c b/crypto/sm2/sm2_crypt.c index c09e4c001b..0ae67fb22b 100644 --- a/crypto/sm2/sm2_crypt.c +++ b/crypto/sm2/sm2_crypt.c @@ -138,6 +138,9 @@ int sm2_encrypt(const EC_KEY *key, uint8_t *C3 = NULL; size_t field_size; const int C3_size = EVP_MD_size(digest); + EVP_MD *fetched_digest = NULL; + OPENSSL_CTX *libctx = ec_key_get_libctx(key); + const char *propq = ec_key_get0_propq(key); /* NULL these before any "goto done" */ ctext_struct.C2 = NULL; @@ -156,7 +159,7 @@ int sm2_encrypt(const EC_KEY *key, kG = EC_POINT_new(group); kP = EC_POINT_new(group); - ctx = BN_CTX_new(); + ctx = BN_CTX_new_ex(libctx); if (kG == NULL || kP == NULL || ctx == NULL) { SM2err(SM2_F_SM2_ENCRYPT, ERR_R_MALLOC_FAILURE); goto done; @@ -211,7 +214,7 @@ int sm2_encrypt(const EC_KEY *key, /* X9.63 with no salt happens to match the KDF used in SM2 */ if (!ecdh_KDF_X9_63(msg_mask, msg_len, x2y2, 2 * field_size, NULL, 0, - digest)) { + digest, libctx, propq)) { SM2err(SM2_F_SM2_ENCRYPT, ERR_R_EVP_LIB); goto done; } @@ -219,7 +222,12 @@ int sm2_encrypt(const EC_KEY *key, for (i = 0; i != msg_len; ++i) msg_mask[i] ^= msg[i]; - if (EVP_DigestInit(hash, digest) == 0 + fetched_digest = EVP_MD_fetch(libctx, EVP_MD_name(digest), propq); + if (fetched_digest == NULL) { + SM2err(SM2_F_SM2_ENCRYPT, ERR_R_INTERNAL_ERROR); + goto done; + } + if (EVP_DigestInit(hash, fetched_digest) == 0 || EVP_DigestUpdate(hash, x2y2, field_size) == 0 || EVP_DigestUpdate(hash, msg, msg_len) == 0 || EVP_DigestUpdate(hash, x2y2 + field_size, field_size) == 0 @@ -254,6 +262,7 @@ int sm2_encrypt(const EC_KEY *key, rc = 1; done: + EVP_MD_free(fetched_digest); ASN1_OCTET_STRING_free(ctext_struct.C2); ASN1_OCTET_STRING_free(ctext_struct.C3); OPENSSL_free(msg_mask); @@ -288,6 +297,8 @@ int sm2_decrypt(const EC_KEY *key, const uint8_t *C3 = NULL; int msg_len = 0; EVP_MD_CTX *hash = NULL; + OPENSSL_CTX *libctx = ec_key_get_libctx(key); + const char *propq = ec_key_get0_propq(key); if (field_size == 0 || hash_size <= 0) goto done; @@ -310,7 +321,7 @@ int sm2_decrypt(const EC_KEY *key, C3 = sm2_ctext->C3->data; msg_len = sm2_ctext->C2->length; - ctx = BN_CTX_new(); + ctx = BN_CTX_new_ex(libctx); if (ctx == NULL) { SM2err(SM2_F_SM2_DECRYPT, ERR_R_MALLOC_FAILURE); goto done; @@ -352,7 +363,7 @@ int sm2_decrypt(const EC_KEY *key, if (BN_bn2binpad(x2, x2y2, field_size) < 0 || BN_bn2binpad(y2, x2y2 + field_size, field_size) < 0 || !ecdh_KDF_X9_63(msg_mask, msg_len, x2y2, 2 * field_size, NULL, 0, - digest)) { + digest, libctx, propq)) { SM2err(SM2_F_SM2_DECRYPT, ERR_R_INTERNAL_ERROR); goto done; } diff --git a/crypto/sm2/sm2_pmeth.c b/crypto/sm2/sm2_pmeth.c index 45297f9bc6..a455b5e989 100644 --- a/crypto/sm2/sm2_pmeth.c +++ b/crypto/sm2/sm2_pmeth.c @@ -20,6 +20,7 @@ #include "crypto/evp.h" #include "crypto/sm2.h" #include "crypto/sm2err.h" +#include "crypto/ec.h" /* EC pkey context structure */ @@ -124,9 +125,12 @@ static int pkey_sm2_encrypt(EVP_PKEY_CTX *ctx, unsigned char *out, size_t *outlen, const unsigned char *in, size_t inlen) { + int ret; EC_KEY *ec = ctx->pkey->pkey.ec; SM2_PKEY_CTX *dctx = ctx->data; const EVP_MD *md = (dctx->md == NULL) ? EVP_sm3() : dctx->md; + OPENSSL_CTX *libctx = ec_key_get_libctx(ec); + EVP_MD *fetched_md = NULL; if (out == NULL) { if (!sm2_ciphertext_size(ec, md, inlen, outlen)) @@ -135,16 +139,24 @@ static int pkey_sm2_encrypt(EVP_PKEY_CTX *ctx, return 1; } - return sm2_encrypt(ec, md, in, inlen, out, outlen); + fetched_md = EVP_MD_fetch(libctx, EVP_MD_name(md), 0); + if (fetched_md == NULL) + return 0; + ret = sm2_encrypt(ec, fetched_md, in, inlen, out, outlen); + EVP_MD_free(fetched_md); + return ret; } static int pkey_sm2_decrypt(EVP_PKEY_CTX *ctx, unsigned char *out, size_t *outlen, const unsigned char *in, size_t inlen) { + int ret; EC_KEY *ec = ctx->pkey->pkey.ec; SM2_PKEY_CTX *dctx = ctx->data; const EVP_MD *md = (dctx->md == NULL) ? EVP_sm3() : dctx->md; + OPENSSL_CTX *libctx = ec_key_get_libctx(ec); + EVP_MD *fetched_md = NULL; if (out == NULL) { if (!sm2_plaintext_size(ec, md, inlen, outlen)) @@ -153,7 +165,12 @@ static int pkey_sm2_decrypt(EVP_PKEY_CTX *ctx, return 1; } - return sm2_decrypt(ec, md, in, inlen, out, outlen); + fetched_md = EVP_MD_fetch(libctx, EVP_MD_name(md), 0); + if (fetched_md == NULL) + return 0; + ret = sm2_decrypt(ec, fetched_md, in, inlen, out, outlen); + EVP_MD_free(fetched_md); + return ret; } static int pkey_sm2_ctrl(EVP_PKEY_CTX *ctx, int type, int p1, void *p2) diff --git a/crypto/sm2/sm2_sign.c b/crypto/sm2/sm2_sign.c index 318e981802..099594c8bc 100644 --- a/crypto/sm2/sm2_sign.c +++ b/crypto/sm2/sm2_sign.c @@ -42,7 +42,7 @@ int sm2_compute_z_digest(uint8_t *out, uint8_t e_byte = 0; hash = EVP_MD_CTX_new(); - ctx = BN_CTX_new(); + ctx = BN_CTX_new_ex(ec_key_get_libctx(key)); if (hash == NULL || ctx == NULL) { SM2err(SM2_F_SM2_COMPUTE_Z_DIGEST, ERR_R_MALLOC_FAILURE); goto done; @@ -146,6 +146,9 @@ static BIGNUM *sm2_compute_msg_hash(const EVP_MD *digest, const int md_size = EVP_MD_size(digest); uint8_t *z = NULL; BIGNUM *e = NULL; + EVP_MD *fetched_digest = NULL; + OPENSSL_CTX *libctx = ec_key_get_libctx(key); + const char *propq = ec_key_get0_propq(key); if (md_size < 0) { SM2err(SM2_F_SM2_COMPUTE_MSG_HASH, SM2_R_INVALID_DIGEST); @@ -158,12 +161,18 @@ static BIGNUM *sm2_compute_msg_hash(const EVP_MD *digest, goto done; } - if (!sm2_compute_z_digest(z, digest, id, id_len, key)) { + fetched_digest = EVP_MD_fetch(libctx, EVP_MD_name(digest), propq); + if (fetched_digest == NULL) { + SM2err(SM2_F_SM2_COMPUTE_MSG_HASH, ERR_R_INTERNAL_ERROR); + goto done; + } + + if (!sm2_compute_z_digest(z, fetched_digest, id, id_len, key)) { /* SM2err already called */ goto done; } - if (!EVP_DigestInit(hash, digest) + if (!EVP_DigestInit(hash, fetched_digest) || !EVP_DigestUpdate(hash, z, md_size) || !EVP_DigestUpdate(hash, msg, msg_len) /* reuse z buffer to hold H(Z || M) */ @@ -177,6 +186,7 @@ static BIGNUM *sm2_compute_msg_hash(const EVP_MD *digest, SM2err(SM2_F_SM2_COMPUTE_MSG_HASH, ERR_R_INTERNAL_ERROR); done: + EVP_MD_free(fetched_digest); OPENSSL_free(z); EVP_MD_CTX_free(hash); return e; @@ -196,9 +206,10 @@ static ECDSA_SIG *sm2_sig_gen(const EC_KEY *key, const BIGNUM *e) BIGNUM *s = NULL; BIGNUM *x1 = NULL; BIGNUM *tmp = NULL; + OPENSSL_CTX *libctx = ec_key_get_libctx(key); kG = EC_POINT_new(group); - ctx = BN_CTX_new(); + ctx = BN_CTX_new_ex(libctx); if (kG == NULL || ctx == NULL) { SM2err(SM2_F_SM2_SIG_GEN, ERR_R_MALLOC_FAILURE); goto done; @@ -227,7 +238,7 @@ static ECDSA_SIG *sm2_sig_gen(const EC_KEY *key, const BIGNUM *e) } for (;;) { - if (!BN_priv_rand_range(k, order)) { + if (!BN_priv_rand_range_ex(k, order, ctx)) { SM2err(SM2_F_SM2_SIG_GEN, ERR_R_INTERNAL_ERROR); goto done; } @@ -295,8 +306,9 @@ static int sm2_sig_verify(const EC_KEY *key, const ECDSA_SIG *sig, BIGNUM *x1 = NULL; const BIGNUM *r = NULL; const BIGNUM *s = NULL; + OPENSSL_CTX *libctx = ec_key_get_libctx(key); - ctx = BN_CTX_new(); + ctx = BN_CTX_new_ex(libctx); pt = EC_POINT_new(group); if (ctx == NULL || pt == NULL) { SM2err(SM2_F_SM2_SIG_VERIFY, ERR_R_MALLOC_FAILURE); @@ -421,6 +433,10 @@ int sm2_sign(const unsigned char *dgst, int dgstlen, } s = sm2_sig_gen(eckey, e); + if (s == NULL) { + SM2err(SM2_F_SM2_SIGN, ERR_R_INTERNAL_ERROR); + goto done; + } sigleni = i2d_ECDSA_SIG(s, &sig); if (sigleni < 0) { diff --git a/include/crypto/ec.h b/include/crypto/ec.h index a771cfd706..b6ab033626 100644 --- a/include/crypto/ec.h +++ b/include/crypto/ec.h @@ -47,7 +47,7 @@ __owur int ec_group_do_inverse_ord(const EC_GROUP *group, BIGNUM *res, int ecdh_KDF_X9_63(unsigned char *out, size_t outlen, const unsigned char *Z, size_t Zlen, const unsigned char *sinfo, size_t sinfolen, - const EVP_MD *md); + const EVP_MD *md, OPENSSL_CTX *libctx, const char *propq); int ec_generate_key(OPENSSL_CTX *libctx, EC_KEY *eckey, int pairwise_test); int ec_key_public_check(const EC_KEY *eckey, BN_CTX *ctx); diff --git a/include/crypto/evp.h b/include/crypto/evp.h index 2e85b56266..f60ae9bc09 100644 --- a/include/crypto/evp.h +++ b/include/crypto/evp.h @@ -753,6 +753,12 @@ void evp_encode_ctx_set_flags(EVP_ENCODE_CTX *ctx, unsigned int flags); const EVP_CIPHER *evp_get_cipherbyname_ex(OPENSSL_CTX *libctx, const char *name); const EVP_MD *evp_get_digestbyname_ex(OPENSSL_CTX *libctx, const char *name); +int pkcs5_pbkdf2_hmac_with_libctx(const char *pass, int passlen, + const unsigned char *salt, int saltlen, + int iter, const EVP_MD *digest, int keylen, + unsigned char *out, + OPENSSL_CTX *libctx, const char *propq); + #ifndef FIPS_MODULE /* * Internal helpers for stricter EVP_PKEY_CTX_{set,get}_params(). diff --git a/providers/defltprov.c b/providers/defltprov.c index fa2fadbc95..0ee717acac 100644 --- a/providers/defltprov.c +++ b/providers/defltprov.c @@ -95,7 +95,7 @@ static int deflt_get_params(void *provctx, OSSL_PARAM params[]) */ static const OSSL_ALGORITHM deflt_digests[] = { /* Our primary name:NIST name[:our older names] */ - { "SHA1:SHA-1", "provider=default", sha1_functions }, + { "SHA1:SHA-1:SSL3-SHA1", "provider=default", sha1_functions }, { "SHA2-224:SHA-224:SHA224", "provider=default", sha224_functions }, { "SHA2-256:SHA-256:SHA256", "provider=default", sha256_functions }, { "SHA2-384:SHA-384:SHA384", "provider=default", sha384_functions }, @@ -139,7 +139,7 @@ static const OSSL_ALGORITHM deflt_digests[] = { #endif /* OPENSSL_NO_SM3 */ #ifndef OPENSSL_NO_MD5 - { "MD5", "provider=default", md5_functions }, + { "MD5:SSL3-MD5", "provider=default", md5_functions }, { "MD5-SHA1", "provider=default", md5_sha1_functions }, #endif /* OPENSSL_NO_MD5 */ @@ -151,9 +151,9 @@ static const OSSL_ALGORITHM_CAPABLE deflt_ciphers[] = { ALG("AES-256-ECB", aes256ecb_functions), ALG("AES-192-ECB", aes192ecb_functions), ALG("AES-128-ECB", aes128ecb_functions), - ALG("AES-256-CBC", aes256cbc_functions), - ALG("AES-192-CBC", aes192cbc_functions), - ALG("AES-128-CBC", aes128cbc_functions), + ALG("AES-256-CBC:AES256", aes256cbc_functions), + ALG("AES-192-CBC:AES192", aes192cbc_functions), + ALG("AES-128-CBC:AES128", aes128cbc_functions), ALG("AES-128-CBC-CTS", aes128cbc_cts_functions), ALG("AES-192-CBC-CTS", aes192cbc_cts_functions), ALG("AES-256-CBC-CTS", aes256cbc_cts_functions), diff --git a/providers/fips/fipsprov.c b/providers/fips/fipsprov.c index 771f23c667..73bba5b3a9 100644 --- a/providers/fips/fipsprov.c +++ b/providers/fips/fipsprov.c @@ -271,7 +271,7 @@ const char *ossl_prov_util_nid_to_name(int nid) */ static const OSSL_ALGORITHM fips_digests[] = { /* Our primary name:NiST name[:our older names] */ - { "SHA1:SHA-1", FIPS_DEFAULT_PROPERTIES, sha1_functions }, + { "SHA1:SHA-1:SSL3-SHA1", FIPS_DEFAULT_PROPERTIES, sha1_functions }, { "SHA2-224:SHA-224:SHA224", FIPS_DEFAULT_PROPERTIES, sha224_functions }, { "SHA2-256:SHA-256:SHA256", FIPS_DEFAULT_PROPERTIES, sha256_functions }, { "SHA2-384:SHA-384:SHA384", FIPS_DEFAULT_PROPERTIES, sha384_functions }, @@ -306,9 +306,9 @@ static const OSSL_ALGORITHM_CAPABLE fips_ciphers[] = { ALG("AES-256-ECB", aes256ecb_functions), ALG("AES-192-ECB", aes192ecb_functions), ALG("AES-128-ECB", aes128ecb_functions), - ALG("AES-256-CBC", aes256cbc_functions), - ALG("AES-192-CBC", aes192cbc_functions), - ALG("AES-128-CBC", aes128cbc_functions), + ALG("AES-256-CBC:AES256", aes256cbc_functions), + ALG("AES-192-CBC:AES192", aes192cbc_functions), + ALG("AES-128-CBC:AES128", aes128cbc_functions), ALG("AES-256-CBC-CTS", aes256cbc_cts_functions), ALG("AES-192-CBC-CTS", aes192cbc_cts_functions), ALG("AES-128-CBC-CTS", aes128cbc_cts_functions), diff --git a/providers/implementations/exchange/ecdh_exch.c b/providers/implementations/exchange/ecdh_exch.c index d2d7f7ed07..08fb0cf224 100644 --- a/providers/implementations/exchange/ecdh_exch.c +++ b/providers/implementations/exchange/ecdh_exch.c @@ -489,7 +489,8 @@ int ecdh_X9_63_kdf_derive(void *vpecdhctx, unsigned char *secret, stmp, stmplen, pecdhctx->kdf_ukm, pecdhctx->kdf_ukmlen, - pecdhctx->kdf_md)) + pecdhctx->kdf_md, + pecdhctx->libctx, NULL)) goto err; *psecretlen = pecdhctx->kdf_outlen; ret = 1; diff --git a/providers/implementations/kdfs/scrypt.c b/providers/implementations/kdfs/scrypt.c index 60ae8f5563..5650d1cd5e 100644 --- a/providers/implementations/kdfs/scrypt.c +++ b/providers/implementations/kdfs/scrypt.c @@ -35,7 +35,8 @@ static OSSL_FUNC_kdf_get_ctx_params_fn kdf_scrypt_get_ctx_params; static int scrypt_alg(const char *pass, size_t passlen, const unsigned char *salt, size_t saltlen, uint64_t N, uint64_t r, uint64_t p, uint64_t maxmem, - unsigned char *key, size_t keylen, EVP_MD *sha256); + unsigned char *key, size_t keylen, EVP_MD *sha256, + OPENSSL_CTX *libctx, const char *propq); typedef struct { void *provctx; @@ -138,7 +139,8 @@ static int kdf_scrypt_derive(void *vctx, unsigned char *key, return scrypt_alg((char *)ctx->pass, ctx->pass_len, ctx->salt, ctx->salt_len, ctx->N, ctx->r, ctx->p, - ctx->maxmem_bytes, key, keylen, ctx->sha256); + ctx->maxmem_bytes, key, keylen, ctx->sha256, + PROV_LIBRARY_CONTEXT_OF(ctx->provctx), NULL); } static int is_power_of_two(uint64_t value) @@ -361,7 +363,8 @@ static void scryptROMix(unsigned char *B, uint64_t r, uint64_t N, static int scrypt_alg(const char *pass, size_t passlen, const unsigned char *salt, size_t saltlen, uint64_t N, uint64_t r, uint64_t p, uint64_t maxmem, - unsigned char *key, size_t keylen, EVP_MD *sha256) + unsigned char *key, size_t keylen, EVP_MD *sha256, + OPENSSL_CTX *libctx, const char *propq) { int rv = 0; unsigned char *B; @@ -445,15 +448,15 @@ static int scrypt_alg(const char *pass, size_t passlen, X = (uint32_t *)(B + Blen); T = X + 32 * r; V = T + 32 * r; - if (PKCS5_PBKDF2_HMAC(pass, passlen, salt, saltlen, 1, sha256, - (int)Blen, B) == 0) + if (pkcs5_pbkdf2_hmac_with_libctx(pass, passlen, salt, saltlen, 1, sha256, + (int)Blen, B, libctx, propq) == 0) goto err; for (i = 0; i < p; i++) scryptROMix(B + 128 * r * i, r, N, X, T, V); - if (PKCS5_PBKDF2_HMAC(pass, passlen, B, (int)Blen, 1, sha256, - keylen, key) == 0) + if (pkcs5_pbkdf2_hmac_with_libctx(pass, passlen, B, (int)Blen, 1, sha256, + keylen, key, libctx, propq) == 0) goto err; rv = 1; err: diff --git a/providers/legacyprov.c b/providers/legacyprov.c index adf7c82374..40d24873a2 100644 --- a/providers/legacyprov.c +++ b/providers/legacyprov.c @@ -111,9 +111,9 @@ static const OSSL_ALGORITHM legacy_ciphers[] = { #endif /* OPENSSL_NO_SEED */ #ifndef OPENSSL_NO_RC2 ALG("RC2-ECB", rc2128ecb_functions), - ALG("RC2-CBC", rc2128cbc_functions), - ALG("RC2-40-CBC", rc240cbc_functions), - ALG("RC2-64-CBC", rc264cbc_functions), + ALG("RC2-CBC:RC2:RC2-128", rc2128cbc_functions), + ALG("RC2-40-CBC:RC2-40", rc240cbc_functions), + ALG("RC2-64-CBC:RC2-64", rc264cbc_functions), ALG("RC2-CFB", rc2128cfb128_functions), ALG("RC2-OFB", rc2128ofb128_functions), #endif /* OPENSSL_NO_RC2 */ @@ -126,7 +126,7 @@ static const OSSL_ALGORITHM legacy_ciphers[] = { #endif /* OPENSSL_NO_RC4 */ #ifndef OPENSSL_NO_RC5 ALG("RC5-ECB", rc5128ecb_functions), - ALG("RC5-CBC", rc5128cbc_functions), + ALG("RC5-CBC:RC5", rc5128cbc_functions), ALG("RC5-OFB", rc5128ofb64_functions), ALG("RC5-CFB", rc5128cfb64_functions), #endif /* OPENSSL_NO_RC5 */ diff --git a/test/evp_test.c b/test/evp_test.c index 83b92a4166..30a0aa11ef 100644 --- a/test/evp_test.c +++ b/test/evp_test.c @@ -11,6 +11,7 @@ #include #include #include +#include "../e_os.h" /* strcasecmp */ #include #include #include @@ -22,6 +23,7 @@ #include #include "internal/numbers.h" #include "internal/nelem.h" +#include "crypto/evp.h" #include "testutil.h" #include "evp_test.h" @@ -31,9 +33,7 @@ DEFINE_STACK_OF_STRING() typedef struct evp_test_method_st EVP_TEST_METHOD; -/* - * Structure holding test information - */ +/* Structure holding test information */ typedef struct evp_test_st { STANZA s; /* Common test stanza */ char *name; @@ -45,9 +45,7 @@ typedef struct evp_test_st { void *data; /* test specific data */ } EVP_TEST; -/* - * Test method structure - */ +/* Test method structure */ struct evp_test_method_st { /* Name of test as it appears in file */ const char *name; @@ -61,24 +59,34 @@ struct evp_test_method_st { int (*run_test) (EVP_TEST * t); }; - -/* - * Linked list of named keys. - */ +/* Linked list of named keys. */ typedef struct key_list_st { char *name; EVP_PKEY *key; struct key_list_st *next; } KEY_LIST; -/* - * List of public and private keys - */ +typedef enum OPTION_choice { + OPT_ERR = -1, + OPT_EOF = 0, + OPT_CONFIG_FILE, + OPT_TEST_ENUM +} OPTION_CHOICE; + +static OSSL_PROVIDER *prov_null = NULL; +static OPENSSL_CTX *libctx = NULL; + +/* List of public and private keys */ static KEY_LIST *private_keys; static KEY_LIST *public_keys; -static int find_key(EVP_PKEY **ppk, const char *name, KEY_LIST *lst); +static int find_key(EVP_PKEY **ppk, const char *name, KEY_LIST *lst); static int parse_bin(const char *value, unsigned char **buf, size_t *buflen); +static int is_digest_disabled(const char *name); +static int is_pkey_disabled(const char *name); +static int is_mac_disabled(const char *name); +static int is_cipher_disabled(const char *name); +static int is_kdf_disabled(const char *name); /* * Compare two memory regions for equality, returning zero if they differ. @@ -120,9 +128,7 @@ static void evp_test_buffer_free(EVP_TEST_BUFFER *db) } } -/* - * append buffer to a list - */ +/* append buffer to a list */ static int evp_test_buffer_append(const char *value, STACK_OF(EVP_TEST_BUFFER) **sk) { @@ -148,9 +154,7 @@ err: return 0; } -/* - * replace last buffer in list with copies of itself - */ +/* replace last buffer in list with copies of itself */ static int evp_test_buffer_ncopy(const char *value, STACK_OF(EVP_TEST_BUFFER) *sk) { @@ -178,9 +182,7 @@ static int evp_test_buffer_ncopy(const char *value, return 1; } -/* - * set repeat count for last buffer in list - */ +/* set repeat count for last buffer in list */ static int evp_test_buffer_set_count(const char *value, STACK_OF(EVP_TEST_BUFFER) *sk) { @@ -202,9 +204,7 @@ static int evp_test_buffer_set_count(const char *value, return 1; } -/* - * call "fn" with each element of the list in turn - */ +/* call "fn" with each element of the list in turn */ static int evp_test_buffer_do(STACK_OF(EVP_TEST_BUFFER) *sk, int (*fn)(void *ctx, const unsigned char *buf, @@ -319,10 +319,9 @@ static int parse_bin(const char *value, unsigned char **buf, size_t *buflen) return 1; } - /** -*** MESSAGE DIGEST TESTS -**/ + ** MESSAGE DIGEST TESTS + **/ typedef struct digest_data_st { /* Digest this test is for */ @@ -343,15 +342,15 @@ static int digest_test_init(EVP_TEST *t, const char *alg) const EVP_MD *digest; EVP_MD *fetched_digest; - if ((digest = fetched_digest = EVP_MD_fetch(NULL, alg, NULL)) == NULL - && (digest = EVP_get_digestbyname(alg)) == NULL) { - /* If alg has an OID assume disabled algorithm */ - if (OBJ_sn2nid(alg) != NID_undef || OBJ_ln2nid(alg) != NID_undef) { - t->skip = 1; - return 1; - } - return 0; + if (is_digest_disabled(alg)) { + TEST_info("skipping, '%s' is disabled", alg); + t->skip = 1; + return 1; } + + if ((digest = fetched_digest = EVP_MD_fetch(libctx, alg, NULL)) == NULL + && (digest = EVP_get_digestbyname(alg)) == NULL) + return 0; if (!TEST_ptr(mdat = OPENSSL_zalloc(sizeof(*mdat)))) return 0; t->data = mdat; @@ -489,7 +488,6 @@ static const EVP_TEST_METHOD digest_test_method = { digest_test_run }; - /** *** CIPHER TESTS **/ @@ -526,15 +524,16 @@ static int cipher_test_init(EVP_TEST *t, const char *alg) CIPHER_DATA *cdat; int m; - if ((cipher = fetched_cipher = EVP_CIPHER_fetch(NULL, alg, NULL)) == NULL - && (cipher = EVP_get_cipherbyname(alg)) == NULL) { - /* If alg has an OID assume disabled algorithm */ - if (OBJ_sn2nid(alg) != NID_undef || OBJ_ln2nid(alg) != NID_undef) { - t->skip = 1; - return 1; - } - return 0; + if (is_cipher_disabled(alg)) { + t->skip = 1; + TEST_info("skipping, '%s' is disabled", alg); + return 1; } + + if ((cipher = fetched_cipher = EVP_CIPHER_fetch(libctx, alg, NULL)) == NULL + && (cipher = EVP_get_cipherbyname(alg)) == NULL) + return 0; + cdat = OPENSSL_zalloc(sizeof(*cdat)); cdat->cipher = cipher; cdat->fetched_cipher = fetched_cipher; @@ -664,9 +663,7 @@ static int cipher_test_enc(EVP_TEST *t, int enc, out_len = expected->plaintext_len; } if (inp_misalign == (size_t)-1) { - /* - * Exercise in-place encryption - */ + /* Exercise in-place encryption */ tmp = OPENSSL_malloc(out_misalign + in_len + 2 * EVP_MAX_BLOCK_LENGTH); if (!tmp) goto err; @@ -982,8 +979,8 @@ static const EVP_TEST_METHOD cipher_test_method = { /** -*** MAC TESTS -**/ + ** MAC TESTS + **/ typedef struct mac_data_st { /* MAC type in one form or another */ @@ -1019,7 +1016,12 @@ static int mac_test_init(EVP_TEST *t, const char *alg) int type = NID_undef; MAC_DATA *mdat; - if ((mac = EVP_MAC_fetch(NULL, alg, NULL)) == NULL) { + if (is_mac_disabled(alg)) { + TEST_info("skipping, '%s' is disabled", alg); + t->skip = 1; + return 1; + } + if ((mac = EVP_MAC_fetch(libctx, alg, NULL)) == NULL) { /* * Since we didn't find an EVP_MAC, we check for known EVP_PKEY methods * For debugging purposes, we allow 'NNNN by EVP_PKEY' to force running @@ -1032,41 +1034,16 @@ static int mac_test_init(EVP_TEST *t, const char *alg) && strcmp(alg + sz - (sizeof(epilogue) - 1), epilogue) == 0) sz -= sizeof(epilogue) - 1; - if (strncmp(alg, "HMAC", sz) == 0) { + if (strncmp(alg, "HMAC", sz) == 0) type = EVP_PKEY_HMAC; - } else if (strncmp(alg, "CMAC", sz) == 0) { -#ifndef OPENSSL_NO_CMAC + else if (strncmp(alg, "CMAC", sz) == 0) type = EVP_PKEY_CMAC; -#else - t->skip = 1; - return 1; -#endif - } else if (strncmp(alg, "Poly1305", sz) == 0) { -#ifndef OPENSSL_NO_POLY1305 + else if (strncmp(alg, "Poly1305", sz) == 0) type = EVP_PKEY_POLY1305; -#else - t->skip = 1; - return 1; -#endif - } else if (strncmp(alg, "SipHash", sz) == 0) { -#ifndef OPENSSL_NO_SIPHASH + else if (strncmp(alg, "SipHash", sz) == 0) type = EVP_PKEY_SIPHASH; -#else - t->skip = 1; - return 1; -#endif - } else { - /* - * Not a known EVP_PKEY method either. If it's a known OID, then - * assume it's been disabled. - */ - if (OBJ_sn2nid(alg) != NID_undef || OBJ_ln2nid(alg) != NID_undef) { - t->skip = 1; - return 1; - } - + else return 0; - } } mdat = OPENSSL_zalloc(sizeof(*mdat)); @@ -1157,7 +1134,8 @@ static int mac_test_run_pkey(EVP_TEST *t) EVP_MD_CTX *mctx = NULL; EVP_PKEY_CTX *pctx = NULL, *genctx = NULL; EVP_PKEY *key = NULL; - const EVP_MD *md = NULL; + const char *mdname = NULL; + EVP_CIPHER *cipher = NULL; unsigned char *got = NULL; size_t got_len; int i; @@ -1168,36 +1146,44 @@ static int mac_test_run_pkey(EVP_TEST *t) TEST_info("Trying the EVP_PKEY %s test with %s", OBJ_nid2sn(expected->type), expected->alg); -#ifdef OPENSSL_NO_DES - if (expected->alg != NULL && strstr(expected->alg, "DES") != NULL) { - /* Skip DES */ - t->err = NULL; - goto err; - } -#endif - - if (expected->type == EVP_PKEY_CMAC) + if (expected->type == EVP_PKEY_CMAC) { + if (is_cipher_disabled(expected->alg)) { + TEST_info("skipping, PKEY CMAC '%s' is disabled", expected->alg); + t->skip = 1; + t->err = NULL; + goto err; + } + if (!TEST_ptr(cipher = EVP_CIPHER_fetch(libctx, expected->alg, NULL))) { + t->err = "MAC_KEY_CREATE_ERROR"; + goto err; + } key = EVP_PKEY_new_CMAC_key(NULL, expected->key, expected->key_len, - EVP_get_cipherbyname(expected->alg)); - else - key = EVP_PKEY_new_raw_private_key(expected->type, NULL, expected->key, - expected->key_len); + cipher); + } else { + key = EVP_PKEY_new_raw_private_key_with_libctx(libctx, + OBJ_nid2sn(expected->type), + NULL, expected->key, + expected->key_len); + } if (key == NULL) { t->err = "MAC_KEY_CREATE_ERROR"; goto err; } if (expected->type == EVP_PKEY_HMAC) { - if (!TEST_ptr(md = EVP_get_digestbyname(expected->alg))) { - t->err = "MAC_ALGORITHM_SET_ERROR"; + if (is_digest_disabled(expected->alg)) { + TEST_info("skipping, HMAC '%s' is disabled", expected->alg); + t->skip = 1; + t->err = NULL; goto err; } + mdname = expected->alg; } if (!TEST_ptr(mctx = EVP_MD_CTX_new())) { t->err = "INTERNAL_ERROR"; goto err; } - if (!EVP_DigestSignInit(mctx, &pctx, md, NULL, key)) { + if (!EVP_DigestSignInit_ex(mctx, &pctx, mdname, NULL, key, libctx)) { t->err = "DIGESTSIGNINIT_ERROR"; goto err; } @@ -1229,6 +1215,7 @@ static int mac_test_run_pkey(EVP_TEST *t) } t->err = NULL; err: + EVP_CIPHER_free(cipher); EVP_MD_CTX_free(mctx); OPENSSL_free(got); EVP_PKEY_CTX_free(genctx); @@ -1255,14 +1242,6 @@ static int mac_test_run_mac(EVP_TEST *t) TEST_info("Trying the EVP_MAC %s test with %s", expected->mac_name, expected->alg); -#ifdef OPENSSL_NO_DES - if (expected->alg != NULL && strstr(expected->alg, "DES") != NULL) { - /* Skip DES */ - t->err = NULL; - goto err; - } -#endif - if (expected->alg != NULL) { /* * The underlying algorithm may be a cipher or a digest. @@ -1305,9 +1284,7 @@ static int mac_test_run_mac(EVP_TEST *t) expected->iv, expected->iv_len); - /* - * Unknown controls. They must match parameters that the MAC recognises - */ + /* Unknown controls. They must match parameters that the MAC recognizes */ if (params_n + sk_OPENSSL_STRING_num(expected->controls) >= OSSL_NELEM(params)) { t->err = "MAC_TOO_MANY_PARAMETERS"; @@ -1402,9 +1379,9 @@ static const EVP_TEST_METHOD mac_test_method = { /** -*** PUBLIC KEY TESTS -*** These are all very similar and share much common code. -**/ + ** PUBLIC KEY TESTS + ** These are all very similar and share much common code. + **/ typedef struct pkey_data_st { /* Context for this operation */ @@ -1442,6 +1419,7 @@ static int pkey_test_init(EVP_TEST *t, const char *name, if (rv == 0) rv = find_key(&pkey, name, private_keys); if (rv == 0 || pkey == NULL) { + TEST_info("skipping, key '%s' is disabled", name); t->skip = 1; return 1; } @@ -1451,7 +1429,7 @@ static int pkey_test_init(EVP_TEST *t, const char *name, return 0; } kdata->keyop = keyop; - if (!TEST_ptr(kdata->ctx = EVP_PKEY_CTX_new(pkey, NULL))) { + if (!TEST_ptr(kdata->ctx = EVP_PKEY_CTX_new_from_pkey(libctx, pkey, NULL))) { EVP_PKEY_free(pkey); OPENSSL_free(kdata); return 0; @@ -1487,14 +1465,8 @@ static int pkey_test_ctrl(EVP_TEST *t, EVP_PKEY_CTX *pctx, t->err = "PKEY_CTRL_INVALID"; rv = 1; } else if (p != NULL && rv <= 0) { - /* If p has an OID and lookup fails assume disabled algorithm */ - int nid = OBJ_sn2nid(p); - - if (nid == NID_undef) - nid = OBJ_ln2nid(p); - if (nid != NID_undef - && EVP_get_digestbynid(nid) == NULL - && EVP_get_cipherbynid(nid) == NULL) { + if (is_digest_disabled(p) || is_cipher_disabled(p)) { + TEST_info("skipping, '%s' is disabled", p); t->skip = 1; rv = 1; } else { @@ -1637,7 +1609,6 @@ static const EVP_TEST_METHOD pverify_test_method = { verify_test_run }; - static int pderive_test_init(EVP_TEST *t, const char *name) { return pkey_test_init(t, name, 0, EVP_PKEY_derive_init, 0); @@ -1702,8 +1673,8 @@ static const EVP_TEST_METHOD pderive_test_method = { /** -*** PBE TESTS -**/ + ** PBE TESTS + **/ typedef enum pbe_type_enum { PBE_TYPE_INVALID = 0, @@ -1729,9 +1700,7 @@ typedef struct pbe_data_st { } PBE_DATA; #ifndef OPENSSL_NO_SCRYPT -/* - * Parse unsigned decimal 64 bit integer value - */ +/* Parse unsigned decimal 64 bit integer value */ static int parse_uint64(const char *value, uint64_t *pr) { const char *p = value; @@ -1812,13 +1781,13 @@ static int pbe_test_init(EVP_TEST *t, const char *alg) PBE_DATA *pdat; PBE_TYPE pbe_type = PBE_TYPE_INVALID; - if (strcmp(alg, "scrypt") == 0) { -#ifndef OPENSSL_NO_SCRYPT - pbe_type = PBE_TYPE_SCRYPT; -#else + if (is_kdf_disabled(alg)) { + TEST_info("skipping, '%s' is disabled", alg); t->skip = 1; return 1; -#endif + } + if (strcmp(alg, "scrypt") == 0) { + pbe_type = PBE_TYPE_SCRYPT; } else if (strcmp(alg, "pbkdf2") == 0) { pbe_type = PBE_TYPE_PBKDF2; } else if (strcmp(alg, "pkcs12") == 0) { @@ -1867,6 +1836,10 @@ static int pbe_test_run(EVP_TEST *t) { PBE_DATA *expected = t->data; unsigned char *key; + EVP_MD *fetched_digest = NULL; + OPENSSL_CTX *save_libctx; + + save_libctx = OPENSSL_CTX_set0_default(libctx); if (!TEST_ptr(key = OPENSSL_malloc(expected->key_len))) { t->err = "INTERNAL_ERROR"; @@ -1883,18 +1856,23 @@ static int pbe_test_run(EVP_TEST *t) #ifndef OPENSSL_NO_SCRYPT } else if (expected->pbe_type == PBE_TYPE_SCRYPT) { if (EVP_PBE_scrypt((const char *)expected->pass, expected->pass_len, - expected->salt, expected->salt_len, expected->N, - expected->r, expected->p, expected->maxmem, - key, expected->key_len) == 0) { + expected->salt, expected->salt_len, + expected->N, expected->r, expected->p, + expected->maxmem, key, expected->key_len) == 0) { t->err = "SCRYPT_ERROR"; goto err; } #endif } else if (expected->pbe_type == PBE_TYPE_PKCS12) { + fetched_digest = EVP_MD_fetch(libctx, EVP_MD_name(expected->md), NULL); + if (fetched_digest == NULL) { + t->err = "PKCS12_ERROR"; + goto err; + } if (PKCS12_key_gen_uni(expected->pass, expected->pass_len, expected->salt, expected->salt_len, expected->id, expected->iter, expected->key_len, - key, expected->md) == 0) { + key, fetched_digest) == 0) { t->err = "PKCS12_ERROR"; goto err; } @@ -1905,7 +1883,9 @@ static int pbe_test_run(EVP_TEST *t) t->err = NULL; err: + EVP_MD_free(fetched_digest); OPENSSL_free(key); + OPENSSL_CTX_set0_default(save_libctx); return 1; } @@ -1919,8 +1899,8 @@ static const EVP_TEST_METHOD pbe_test_method = { /** -*** BASE64 TESTS -**/ + ** BASE64 TESTS + **/ typedef enum { BASE64_CANONICAL_ENCODING = 0, @@ -2066,9 +2046,8 @@ static const EVP_TEST_METHOD encode_test_method = { /** -*** RAND TESTS -**/ - + ** RAND TESTS + **/ #define MAX_RAND_REPEATS 15 typedef struct rand_data_pass_st { @@ -2112,7 +2091,7 @@ static int rand_test_init(EVP_TEST *t, const char *name) if (!TEST_ptr(rdata = OPENSSL_zalloc(sizeof(*rdata)))) return 0; - rand = EVP_RAND_fetch(NULL, "TEST-RAND", NULL); + rand = EVP_RAND_fetch(libctx, "TEST-RAND", NULL); if (rand == NULL) goto err; rdata->parent = EVP_RAND_CTX_new(rand, NULL); @@ -2124,7 +2103,7 @@ static int rand_test_init(EVP_TEST *t, const char *name) if (!EVP_RAND_set_ctx_params(rdata->parent, params)) goto err; - rand = EVP_RAND_fetch(NULL, name, NULL); + rand = EVP_RAND_fetch(libctx, name, NULL); if (rand == NULL) goto err; rdata->ctx = EVP_RAND_CTX_new(rand, rdata->parent); @@ -2351,9 +2330,8 @@ static const EVP_TEST_METHOD rand_test_method = { /** -*** KDF TESTS -**/ - + ** KDF TESTS + **/ typedef struct kdf_data_st { /* Context for this operation */ EVP_KDF_CTX *ctx; @@ -2373,27 +2351,18 @@ static int kdf_test_init(EVP_TEST *t, const char *name) KDF_DATA *kdata; EVP_KDF *kdf; -#ifdef OPENSSL_NO_SCRYPT - /* TODO(3.0) Replace with "scrypt" once aliases are supported */ - if (strcmp(name, "id-scrypt") == 0) { - t->skip = 1; - return 1; - } -#endif /* OPENSSL_NO_SCRYPT */ - -#ifdef OPENSSL_NO_CMS - if (strcmp(name, "X942KDF") == 0) { + if (is_kdf_disabled(name)) { + TEST_info("skipping, '%s' is disabled", name); t->skip = 1; return 1; } -#endif /* OPENSSL_NO_CMS */ if (!TEST_ptr(kdata = OPENSSL_zalloc(sizeof(*kdata)))) return 0; kdata->p = kdata->params; *kdata->p = OSSL_PARAM_construct_end(); - kdf = EVP_KDF_fetch(NULL, name, NULL); + kdf = EVP_KDF_fetch(libctx, name, NULL); if (kdf == NULL) { OPENSSL_free(kdata); return 0; @@ -2442,22 +2411,16 @@ static int kdf_test_ctrl(EVP_TEST *t, EVP_KDF_CTX *kctx, return 0; } if (p != NULL && strcmp(name, "digest") == 0) { - /* If p has an OID and lookup fails assume disabled algorithm */ - int nid = OBJ_sn2nid(p); - - if (nid == NID_undef) - nid = OBJ_ln2nid(p); - if (nid != NID_undef && EVP_get_digestbynid(nid) == NULL) + if (is_digest_disabled(p)) { + TEST_info("skipping, '%s' is disabled", p); t->skip = 1; + } } if (p != NULL && strcmp(name, "cipher") == 0) { - /* If p has an OID and lookup fails assume disabled algorithm */ - int nid = OBJ_sn2nid(p); - - if (nid == NID_undef) - nid = OBJ_ln2nid(p); - if (nid != NID_undef && EVP_get_cipherbynid(nid) == NULL) + if (is_cipher_disabled(p)) { + TEST_info("skipping, '%s' is disabled", p); t->skip = 1; + } } OPENSSL_free(name); return 1; @@ -2513,10 +2476,9 @@ static const EVP_TEST_METHOD kdf_test_method = { kdf_test_run }; - /** -*** PKEY KDF TESTS -**/ + ** PKEY KDF TESTS + **/ typedef struct pkey_kdf_data_st { /* Context for this operation */ @@ -2532,40 +2494,41 @@ typedef struct pkey_kdf_data_st { */ static int pkey_kdf_test_init(EVP_TEST *t, const char *name) { - PKEY_KDF_DATA *kdata; + OPENSSL_CTX *save_libctx = NULL; + PKEY_KDF_DATA *kdata = NULL; int kdf_nid = OBJ_sn2nid(name); -#ifdef OPENSSL_NO_SCRYPT - if (strcmp(name, "scrypt") == 0) { + if (is_kdf_disabled(name)) { + TEST_info("skipping, '%s' is disabled", name); t->skip = 1; return 1; } -#endif /* OPENSSL_NO_SCRYPT */ - -#ifdef OPENSSL_NO_CMS - if (strcmp(name, "X942KDF") == 0) { - t->skip = 1; - return 1; - } -#endif /* OPENSSL_NO_CMS */ if (kdf_nid == NID_undef) kdf_nid = OBJ_ln2nid(name); if (!TEST_ptr(kdata = OPENSSL_zalloc(sizeof(*kdata)))) return 0; + /* + * TODO(3.0): This should be using EVP_PKEY_CTX_new_from_name(), + * but it does not currently since the PKEY_KDF is using legacy paths. + * Internally it still uses fetches with the legacy path, + * So for now we hack in the library context. + */ + save_libctx = OPENSSL_CTX_set0_default(libctx); kdata->ctx = EVP_PKEY_CTX_new_id(kdf_nid, NULL); - if (kdata->ctx == NULL) { - OPENSSL_free(kdata); - return 0; - } - if (EVP_PKEY_derive_init(kdata->ctx) <= 0) { - EVP_PKEY_CTX_free(kdata->ctx); - OPENSSL_free(kdata); - return 0; - } + if (kdata->ctx == NULL + || EVP_PKEY_derive_init(kdata->ctx) <= 0) + goto err; + + OPENSSL_CTX_set0_default(save_libctx); t->data = kdata; return 1; +err: + OPENSSL_CTX_set0_default(save_libctx); + EVP_PKEY_CTX_free(kdata->ctx); + OPENSSL_free(kdata); + return 0; } static void pkey_kdf_test_cleanup(EVP_TEST *t) @@ -2621,10 +2584,9 @@ static const EVP_TEST_METHOD pkey_kdf_test_method = { pkey_kdf_test_run }; - /** -*** KEYPAIR TESTS -**/ + ** KEYPAIR TESTS + **/ typedef struct keypair_test_data_st { EVP_PKEY *privk; @@ -2739,8 +2701,8 @@ static const EVP_TEST_METHOD keypair_test_method = { }; /** -*** KEYGEN TEST -**/ + ** KEYGEN TEST + **/ typedef struct keygen_test_data_st { EVP_PKEY_CTX *genctx; /* Keygen context to use */ @@ -2759,11 +2721,12 @@ static int keygen_test_init(EVP_TEST *t, const char *alg) return 0; } - if (!TEST_ptr(genctx = EVP_PKEY_CTX_new_id(nid, NULL))) { - /* assume algorithm disabled */ + if (is_pkey_disabled(alg)) { t->skip = 1; return 1; } + if (!TEST_ptr(genctx = EVP_PKEY_CTX_new_from_name(libctx, alg, NULL))) + goto err; if (EVP_PKEY_keygen_init(genctx) <= 0) { t->err = "KEYGEN_INIT_ERROR"; @@ -2816,6 +2779,10 @@ static int keygen_test_run(EVP_TEST *t) goto err; } + if (!evp_pkey_is_provided(pkey)) { + TEST_info("Warning: legacy key generated %s", keygen->keyname); + goto err; + } if (keygen->keyname != NULL) { KEY_LIST *key; @@ -2852,8 +2819,8 @@ static const EVP_TEST_METHOD keygen_test_method = { }; /** -*** DIGEST SIGN+VERIFY TESTS -**/ + ** DIGEST SIGN+VERIFY TESTS + **/ typedef struct { int is_verify; /* Set to 1 if verifying */ @@ -2875,14 +2842,13 @@ static int digestsigver_test_init(EVP_TEST *t, const char *alg, int is_verify, DIGESTSIGN_DATA *mdat; if (strcmp(alg, "NULL") != 0) { - if ((md = EVP_get_digestbyname(alg)) == NULL) { - /* If alg has an OID assume disabled algorithm */ - if (OBJ_sn2nid(alg) != NID_undef || OBJ_ln2nid(alg) != NID_undef) { - t->skip = 1; - return 1; - } - return 0; + if (is_digest_disabled(alg)) { + t->skip = 1; + return 1; } + md = EVP_get_digestbyname(alg); + if (md == NULL) + return 0; } if (!TEST_ptr(mdat = OPENSSL_zalloc(sizeof(*mdat)))) return 0; @@ -2922,6 +2888,7 @@ static int digestsigver_test_parse(EVP_TEST *t, if (strcmp(keyword, "Key") == 0) { EVP_PKEY *pkey = NULL; int rv = 0; + const char *name = mdata->md == NULL ? NULL : EVP_MD_name(mdata->md); if (mdata->is_verify) rv = find_key(&pkey, value, public_keys); @@ -2932,13 +2899,13 @@ static int digestsigver_test_parse(EVP_TEST *t, return 1; } if (mdata->is_verify) { - if (!EVP_DigestVerifyInit(mdata->ctx, &mdata->pctx, mdata->md, - NULL, pkey)) + if (!EVP_DigestVerifyInit_ex(mdata->ctx, &mdata->pctx, + name, NULL, pkey, libctx)) t->err = "DIGESTVERIFYINIT_ERROR"; return 1; } - if (!EVP_DigestSignInit(mdata->ctx, &mdata->pctx, mdata->md, NULL, - pkey)) + if (!EVP_DigestSignInit_ex(mdata->ctx, &mdata->pctx, + name, NULL, pkey, libctx)) t->err = "DIGESTSIGNINIT_ERROR"; return 1; } @@ -3117,8 +3084,8 @@ static const EVP_TEST_METHOD oneshot_digestverify_test_method = { /** -*** PARSING AND DISPATCH -**/ + ** PARSING AND DISPATCH + **/ static const EVP_TEST_METHOD *evp_test_list[] = { &rand_test_method, @@ -3175,9 +3142,7 @@ static void clear_test(EVP_TEST *t) t->meth = NULL; } -/* - * Check for errors in the test structure; return 1 if okay, else 0. - */ +/* Check for errors in the test structure; return 1 if okay, else 0. */ static int check_test_error(EVP_TEST *t) { unsigned long err; @@ -3240,9 +3205,7 @@ static int check_test_error(EVP_TEST *t) return 0; } -/* - * Run a parsed test. Log a message and return 0 on error. - */ +/* Run a parsed test. Log a message and return 0 on error. */ static int run_test(EVP_TEST *t) { if (t->meth == NULL) @@ -3319,9 +3282,7 @@ static int key_unsupported(void) return 0; } -/* - * NULL out the value from |pp| but return it. This "steals" a pointer. - */ +/* NULL out the value from |pp| but return it. This "steals" a pointer. */ static char *take_value(PAIR *pp) { char *p = pp->value; @@ -3351,21 +3312,19 @@ static int prov_available(char *providers) more = 0; else *p = '\0'; - if (OSSL_PROVIDER_available(NULL, providers)) + if (OSSL_PROVIDER_available(libctx, providers)) return 1; /* Found one */ } return 0; } -/* - * Read and parse one test. Return 0 if failure, 1 if okay. - */ +/* Read and parse one test. Return 0 if failure, 1 if okay. */ static int parse(EVP_TEST *t) { KEY_LIST *key, **klist; EVP_PKEY *pkey; PAIR *pp; - int i; + int i, skip_availablein = 0; top: do { @@ -3380,8 +3339,9 @@ top: /* Are we adding a key? */ klist = NULL; pkey = NULL; +start: if (strcmp(pp->key, "PrivateKey") == 0) { - pkey = PEM_read_bio_PrivateKey(t->s.key, NULL, 0, NULL); + pkey = PEM_read_bio_PrivateKey_ex(t->s.key, NULL, 0, NULL, libctx, NULL); if (pkey == NULL && !key_unsupported()) { EVP_PKEY_free(pkey); TEST_info("Can't read private key %s", pp->value); @@ -3424,7 +3384,7 @@ top: nid = OBJ_txt2nid(strnid); if (nid == NID_undef) { - TEST_info("Uncrecognised algorithm NID"); + TEST_info("Unrecognised algorithm NID"); return 0; } if (!parse_bin(keydata, &keybin, &keylen)) { @@ -3432,9 +3392,11 @@ top: return 0; } if (klist == &private_keys) - pkey = EVP_PKEY_new_raw_private_key(nid, NULL, keybin, keylen); + pkey = EVP_PKEY_new_raw_private_key_with_libctx(libctx, strnid, NULL, + keybin, keylen); else - pkey = EVP_PKEY_new_raw_public_key(nid, NULL, keybin, keylen); + pkey = EVP_PKEY_new_raw_public_key_with_libctx(libctx, strnid, NULL, + keybin, keylen); if (pkey == NULL && !key_unsupported()) { TEST_info("Can't read %s data", pp->key); OPENSSL_free(keybin); @@ -3442,6 +3404,16 @@ top: return 0; } OPENSSL_free(keybin); + } else if (strcmp(pp->key, "Availablein") == 0) { + if (!prov_available(pp->value)) { + TEST_info("skipping, '%s' provider not available: %s:%d", + pp->value, t->s.test_file, t->s.start); + t->skip = 1; + return 0; + } + skip_availablein++; + pp++; + goto start; } /* If we have a key add to list */ @@ -3458,7 +3430,7 @@ top: *klist = key; /* Go back and start a new stanza. */ - if (t->s.numpairs != 1) + if ((t->s.numpairs - skip_availablein) != 1) TEST_info("Line %d: missing blank line\n", t->s.curr); goto top; } @@ -3475,14 +3447,11 @@ top: return 0; } - for (pp++, i = 1; i < t->s.numpairs; pp++, i++) { + for (pp++, i = 1; i < (t->s.numpairs - skip_availablein); pp++, i++) { if (strcmp(pp->key, "Availablein") == 0) { - if (!prov_available(pp->value)) { - TEST_info("skipping, providers not available: %s:%d", - t->s.test_file, t->s.start); - t->skip = 1; - return 0; - } + TEST_info("Line %d: 'Availablein' should be the first option", + t->s.curr); + return 0; } else if (strcmp(pp->key, "Result") == 0) { if (t->expected_err != NULL) { TEST_info("Line %d: multiple result lines", t->s.curr); @@ -3551,14 +3520,54 @@ static int run_file_tests(int i) return c == 0; } -OPT_TEST_DECLARE_USAGE("file...\n") +const OPTIONS *test_get_options(void) +{ + static const OPTIONS test_options[] = { + OPT_TEST_OPTIONS_WITH_EXTRA_USAGE("[file...]\n"), + { "config", OPT_CONFIG_FILE, '<', + "The configuration file to use for the libctx" }, + { OPT_HELP_STR, 1, '-', + "file\tFile to run tests on.\n" }, + { NULL } + }; + return test_options; +} int setup_tests(void) { size_t n; + char *config_file = NULL; + + OPTION_CHOICE o; + + while ((o = opt_next()) != OPT_EOF) { + switch (o) { + case OPT_CONFIG_FILE: + config_file = opt_arg(); + break; + case OPT_TEST_CASES: + break; + default: + case OPT_ERR: + return 0; + } + } + + /* + * Load the 'null' provider into the default library context to ensure that + * the the tests do not fallback to using the default provider. + */ + prov_null = OSSL_PROVIDER_load(NULL, "null"); + if (prov_null == NULL) { + opt_printf_stderr("Failed to load null provider into default libctx\n"); + return 0; + } - if (!test_skip_common_options()) { - TEST_error("Error parsing test options\n"); + /* load the provider via configuration into the created library context */ + libctx = OPENSSL_CTX_new(); + if (libctx == NULL + || !OPENSSL_CTX_load_config(libctx, config_file)) { + TEST_error("Failed to load config %s\n", config_file); return 0; } @@ -3569,3 +3578,170 @@ int setup_tests(void) ADD_ALL_TESTS(run_file_tests, n); return 1; } + +void cleanup_tests(void) +{ + OSSL_PROVIDER_unload(prov_null); + OPENSSL_CTX_free(libctx); +} + +#define STR_STARTS_WITH(str, pre) strncasecmp(pre, str, strlen(pre)) == 0 +#define STR_ENDS_WITH(str, pre) \ +strlen(str) < strlen(pre) ? 0 : (strcasecmp(pre, str + strlen(str) - strlen(pre)) == 0) + +static int is_digest_disabled(const char *name) +{ +#ifdef OPENSSL_NO_BLAKE2 + if (STR_STARTS_WITH(name, "BLAKE")) + return 1; +#endif +#ifdef OPENSSL_NO_MD2 + if (strcasecmp(name, "MD2") == 0) + return 1; +#endif +#ifdef OPENSSL_NO_MDC2 + if (strcasecmp(name, "MDC2") == 0) + return 1; +#endif +#ifdef OPENSSL_NO_MD4 + if (strcasecmp(name, "MD4") == 0) + return 1; +#endif +#ifdef OPENSSL_NO_MD5 + if (strcasecmp(name, "MD5") == 0) + return 1; +#endif +#ifdef OPENSSL_NO_RMD160 + if (strcasecmp(name, "RIPEMD160") == 0) + return 1; +#endif +#ifdef OPENSSL_NO_SM3 + if (strcasecmp(name, "SM3") == 0) + return 1; +#endif +#ifdef OPENSSL_NO_WHIRLPOOL + if (strcasecmp(name, "WHIRLPOOL") == 0) + return 1; +#endif + return 0; +} + +static int is_pkey_disabled(const char *name) +{ +#ifdef OPENSSL_NO_RSA + if (STR_STARTS_WITH(name, "RSA")) + return 1; +#endif +#ifdef OPENSSL_NO_EC + if (STR_STARTS_WITH(name, "EC")) + return 1; +#endif +#ifdef OPENSSL_NO_DH + if (STR_STARTS_WITH(name, "DH")) + return 1; +#endif +#ifdef OPENSSL_NO_DSA + if (STR_STARTS_WITH(name, "DSA")) + return 1; +#endif + return 0; +} + +static int is_mac_disabled(const char *name) +{ +#ifdef OPENSSL_NO_BLAKE2 + if (STR_STARTS_WITH(name, "BLAKE2BMAC") + || STR_STARTS_WITH(name, "BLAKE2SMAC")) + return 1; +#endif +#ifdef OPENSSL_NO_CMAC + if (STR_STARTS_WITH(name, "CMAC")) + return 1; +#endif +#ifdef OPENSSL_NO_POLY1305 + if (STR_STARTS_WITH(name, "Poly1305")) + return 1; +#endif +#ifdef OPENSSL_NO_SIPHASH + if (STR_STARTS_WITH(name, "SipHash")) + return 1; +#endif + return 0; +} +static int is_kdf_disabled(const char *name) +{ +#ifdef OPENSSL_NO_SCRYPT + if (STR_ENDS_WITH(name, "SCRYPT")) + return 1; +#endif +#ifdef OPENSSL_NO_CMS + if (strcasecmp(name, "X942KDF") == 0) + return 1; +#endif /* OPENSSL_NO_CMS */ + return 0; +} + +static int is_cipher_disabled(const char *name) +{ +#ifdef OPENSSL_NO_ARIA + if (STR_STARTS_WITH(name, "ARIA")) + return 1; +#endif +#ifdef OPENSSL_NO_BF + if (STR_STARTS_WITH(name, "BF")) + return 1; +#endif +#ifdef OPENSSL_NO_CAMELLIA + if (STR_STARTS_WITH(name, "CAMELLIA")) + return 1; +#endif +#ifdef OPENSSL_NO_CAST + if (STR_STARTS_WITH(name, "CAST")) + return 1; +#endif +#ifdef OPENSSL_NO_CHACHA + if (STR_STARTS_WITH(name, "CHACHA")) + return 1; +#endif +#ifdef OPENSSL_NO_POLY1305 + if (STR_ENDS_WITH(name, "Poly1305")) + return 1; +#endif +#ifdef OPENSSL_NO_DES + if (STR_STARTS_WITH(name, "DES")) + return 1; +#endif +#ifdef OPENSSL_NO_OCB + if (STR_ENDS_WITH(name, "OCB")) + return 1; +#endif +#ifdef OPENSSL_NO_IDEA + if (STR_STARTS_WITH(name, "IDEA")) + return 1; +#endif +#ifdef OPENSSL_NO_RC2 + if (STR_STARTS_WITH(name, "RC2")) + return 1; +#endif +#ifdef OPENSSL_NO_RC4 + if (STR_STARTS_WITH(name, "RC4")) + return 1; +#endif +#ifdef OPENSSL_NO_RC5 + if (STR_STARTS_WITH(name, "RC5")) + return 1; +#endif +#ifdef OPENSSL_NO_SEED + if (STR_STARTS_WITH(name, "SEED")) + return 1; +#endif +#ifdef OPENSSL_NO_SIV + if (STR_ENDS_WITH(name, "SIV")) + return 1; +#endif +#ifdef OPENSSL_NO_SM4 + if (STR_STARTS_WITH(name, "SM4")) + return 1; +#endif + return 0; +} diff --git a/test/recipes/30-test_evp.t b/test/recipes/30-test_evp.t index c94893a5bc..29fb224e63 100644 --- a/test/recipes/30-test_evp.t +++ b/test/recipes/30-test_evp.t @@ -14,7 +14,7 @@ use OpenSSL::Test qw(:DEFAULT data_file bldtop_dir srctop_file srctop_dir bldtop use OpenSSL::Test::Utils; BEGIN { -setup("test_evp"); + setup("test_evp"); } use lib srctop_dir('Configurations'); @@ -31,49 +31,73 @@ my @configs = ( $defaultcnf ); # Only add the FIPS config if the FIPS module has been built push @configs, 'fips.cnf' unless $no_fips; -my @files = qw( evprand.txt evpciph.txt evpdigest.txt evppkey.txt - evppkey_ecc.txt evpciph_aes_cts.txt); - -my @defltfiles = qw( evpencod.txt evpkdf.txt evppkey_kdf.txt evpmac.txt - evppbe.txt evpcase.txt evpccmcavs.txt ); -my @ideafiles = qw( evpciph_idea.txt ); -push @defltfiles, @ideafiles unless disabled("idea"); - -my @sivfiles = qw( evpaessiv.txt ); -push @defltfiles, @sivfiles unless disabled("siv"); - -my @castfiles = qw( evpciph_cast5.txt ); -push @defltfiles, @castfiles unless disabled("cast"); - -my @seedfiles = qw( evpciph_seed.txt ); -push @defltfiles, @seedfiles unless disabled("seed"); - -my @sm4files = qw( evpciph_sm4.txt ); -push @defltfiles, @sm4files unless disabled("sm4"); - -my @desfiles = qw( evpciph_des.txt ); -push @defltfiles, @desfiles unless disabled("des"); - -my @rc4files = qw( evpciph_rc4.txt ); -push @defltfiles, @rc4files unless disabled("rc4"); - -my @rc5files = qw( evpciph_rc5.txt ); -push @defltfiles, @rc5files unless disabled("rc5"); - -my @rc2files = qw( evpciph_rc2.txt ); -push @defltfiles, @rc2files unless disabled("rc2"); - -my @chachafiles = qw( evpciph_chacha.txt ); -push @defltfiles, @chachafiles unless disabled("chacha"); - -my @bffiles = qw( evpciph_bf.txt ); -push @defltfiles, @bffiles unless disabled("bf"); - -my @md2files = qw( evpmd_md2.txt ); -push @defltfiles, @md2files unless disabled("md2"); - -my @mdc2files = qw( evpmd_mdc2.txt ); -push @defltfiles, @mdc2files unless disabled("mdc2"); +# A list of tests that run with both the default and fips provider. +my @files = qw( + evpciph_aes_ccm_cavs.txt + evpciph_aes_common.txt + evpciph_aes_cts1.txt + evpciph_des3_common.txt + evpkdf_hkdf.txt + evpkdf_pbkdf2.txt + evpkdf_ss.txt + evpkdf_ssh.txt + evpkdf_tls12_prf.txt + evpkdf_x963.txt + evpmac_common.txt + evpmd_sha.txt + evppbe_pbkdf2.txt + evppbe_pkcs12.txt + evppkey_dsa.txt + evppkey_ecc.txt + evppkey_ecdh.txt + evppkey_ecdsa.txt + evppkey_ecx.txt + evppkey_ffdhe.txt + evppkey_kas.txt + evppkey_kdf_hkdf.txt + evppkey_mismatch.txt + evppkey_rsa.txt + evprand.txt + ); + +# A list of tests that only run with the default provider +# (i.e. The algorithms are not present in the fips provider) +my @defltfiles = qw( + evpciph_aes_cts23.txt + evpciph_aes_ocb.txt + evpciph_aes_siv.txt + evpciph_aria.txt + evpciph_bf.txt + evpciph_camellia.txt + evpciph_cast5.txt + evpciph_chacha.txt + evpciph_des.txt + evpciph_idea.txt + evpciph_rc2.txt + evpciph_rc4.txt + evpciph_rc5.txt + evpciph_seed.txt + evpciph_sm4.txt + evpencod.txt + evpkdf_krb5.txt + evpkdf_scrypt.txt + evpkdf_tls11_prf.txt + evpkdf_x942.txt + evpmac_blake.txt + evpmac_poly1305.txt + evpmac_siphash.txt + evpmd_blake.txt + evpmd_md.txt + evpmd_mdc2.txt + evpmd_ripemd.txt + evpmd_sm3.txt + evpmd_whirlpool.txt + evppbe_scrypt.txt + evppkey_brainpool.txt + evppkey_kdf_scrypt.txt + evppkey_kdf_tls1_prf.txt + evppkey_sm2.txt + ); plan tests => ($no_fips ? 0 : 1) # FIPS install test @@ -90,20 +114,20 @@ unless ($no_fips) { } foreach (@configs) { - $ENV{OPENSSL_CONF} = srctop_file("test", $_); + my $conf = srctop_file("test", $_); foreach my $f ( @files ) { - ok(run(test(["evp_test", data_file("$f")])), - "running evp_test $f"); + ok(run(test(["evp_test", + "-config", $conf, + data_file("$f")])), + "running evp_test -config $conf $f"); } } -#TODO(3.0): As more operations are converted to providers we can move more of -# these tests to the loop above - -$ENV{OPENSSL_CONF} = srctop_file("test", $defaultcnf); - +my $conf = srctop_file("test", $defaultcnf); foreach my $f ( @defltfiles ) { - ok(run(test(["evp_test", data_file("$f")])), - "running evp_test $f"); + ok(run(test(["evp_test", + "-config", $conf, + data_file("$f")])), + "running evp_test -config $conf $f"); } diff --git a/test/recipes/30-test_evp_data/evpcase.txt b/test/recipes/30-test_evp_data/evpcase.txt deleted file mode 100644 index c56c5098b4..0000000000 --- a/test/recipes/30-test_evp_data/evpcase.txt +++ /dev/null @@ -1,54 +0,0 @@ -# -# Copyright 2018 The OpenSSL Project Authors. All Rights Reserved. -# -# Licensed under the Apache License 2.0 (the "License"). You may not use -# this file except in compliance with the License. You can obtain a copy -# in the file LICENSE in the source distribution or at -# https://www.openssl.org/source/license.html - -# Tests start with one of these keywords -# Cipher Decrypt Derive Digest Encoding KDF MAC PBE -# PrivPubKeyPair Sign Verify VerifyRecover -# and continue until a blank line. Lines starting with a pound sign, -# like this prolog, are ignored. - -# These tests exercise the case insensitive handling of object names. -# They are contrived - -Title = Case insensitive AES tests - -Cipher = Aes-128-eCb -Key = 2B7E151628AED2A6ABF7158809CF4F3C -Plaintext = 6BC1BEE22E409F96E93D7E117393172A -Ciphertext = 3AD77BB40D7A3660A89ECAF32466EF97 - -Cipher = AeS-128-cbC -Key = 2B7E151628AED2A6ABF7158809CF4F3C -IV = 73BED6B8E3C1743B7116E69E22229516 -Plaintext = F69F2445DF4F9B17AD2B417BE66C3710 -Ciphertext = 3FF1CAA1681FAC09120ECA307586E1A7 - -Cipher = aES-128-CTR -Key = AE6852F8121067CC4BF7A5765577F39E -IV = 00000030000000000000000000000001 -Operation = ENCRYPT -Plaintext = 53696E676C6520626C6F636B206D7367 -Ciphertext = E4095D4FB7A7B3792D6175A3261311B8 - -Cipher = AES-128-GcM -Key = 00000000000000000000000000000000 -IV = 000000000000000000000000 -AAD = -Tag = ab6e47d42cec13bdf53a67b21257bddf -Plaintext = 00000000000000000000000000000000 -Ciphertext = 0388dace60b6a392f328c2b971b2fe78 - -Title = Case insensitive digest tests - -Digest = Sha3-256 -Input = "" -Output = A7FFC6F8BF1ED76651C14756A061D662F580FF4DE43B49FA82D80A4B80F8434A - -Digest = shA512 -Input = "abc" -Output = ddaf35a193617abacc417349ae20413112e6fa4e89a97ea20a9eeee64b55d39a2192992a274fc1a836ba3c23a3feebbd454d4423643ce80e2a9ac94fa54ca49f diff --git a/test/recipes/30-test_evp_data/evpccmcavs.txt b/test/recipes/30-test_evp_data/evpciph_aes_ccm_cavs.txt similarity index 99% rename from test/recipes/30-test_evp_data/evpccmcavs.txt rename to test/recipes/30-test_evp_data/evpciph_aes_ccm_cavs.txt index 4b74ea0223..41b7b065cb 100644 --- a/test/recipes/30-test_evp_data/evpccmcavs.txt +++ b/test/recipes/30-test_evp_data/evpciph_aes_ccm_cavs.txt @@ -1,5 +1,5 @@ # -# Copyright 2019 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2019-2020 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the Apache License 2.0 (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy diff --git a/test/recipes/30-test_evp_data/evpciph.txt b/test/recipes/30-test_evp_data/evpciph_aes_common.txt similarity index 58% rename from test/recipes/30-test_evp_data/evpciph.txt rename to test/recipes/30-test_evp_data/evpciph_aes_common.txt index 4f7afd0e1d..82a72db9b2 100644 --- a/test/recipes/30-test_evp_data/evpciph.txt +++ b/test/recipes/30-test_evp_data/evpciph_aes_common.txt @@ -9,47 +9,10 @@ # Tests start with one of these keywords # Cipher Decrypt Derive Digest Encoding KDF MAC PBE # PrivPubKeyPair Sign Verify VerifyRecover -# and continue until a blank line. Lines starting with a pound sign, -# like this prolog, are ignored. +# and continue until a blank line. Lines starting with a pound sign are ignored. +# The keyword Availablein must appear before the test name if needed. -# DES EDE3 CFB1 -# echo -n "Hello World" | -# apps/openssl enc -des-ede3-cfb1 \ -# -K 000102030405060708090A0B0C0D0E0F1011121314151617 -iv 0001020304050607 | -# xxd -ps -u - -Title = DES Tests (various sources) - -Cipher = DES-EDE3-CFB1 -Availablein = default -Key = 000102030405060708090A0B0C0D0E0F1011121314151617 -IV = 0001020304050607 -Plaintext = "Hello World" -Ciphertext = 3CF55D656E9C0664513358 - -Cipher = DES-EDE3-CFB1 -Availablein = default -Key = 000102030405060708090A0B0C0D0E0F1011121314151617 -IV = 0001020304050607 -Operation = DECRYPT -Plaintext = "Hello World" -Ciphertext = 3CF55D656E9C0664513358 - -Cipher = DESX-CBC -Availablein = legacy -Key = 0123456789abcdeff1e0d3c2b5a49786fedcba9876543210 -IV = fedcba9876543210 -Plaintext = 37363534333231204E6F77206973207468652074696D6520666F722000000000 -Ciphertext = 846B2914851E9A2954732F8AA0A611C115CDC2D7951B1053A63C5E03B21AA3C4 - -# DES EDE3 CBC tests (from destest) -Cipher = DES-EDE3-CBC -Key = 0123456789abcdeff1e0d3c2b5a49786fedcba9876543210 -IV = fedcba9876543210 -Plaintext = 37363534333231204E6F77206973207468652074696D6520666F722000000000 -Ciphertext = 3FE301C962AC01D02213763C1CBD4CDC799657C064ECF5D41C673812CFDE9675 - Title = AES (from FIPS-197 test vectors) Cipher = AES-128-ECB @@ -958,226 +921,6 @@ Tag = 3b629ccfbc1119b7319e1dce2cd6fd6d Plaintext = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f Ciphertext = 6268c6fa2a80b2d137467f092f657ac04d89be2beaa623d61b5a868c8f03ff95d3dcee23ad2f1ab3a6c80eaf4b140eb05de3457f0fbc111a6b43d0763aa422a3013cf1dc37fe417d1fbfc449b75d4cc5 -#AES OCB Test vectors -Cipher = aes-128-ocb -Availablein = default -Key = 000102030405060708090A0B0C0D0E0F -IV = 000102030405060708090A0B -AAD = -Tag = 197B9C3C441D3C83EAFB2BEF633B9182 -Plaintext = -Ciphertext = - -Cipher = aes-128-ocb -Availablein = default -Key = 000102030405060708090A0B0C0D0E0F -IV = 000102030405060708090A0B -AAD = 0001020304050607 -Tag = 16DC76A46D47E1EAD537209E8A96D14E -Plaintext = 0001020304050607 -Ciphertext = 92B657130A74B85A - -Cipher = aes-128-ocb -Availablein = default -Key = 000102030405060708090A0B0C0D0E0F -IV = 000102030405060708090A0B -AAD = 0001020304050607 -Tag = 98B91552C8C009185044E30A6EB2FE21 -Plaintext = -Ciphertext = - -Cipher = aes-128-ocb -Availablein = default -Key = 000102030405060708090A0B0C0D0E0F -IV = 000102030405060708090A0B -AAD = -Tag = 971EFFCAE19AD4716F88E87B871FBEED -Plaintext = 0001020304050607 -Ciphertext = 92B657130A74B85A - -Cipher = aes-128-ocb -Availablein = default -Key = 000102030405060708090A0B0C0D0E0F -IV = 000102030405060708090A0B -AAD = 000102030405060708090A0B0C0D0E0F -Tag = 776C9924D6723A1FC4524532AC3E5BEB -Plaintext = 000102030405060708090A0B0C0D0E0F -Ciphertext = BEA5E8798DBE7110031C144DA0B26122 - -Cipher = aes-128-ocb -Availablein = default -Key = 000102030405060708090A0B0C0D0E0F -IV = 000102030405060708090A0B -AAD = 000102030405060708090A0B0C0D0E0F -Tag = 7DDB8E6CEA6814866212509619B19CC6 -Plaintext = -Ciphertext = - -Cipher = aes-128-ocb -Availablein = default -Key = 000102030405060708090A0B0C0D0E0F -IV = 000102030405060708090A0B -AAD = -Tag = 13CC8B747807121A4CBB3E4BD6B456AF -Plaintext = 000102030405060708090A0B0C0D0E0F -Ciphertext = BEA5E8798DBE7110031C144DA0B26122 - -Cipher = aes-128-ocb -Availablein = default -Key = 000102030405060708090A0B0C0D0E0F -IV = 000102030405060708090A0B -AAD = 000102030405060708090A0B0C0D0E0F1011121314151617 -Tag = 5FA94FC3F38820F1DC3F3D1FD4E55E1C -Plaintext = 000102030405060708090A0B0C0D0E0F1011121314151617 -Ciphertext = BEA5E8798DBE7110031C144DA0B26122FCFCEE7A2A8D4D48 - -Cipher = aes-128-ocb -Availablein = default -Key = 000102030405060708090A0B0C0D0E0F -IV = 000102030405060708090A0B -AAD = 000102030405060708090A0B0C0D0E0F1011121314151617 -Tag = 282026DA3068BC9FA118681D559F10F6 -Plaintext = -Ciphertext = - -Cipher = aes-128-ocb -Availablein = default -Key = 000102030405060708090A0B0C0D0E0F -IV = 000102030405060708090A0B -AAD = -Tag = 6EF2F52587FDA0ED97DC7EEDE241DF68 -Plaintext = 000102030405060708090A0B0C0D0E0F1011121314151617 -Ciphertext = BEA5E8798DBE7110031C144DA0B26122FCFCEE7A2A8D4D48 - -Cipher = aes-128-ocb -Availablein = default -Key = 000102030405060708090A0B0C0D0E0F -IV = 000102030405060708090A0B -AAD = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F -Tag = B2A040DD3BD5164372D76D7BB6824240 -Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F -Ciphertext = BEA5E8798DBE7110031C144DA0B26122CEAAB9B05DF771A657149D53773463CB - -Cipher = aes-128-ocb -Availablein = default -Key = 000102030405060708090A0B0C0D0E0F -IV = 000102030405060708090A0B -AAD = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F -Tag = E1E072633BADE51A60E85951D9C42A1B -Plaintext = -Ciphertext = - -Cipher = aes-128-ocb -Availablein = default -Key = 000102030405060708090A0B0C0D0E0F -IV = 000102030405060708090A0B -AAD = -Tag = 4A3BAE824465CFDAF8C41FC50C7DF9D9 -Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F -Ciphertext = BEA5E8798DBE7110031C144DA0B26122CEAAB9B05DF771A657149D53773463CB - -Cipher = aes-128-ocb -Availablein = default -Key = 000102030405060708090A0B0C0D0E0F -IV = 000102030405060708090A0B -AAD = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F2021222324252627 -Tag = 659C623211DEEA0DE30D2C381879F4C8 -Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F2021222324252627 -Ciphertext = BEA5E8798DBE7110031C144DA0B26122CEAAB9B05DF771A657149D53773463CB68C65778B058A635 - -Cipher = aes-128-ocb -Availablein = default -Key = 000102030405060708090A0B0C0D0E0F -IV = 000102030405060708090A0B -AAD = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F2021222324252627 -Tag = 7AEB7A69A1687DD082CA27B0D9A37096 -Plaintext = -Ciphertext = - -Cipher = aes-128-ocb -Availablein = default -Key = 000102030405060708090A0B0C0D0E0F -IV = 000102030405060708090A0B -AAD = -Tag = 060C8467F4ABAB5E8B3C2067A2E115DC -Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F2021222324252627 -Ciphertext = BEA5E8798DBE7110031C144DA0B26122CEAAB9B05DF771A657149D53773463CB68C65778B058A635 - -#AES OCB Non standard test vectors - generated from reference implementation -Cipher = aes-128-ocb -Availablein = default -Key = 000102030405060708090A0B0C0D0E0F -IV = 000102030405060708090A0B -AAD = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F2021222324252627 -Tag = 1b6c44f34e3abb3cbf8976e7 -Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F2021222324252627 -Ciphertext = 09a4fd29de949d9a9aa9924248422097ad4883b4713e6c214ff6567ada08a96766fc4e2ee3e3a5a1 - -Cipher = aes-128-ocb -Availablein = default -Key = 000102030405060708090A0B0C0D0E0F -IV = 000102030405060708090A0B0C0D0E -AAD = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F2021222324252627 -Tag = 1ad62009901f40cba7cd7156f94a7324 -Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F2021222324252627 -Ciphertext = 5e2fa7367ffbdb3938845cfd415fcc71ec79634eb31451609d27505f5e2978f43c44213d8fa441ee - -Cipher = aes-128-ocb -Availablein = default -Key = 000102030405060708090A0B0C0D0E0F -IV = 000102030405060708090A0B -AAD = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F2021222324252627 -Tag = C203F98CE28F7DAD3F31C021 -Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F3031 -Ciphertext = 09A4FD29DE949D9A9AA9924248422097AD4883B4713E6C214FF6567ADA08A967B2176C12F110DD441B7CAA3A509B13C822D6 - -Cipher = aes-128-ocb -Availablein = default -Key = 000102030405060708090A0B0C0D0E0F -IV = 000102030405060708090A0B -AAD = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F2021222324252627 -Tag = 8346D7D47C5D893ED472F5AB -Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F4041 -Ciphertext = 09A4FD29DE949D9A9AA9924248422097AD4883B4713E6C214FF6567ADA08A967B2176C12F110DD441B7CAA3A509B13C86A023AFCEE998BEE42028D44507B15F714FF - -Cipher = aes-128-ocb -Availablein = default -Key = 000102030405060708090A0B0C0D0E0F -IV = 000102030405060708090A0B -AAD = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F2021222324252627 -Tag = 5822A9A70FDF55D29D2984A6 -Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F5051 -Ciphertext = 09A4FD29DE949D9A9AA9924248422097AD4883B4713E6C214FF6567ADA08A967B2176C12F110DD441B7CAA3A509B13C86A023AFCEE998BEE42028D44507B15F77C528A1DE6406B519BCEE8FCB8294170634D - -Cipher = aes-128-ocb -Availablein = default -Key = 000102030405060708090A0B0C0D0E0F -IV = 000102030405060708090A0B -AAD = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F2021222324252627 -Tag = 81772B6741ABB4ECA9D2DEB2 -Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F6061 -Ciphertext = 09A4FD29DE949D9A9AA9924248422097AD4883B4713E6C214FF6567ADA08A967B2176C12F110DD441B7CAA3A509B13C86A023AFCEE998BEE42028D44507B15F77C528A1DE6406B519BCEE8FCB829417001E54E15A7576C4DF32366E0F439C7050FAA - -Cipher = aes-128-ocb -Availablein = default -Key = 000102030405060708090A0B0C0D0E0F -IV = 000102030405060708090A0B -AAD = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F2021222324252627 -Tag = 3E52A01D068DE85456DB03B7 -Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F7071 -Ciphertext = 09A4FD29DE949D9A9AA9924248422097AD4883B4713E6C214FF6567ADA08A967B2176C12F110DD441B7CAA3A509B13C86A023AFCEE998BEE42028D44507B15F77C528A1DE6406B519BCEE8FCB829417001E54E15A7576C4DF32366E0F439C7051CB4824B8114E9A720CBC1CE0185B156B486 - -Cipher = aes-128-ocb -Availablein = default -Key = 000102030405060708090A0B0C0D0E0F -IV = 000102030405060708090A0B -AAD = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F2021222324252627 -Tag = 3E52A01D068DE85456DB03B6 -Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F7071 -Ciphertext = 09A4FD29DE949D9A9AA9924248422097AD4883B4713E6C214FF6567ADA08A967B2176C12F110DD441B7CAA3A509B13C86A023AFCEE998BEE42028D44507B15F77C528A1DE6406B519BCEE8FCB829417001E54E15A7576C4DF32366E0F439C7051CB4824B8114E9A720CBC1CE0185B156B486 -Operation = DECRYPT -Result = CIPHERFINAL_ERROR - Title = AES XTS test vectors from IEEE Std 1619-2007 # Using the same key twice for encryption is always banned. @@ -1190,8 +933,8 @@ Ciphertext = 917cf69ebd68b2ec9b9fe9a3eadda692cd43d2f59598ed858c02c2652fbf922e Result = KEY_SET_ERROR # Using the same key twice for decryption is banned in FIPS mode. -Cipher = aes-128-xts Availablein = fips +Cipher = aes-128-xts Operation = DECRYPT Key = 0000000000000000000000000000000000000000000000000000000000000000 IV = 00000000000000000000000000000000 @@ -1200,8 +943,8 @@ Ciphertext = 917cf69ebd68b2ec9b9fe9a3eadda692cd43d2f59598ed858c02c2652fbf922e Result = KEY_SET_ERROR # Using the same key twice for decryption is allowed outside of FIPS mode. -Cipher = aes-128-xts Availablein = default +Cipher = aes-128-xts Operation = DECRYPT Key = 0000000000000000000000000000000000000000000000000000000000000000 IV = 00000000000000000000000000000000 @@ -1443,7 +1186,6 @@ Plaintext = 00112233445566778899AABBCCDDEEFF000102030405060708090A0B0C0D0E0F Ciphertext = 28C9F404C4B810F4CBCCB35CFB87F8263F5786E2D80ED326CBC7F0E71A99F43BFB988B9B7A02DD21 Result = CIPHERUPDATE_ERROR - # AES wrap tests from RFC5649 Cipher = id-aes192-wrap-pad Key = 5840df6e29b02af1ab493b705bf16ea1ae8338f4dcc176a8 @@ -1455,973 +1197,32 @@ Key = 5840df6e29b02af1ab493b705bf16ea1ae8338f4dcc176a8 Plaintext = 466f7250617369 Ciphertext = afbeb0f07dfbf5419200f2ccb50bb24f -Title = Camellia tests from RFC3713 - -# For all ECB encrypts and decrypts, the transformed sequence is -# CAMELLIA-bits-ECB:key::plaintext:ciphertext:encdec -Cipher = CAMELLIA-128-ECB -Availablein = default -Key = 0123456789abcdeffedcba9876543210 -Plaintext = 0123456789abcdeffedcba9876543210 -Ciphertext = 67673138549669730857065648eabe43 - -Cipher = CAMELLIA-192-ECB -Availablein = default -Key = 0123456789abcdeffedcba98765432100011223344556677 -Plaintext = 0123456789abcdeffedcba9876543210 -Ciphertext = b4993401b3e996f84ee5cee7d79b09b9 - -Cipher = CAMELLIA-256-ECB -Availablein = default -Key = 0123456789abcdeffedcba987654321000112233445566778899aabbccddeeff -Plaintext = 0123456789abcdeffedcba9876543210 -Ciphertext = 9acc237dff16d76c20ef7c919e3a7509 - -# ECB-CAMELLIA128.Encrypt -Cipher = CAMELLIA-128-ECB -Availablein = default -Key = 000102030405060708090A0B0C0D0E0F -Operation = ENCRYPT -Plaintext = 00112233445566778899AABBCCDDEEFF -Ciphertext = 77CF412067AF8270613529149919546F - -Cipher = CAMELLIA-192-ECB -Availablein = default -Key = 000102030405060708090A0B0C0D0E0F1011121314151617 -Operation = ENCRYPT -Plaintext = 00112233445566778899AABBCCDDEEFF -Ciphertext = B22F3C36B72D31329EEE8ADDC2906C68 - -Cipher = CAMELLIA-256-ECB -Availablein = default -Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F -Operation = ENCRYPT -Plaintext = 00112233445566778899AABBCCDDEEFF -Ciphertext = 2EDF1F3418D53B88841FC8985FB1ECF2 - - -# ECB-CAMELLIA128.Encrypt and ECB-CAMELLIA128.Decrypt -Cipher = CAMELLIA-128-ECB -Availablein = default -Key = 2B7E151628AED2A6ABF7158809CF4F3C -Plaintext = 6BC1BEE22E409F96E93D7E117393172A -Ciphertext = 432FC5DCD628115B7C388D770B270C96 - -Cipher = CAMELLIA-128-ECB -Availablein = default -Key = 2B7E151628AED2A6ABF7158809CF4F3C -Plaintext = AE2D8A571E03AC9C9EB76FAC45AF8E51 -Ciphertext = 0BE1F14023782A22E8384C5ABB7FAB2B - -Cipher = CAMELLIA-128-ECB -Availablein = default -Key = 2B7E151628AED2A6ABF7158809CF4F3C -Plaintext = 30C81C46A35CE411E5FBC1191A0A52EF -Ciphertext = A0A1ABCD1893AB6FE0FE5B65DF5F8636 - -Cipher = CAMELLIA-128-ECB -Availablein = default -Key = 2B7E151628AED2A6ABF7158809CF4F3C -Plaintext = F69F2445DF4F9B17AD2B417BE66C3710 -Ciphertext = E61925E0D5DFAA9BB29F815B3076E51A - - -# ECB-CAMELLIA192.Encrypt and ECB-CAMELLIA192.Decrypt -Cipher = CAMELLIA-192-ECB -Availablein = default -Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B -Plaintext = 6BC1BEE22E409F96E93D7E117393172A -Ciphertext = CCCC6C4E138B45848514D48D0D3439D3 - -Cipher = CAMELLIA-192-ECB -Availablein = default -Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B -Plaintext = AE2D8A571E03AC9C9EB76FAC45AF8E51 -Ciphertext = 5713C62C14B2EC0F8393B6AFD6F5785A - -Cipher = CAMELLIA-192-ECB -Availablein = default -Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B -Plaintext = 30C81C46A35CE411E5FBC1191A0A52EF -Ciphertext = B40ED2B60EB54D09D030CF511FEEF366 - -Cipher = CAMELLIA-192-ECB -Availablein = default -Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B -Plaintext = F69F2445DF4F9B17AD2B417BE66C3710 -Ciphertext = 909DBD95799096748CB27357E73E1D26 - - -# ECB-CAMELLIA256.Encrypt and ECB-CAMELLIA256.Decrypt -Cipher = CAMELLIA-256-ECB -Availablein = default -Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 -Plaintext = 6BC1BEE22E409F96E93D7E117393172A -Ciphertext = BEFD219B112FA00098919CD101C9CCFA - -Cipher = CAMELLIA-256-ECB -Availablein = default -Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 -Plaintext = AE2D8A571E03AC9C9EB76FAC45AF8E51 -Ciphertext = C91D3A8F1AEA08A9386CF4B66C0169EA - -Cipher = CAMELLIA-256-ECB -Availablein = default -Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 -Plaintext = 30C81C46A35CE411E5FBC1191A0A52EF -Ciphertext = A623D711DC5F25A51BB8A80D56397D28 - -Cipher = CAMELLIA-256-ECB -Availablein = default -Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 -Plaintext = F69F2445DF4F9B17AD2B417BE66C3710 -Ciphertext = 7960109FB6DC42947FCFE59EA3C5EB6B +Title = Case insensitive AES tests -# For all CBC encrypts and decrypts, the transformed sequence is -# CAMELLIA-bits-CBC:key:IV/ciphertext':plaintext:ciphertext:encdec -# CBC-CAMELLIA128.Encrypt and CBC-CAMELLIA128.Decrypt -Cipher = CAMELLIA-128-CBC -Availablein = default +Cipher = Aes-128-eCb Key = 2B7E151628AED2A6ABF7158809CF4F3C -IV = 000102030405060708090A0B0C0D0E0F Plaintext = 6BC1BEE22E409F96E93D7E117393172A -Ciphertext = 1607CF494B36BBF00DAEB0B503C831AB - -Cipher = CAMELLIA-128-CBC -Availablein = default -Key = 2B7E151628AED2A6ABF7158809CF4F3C -IV = 1607CF494B36BBF00DAEB0B503C831AB -Plaintext = AE2D8A571E03AC9C9EB76FAC45AF8E51 -Ciphertext = A2F2CF671629EF7840C5A5DFB5074887 - -Cipher = CAMELLIA-128-CBC -Availablein = default -Key = 2B7E151628AED2A6ABF7158809CF4F3C -IV = A2F2CF671629EF7840C5A5DFB5074887 -Plaintext = 30C81C46A35CE411E5FBC1191A0A52EF -Ciphertext = 0F06165008CF8B8B5A63586362543E54 +Ciphertext = 3AD77BB40D7A3660A89ECAF32466EF97 -Cipher = CAMELLIA-128-CBC -Availablein = default +Cipher = AeS-128-cbC Key = 2B7E151628AED2A6ABF7158809CF4F3C -IV = 36A84CDAFD5F9A85ADA0F0A993D6D577 -Plaintext = F69F2445DF4F9B17AD2B417BE66C3710 -Ciphertext = 74C64268CDB8B8FAF5B34E8AF3732980 - - -# CBC-CAMELLIA192.Encrypt and CBC-CAMELLIA192.Decrypt -Cipher = CAMELLIA-192-CBC -Availablein = default -Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B -IV = 000102030405060708090A0B0C0D0E0F -Plaintext = 6BC1BEE22E409F96E93D7E117393172A -Ciphertext = 2A4830AB5AC4A1A2405955FD2195CF93 - -Cipher = CAMELLIA-192-CBC -Availablein = default -Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B -IV = 2A4830AB5AC4A1A2405955FD2195CF93 -Plaintext = AE2D8A571E03AC9C9EB76FAC45AF8E51 -Ciphertext = 5D5A869BD14CE54264F892A6DD2EC3D5 - -Cipher = CAMELLIA-192-CBC -Availablein = default -Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B -IV = 5D5A869BD14CE54264F892A6DD2EC3D5 -Plaintext = 30C81C46A35CE411E5FBC1191A0A52EF -Ciphertext = 37D359C3349836D884E310ADDF68C449 - -Cipher = CAMELLIA-192-CBC -Availablein = default -Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B -IV = 37D359C3349836D884E310ADDF68C449 -Plaintext = F69F2445DF4F9B17AD2B417BE66C3710 -Ciphertext = 01FAAA930B4AB9916E9668E1428C6B08 - - -# CBC-CAMELLIA256.Encrypt and CBC-CAMELLIA256.Decrypt -Cipher = CAMELLIA-256-CBC -Availablein = default -Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 -IV = 000102030405060708090A0B0C0D0E0F -Plaintext = 6BC1BEE22E409F96E93D7E117393172A -Ciphertext = E6CFA35FC02B134A4D2C0B6737AC3EDA - -Cipher = CAMELLIA-256-CBC -Availablein = default -Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 -IV = E6CFA35FC02B134A4D2C0B6737AC3EDA -Plaintext = AE2D8A571E03AC9C9EB76FAC45AF8E51 -Ciphertext = 36CBEB73BD504B4070B1B7DE2B21EB50 - -Cipher = CAMELLIA-256-CBC -Availablein = default -Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 -IV = 36CBEB73BD504B4070B1B7DE2B21EB50 -Plaintext = 30C81C46A35CE411E5FBC1191A0A52EF -Ciphertext = E31A6055297D96CA3330CDF1B1860A83 - -Cipher = CAMELLIA-256-CBC -Availablein = default -Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 -IV = E31A6055297D96CA3330CDF1B1860A83 +IV = 73BED6B8E3C1743B7116E69E22229516 Plaintext = F69F2445DF4F9B17AD2B417BE66C3710 -Ciphertext = 5D563F6D1CCCF236051C0C5C1C58F28F - +Ciphertext = 3FF1CAA1681FAC09120ECA307586E1A7 -# We don't support CFB{1,8}-CAMELLIAxxx.{En,De}crypt -# For all CFB128 encrypts and decrypts, the transformed sequence is -# CAMELLIA-bits-CFB:key:IV/ciphertext':plaintext:ciphertext:encdec -# CFB128-CAMELLIA128.Encrypt -Cipher = CAMELLIA-128-CFB -Availablein = default -Key = 2B7E151628AED2A6ABF7158809CF4F3C -IV = 000102030405060708090A0B0C0D0E0F +Cipher = aES-128-CTR +Key = AE6852F8121067CC4BF7A5765577F39E +IV = 00000030000000000000000000000001 Operation = ENCRYPT -Plaintext = 6BC1BEE22E409F96E93D7E117393172A -Ciphertext = 14F7646187817EB586599146B82BD719 +Plaintext = 53696E676C6520626C6F636B206D7367 +Ciphertext = E4095D4FB7A7B3792D6175A3261311B8 -Cipher = CAMELLIA-128-CFB -Availablein = default -Key = 2B7E151628AED2A6ABF7158809CF4F3C -IV = 14F7646187817EB586599146B82BD719 -Operation = ENCRYPT -Plaintext = AE2D8A571E03AC9C9EB76FAC45AF8E51 -Ciphertext = A53D28BB82DF741103EA4F921A44880B +Cipher = AES-128-GcM +Key = 00000000000000000000000000000000 +IV = 000000000000000000000000 +AAD = +Tag = ab6e47d42cec13bdf53a67b21257bddf +Plaintext = 00000000000000000000000000000000 +Ciphertext = 0388dace60b6a392f328c2b971b2fe78 -Cipher = CAMELLIA-128-CFB -Availablein = default -Key = 2B7E151628AED2A6ABF7158809CF4F3C -IV = A53D28BB82DF741103EA4F921A44880B -Operation = ENCRYPT -Plaintext = 30C81C46A35CE411E5FBC1191A0A52EF -Ciphertext = 9C2157A664626D1DEF9EA420FDE69B96 - -Cipher = CAMELLIA-128-CFB -Availablein = default -Key = 2B7E151628AED2A6ABF7158809CF4F3C -IV = 9C2157A664626D1DEF9EA420FDE69B96 -Operation = ENCRYPT -Plaintext = F69F2445DF4F9B17AD2B417BE66C3710 -Ciphertext = 742A25F0542340C7BAEF24CA8482BB09 - - -# CFB128-CAMELLIA128.Decrypt -Cipher = CAMELLIA-128-CFB -Availablein = default -Key = 2B7E151628AED2A6ABF7158809CF4F3C -IV = 000102030405060708090A0B0C0D0E0F -Operation = DECRYPT -Plaintext = 6BC1BEE22E409F96E93D7E117393172A -Ciphertext = 14F7646187817EB586599146B82BD719 - -Cipher = CAMELLIA-128-CFB -Availablein = default -Key = 2B7E151628AED2A6ABF7158809CF4F3C -IV = 14F7646187817EB586599146B82BD719 -Operation = DECRYPT -Plaintext = AE2D8A571E03AC9C9EB76FAC45AF8E51 -Ciphertext = A53D28BB82DF741103EA4F921A44880B - -Cipher = CAMELLIA-128-CFB -Availablein = default -Key = 2B7E151628AED2A6ABF7158809CF4F3C -IV = A53D28BB82DF741103EA4F921A44880B -Operation = DECRYPT -Plaintext = 30C81C46A35CE411E5FBC1191A0A52EF -Ciphertext = 9C2157A664626D1DEF9EA420FDE69B96 - -Cipher = CAMELLIA-128-CFB -Availablein = default -Key = 2B7E151628AED2A6ABF7158809CF4F3C -IV = 9C2157A664626D1DEF9EA420FDE69B96 -Operation = DECRYPT -Plaintext = F69F2445DF4F9B17AD2B417BE66C3710 -Ciphertext = 742A25F0542340C7BAEF24CA8482BB09 - - -# CFB128-CAMELLIA192.Encrypt -Cipher = CAMELLIA-192-CFB -Availablein = default -Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B -IV = 000102030405060708090A0B0C0D0E0F -Operation = ENCRYPT -Plaintext = 6BC1BEE22E409F96E93D7E117393172A -Ciphertext = C832BB9780677DAA82D9B6860DCD565E - -Cipher = CAMELLIA-192-CFB -Availablein = default -Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B -IV = C832BB9780677DAA82D9B6860DCD565E -Operation = ENCRYPT -Plaintext = AE2D8A571E03AC9C9EB76FAC45AF8E51 -Ciphertext = 86F8491627906D780C7A6D46EA331F98 - -Cipher = CAMELLIA-192-CFB -Availablein = default -Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B -IV = 86F8491627906D780C7A6D46EA331F98 -Operation = ENCRYPT -Plaintext = 30C81C46A35CE411E5FBC1191A0A52EF -Ciphertext = 69511CCE594CF710CB98BB63D7221F01 - -Cipher = CAMELLIA-192-CFB -Availablein = default -Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B -IV = 69511CCE594CF710CB98BB63D7221F01 -Operation = ENCRYPT -Plaintext = F69F2445DF4F9B17AD2B417BE66C3710 -Ciphertext = D5B5378A3ABED55803F25565D8907B84 - - -# CFB128-CAMELLIA192.Decrypt -Cipher = CAMELLIA-192-CFB -Availablein = default -Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B -IV = 000102030405060708090A0B0C0D0E0F -Operation = DECRYPT -Plaintext = 6BC1BEE22E409F96E93D7E117393172A -Ciphertext = C832BB9780677DAA82D9B6860DCD565E - -Cipher = CAMELLIA-192-CFB -Availablein = default -Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B -IV = C832BB9780677DAA82D9B6860DCD565E -Operation = DECRYPT -Plaintext = AE2D8A571E03AC9C9EB76FAC45AF8E51 -Ciphertext = 86F8491627906D780C7A6D46EA331F98 - -Cipher = CAMELLIA-192-CFB -Availablein = default -Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B -IV = 86F8491627906D780C7A6D46EA331F98 -Operation = DECRYPT -Plaintext = 30C81C46A35CE411E5FBC1191A0A52EF -Ciphertext = 69511CCE594CF710CB98BB63D7221F01 - -Cipher = CAMELLIA-192-CFB -Availablein = default -Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B -IV = 69511CCE594CF710CB98BB63D7221F01 -Operation = DECRYPT -Plaintext = F69F2445DF4F9B17AD2B417BE66C3710 -Ciphertext = D5B5378A3ABED55803F25565D8907B84 - - -# CFB128-CAMELLIA256.Encrypt -Cipher = CAMELLIA-256-CFB -Availablein = default -Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 -IV = 000102030405060708090A0B0C0D0E0F -Operation = ENCRYPT -Plaintext = 6BC1BEE22E409F96E93D7E117393172A -Ciphertext = CF6107BB0CEA7D7FB1BD31F5E7B06C93 - -Cipher = CAMELLIA-256-CFB -Availablein = default -Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 -IV = CF6107BB0CEA7D7FB1BD31F5E7B06C93 -Operation = ENCRYPT -Plaintext = AE2D8A571E03AC9C9EB76FAC45AF8E51 -Ciphertext = 89BEDB4CCDD864EA11BA4CBE849B5E2B - -Cipher = CAMELLIA-256-CFB -Availablein = default -Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 -IV = 89BEDB4CCDD864EA11BA4CBE849B5E2B -Operation = ENCRYPT -Plaintext = 30C81C46A35CE411E5FBC1191A0A52EF -Ciphertext = 555FC3F34BDD2D54C62D9E3BF338C1C4 - -Cipher = CAMELLIA-256-CFB -Availablein = default -Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 -IV = 555FC3F34BDD2D54C62D9E3BF338C1C4 -Operation = ENCRYPT -Plaintext = F69F2445DF4F9B17AD2B417BE66C3710 -Ciphertext = 5953ADCE14DB8C7F39F1BD39F359BFFA - - -# CFB128-CAMELLIA256.Decrypt -Cipher = CAMELLIA-256-CFB -Availablein = default -Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 -IV = 000102030405060708090A0B0C0D0E0F -Operation = DECRYPT -Plaintext = 6BC1BEE22E409F96E93D7E117393172A -Ciphertext = CF6107BB0CEA7D7FB1BD31F5E7B06C93 - -Cipher = CAMELLIA-256-CFB -Availablein = default -Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 -IV = CF6107BB0CEA7D7FB1BD31F5E7B06C93 -Operation = DECRYPT -Plaintext = AE2D8A571E03AC9C9EB76FAC45AF8E51 -Ciphertext = 89BEDB4CCDD864EA11BA4CBE849B5E2B - -Cipher = CAMELLIA-256-CFB -Availablein = default -Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 -IV = 89BEDB4CCDD864EA11BA4CBE849B5E2B -Operation = DECRYPT -Plaintext = 30C81C46A35CE411E5FBC1191A0A52EF -Ciphertext = 555FC3F34BDD2D54C62D9E3BF338C1C4 - -Cipher = CAMELLIA-256-CFB -Availablein = default -Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 -IV = 555FC3F34BDD2D54C62D9E3BF338C1C4 -Operation = DECRYPT -Plaintext = F69F2445DF4F9B17AD2B417BE66C3710 -Ciphertext = 5953ADCE14DB8C7F39F1BD39F359BFFA - - -# For all OFB encrypts and decrypts, the transformed sequence is -# CAMELLIA-bits-OFB:key:IV/output':plaintext:ciphertext:encdec -# OFB-CAMELLIA128.Encrypt -Cipher = CAMELLIA-128-OFB -Availablein = default -Key = 2B7E151628AED2A6ABF7158809CF4F3C -IV = 000102030405060708090A0B0C0D0E0F -Operation = ENCRYPT -Plaintext = 6BC1BEE22E409F96E93D7E117393172A -Ciphertext = 14F7646187817EB586599146B82BD719 - -Cipher = CAMELLIA-128-OFB -Availablein = default -Key = 2B7E151628AED2A6ABF7158809CF4F3C -IV = 50FE67CC996D32B6DA0937E99BAFEC60 -Operation = ENCRYPT -Plaintext = AE2D8A571E03AC9C9EB76FAC45AF8E51 -Ciphertext = 25623DB569CA51E01482649977E28D84 - -Cipher = CAMELLIA-128-OFB -Availablein = default -Key = 2B7E151628AED2A6ABF7158809CF4F3C -IV = D9A4DADA0892239F6B8B3D7680E15674 -Operation = ENCRYPT -Plaintext = 30C81C46A35CE411E5FBC1191A0A52EF -Ciphertext = C776634A60729DC657D12B9FCA801E98 - -Cipher = CAMELLIA-128-OFB -Availablein = default -Key = 2B7E151628AED2A6ABF7158809CF4F3C -IV = A78819583F0308E7A6BF36B1386ABF23 -Operation = ENCRYPT -Plaintext = F69F2445DF4F9B17AD2B417BE66C3710 -Ciphertext = D776379BE0E50825E681DA1A4C980E8E - - -# OFB-CAMELLIA128.Decrypt -Cipher = CAMELLIA-128-OFB -Availablein = default -Key = 2B7E151628AED2A6ABF7158809CF4F3C -IV = 000102030405060708090A0B0C0D0E0F -Operation = DECRYPT -Plaintext = 6BC1BEE22E409F96E93D7E117393172A -Ciphertext = 14F7646187817EB586599146B82BD719 - -Cipher = CAMELLIA-128-OFB -Availablein = default -Key = 2B7E151628AED2A6ABF7158809CF4F3C -IV = 50FE67CC996D32B6DA0937E99BAFEC60 -Operation = DECRYPT -Plaintext = AE2D8A571E03AC9C9EB76FAC45AF8E51 -Ciphertext = 25623DB569CA51E01482649977E28D84 - -Cipher = CAMELLIA-128-OFB -Availablein = default -Key = 2B7E151628AED2A6ABF7158809CF4F3C -IV = D9A4DADA0892239F6B8B3D7680E15674 -Operation = DECRYPT -Plaintext = 30C81C46A35CE411E5FBC1191A0A52EF -Ciphertext = C776634A60729DC657D12B9FCA801E98 - -Cipher = CAMELLIA-128-OFB -Availablein = default -Key = 2B7E151628AED2A6ABF7158809CF4F3C -IV = A78819583F0308E7A6BF36B1386ABF23 -Operation = DECRYPT -Plaintext = F69F2445DF4F9B17AD2B417BE66C3710 -Ciphertext = D776379BE0E50825E681DA1A4C980E8E - - -# OFB-CAMELLIA192.Encrypt -Cipher = CAMELLIA-192-OFB -Availablein = default -Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B -IV = 000102030405060708090A0B0C0D0E0F -Operation = ENCRYPT -Plaintext = 6BC1BEE22E409F96E93D7E117393172A -Ciphertext = C832BB9780677DAA82D9B6860DCD565E - -Cipher = CAMELLIA-192-OFB -Availablein = default -Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B -IV = A609B38DF3B1133DDDFF2718BA09565E -Operation = ENCRYPT -Plaintext = AE2D8A571E03AC9C9EB76FAC45AF8E51 -Ciphertext = 8ECEB7D0350D72C7F78562AEBDF99339 - -Cipher = CAMELLIA-192-OFB -Availablein = default -Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B -IV = 52EF01DA52602FE0975F78AC84BF8A50 -Operation = ENCRYPT -Plaintext = 30C81C46A35CE411E5FBC1191A0A52EF -Ciphertext = BDD62DBBB9700846C53B507F544696F0 - -Cipher = CAMELLIA-192-OFB -Availablein = default -Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B -IV = BD5286AC63AABD7EB067AC54B553F71D -Operation = ENCRYPT -Plaintext = F69F2445DF4F9B17AD2B417BE66C3710 -Ciphertext = E28014E046B802F385C4C2E13EAD4A72 - - -# OFB-CAMELLIA192.Decrypt -Cipher = CAMELLIA-192-OFB -Availablein = default -Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B -IV = 000102030405060708090A0B0C0D0E0F -Operation = DECRYPT -Plaintext = 6BC1BEE22E409F96E93D7E117393172A -Ciphertext = C832BB9780677DAA82D9B6860DCD565E - -Cipher = CAMELLIA-192-OFB -Availablein = default -Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B -IV = A609B38DF3B1133DDDFF2718BA09565E -Operation = DECRYPT -Plaintext = AE2D8A571E03AC9C9EB76FAC45AF8E51 -Ciphertext = 8ECEB7D0350D72C7F78562AEBDF99339 - -Cipher = CAMELLIA-192-OFB -Availablein = default -Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B -IV = 52EF01DA52602FE0975F78AC84BF8A50 -Operation = DECRYPT -Plaintext = 30C81C46A35CE411E5FBC1191A0A52EF -Ciphertext = BDD62DBBB9700846C53B507F544696F0 - -Cipher = CAMELLIA-192-OFB -Availablein = default -Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B -IV = BD5286AC63AABD7EB067AC54B553F71D -Operation = DECRYPT -Plaintext = F69F2445DF4F9B17AD2B417BE66C3710 -Ciphertext = E28014E046B802F385C4C2E13EAD4A72 - - -# OFB-CAMELLIA256.Encrypt -Cipher = CAMELLIA-256-OFB -Availablein = default -Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 -IV = 000102030405060708090A0B0C0D0E0F -Operation = ENCRYPT -Plaintext = 6BC1BEE22E409F96E93D7E117393172A -Ciphertext = CF6107BB0CEA7D7FB1BD31F5E7B06C93 - -Cipher = CAMELLIA-256-OFB -Availablein = default -Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 -IV = B7BF3A5DF43989DD97F0FA97EBCE2F4A -Operation = ENCRYPT -Plaintext = AE2D8A571E03AC9C9EB76FAC45AF8E51 -Ciphertext = 127AD97E8E3994E4820027D7BA109368 - -Cipher = CAMELLIA-256-OFB -Availablein = default -Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 -IV = E1C656305ED1A7A6563805746FE03EDC -Operation = ENCRYPT -Plaintext = 30C81C46A35CE411E5FBC1191A0A52EF -Ciphertext = 6BFF6265A6A6B7A535BC65A80B17214E - -Cipher = CAMELLIA-256-OFB -Availablein = default -Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 -IV = 41635BE625B48AFC1666DD42A09D96E7 -Operation = ENCRYPT -Plaintext = F69F2445DF4F9B17AD2B417BE66C3710 -Ciphertext = 0A4A0404E26AA78A27CB271E8BF3CF20 - - -# OFB-CAMELLIA256.Decrypt -Cipher = CAMELLIA-256-OFB -Availablein = default -Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 -IV = 000102030405060708090A0B0C0D0E0F -Operation = DECRYPT -Plaintext = 6BC1BEE22E409F96E93D7E117393172A -Ciphertext = CF6107BB0CEA7D7FB1BD31F5E7B06C93 - -Cipher = CAMELLIA-256-OFB -Availablein = default -Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 -IV = B7BF3A5DF43989DD97F0FA97EBCE2F4A -Operation = DECRYPT -Plaintext = AE2D8A571E03AC9C9EB76FAC45AF8E51 -Ciphertext = 127AD97E8E3994E4820027D7BA109368 - -Cipher = CAMELLIA-256-OFB -Availablein = default -Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 -IV = E1C656305ED1A7A6563805746FE03EDC -Operation = DECRYPT -Plaintext = 30C81C46A35CE411E5FBC1191A0A52EF -Ciphertext = 6BFF6265A6A6B7A535BC65A80B17214E - -Cipher = CAMELLIA-256-OFB -Availablein = default -Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 -IV = 41635BE625B48AFC1666DD42A09D96E7 -Operation = DECRYPT -Plaintext = F69F2445DF4F9B17AD2B417BE66C3710 -Ciphertext = 0A4A0404E26AA78A27CB271E8BF3CF20 - - -# Camellia test vectors from RFC5528 -Cipher = CAMELLIA-128-CTR -Availablein = default -Key = AE6852F8121067CC4BF7A5765577F39E -IV = 00000030000000000000000000000001 -Operation = ENCRYPT -Plaintext = 53696E676C6520626C6F636B206D7367 -Ciphertext = D09DC29A8214619A20877C76DB1F0B3F - -Cipher = CAMELLIA-128-CTR -Availablein = default -Key = 7E24067817FAE0D743D6CE1F32539163 -IV = 006CB6DBC0543B59DA48D90B00000001 -Operation = ENCRYPT -Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F -Ciphertext = DBF3C78DC08396D4DA7C907765BBCB442B8E8E0F31F0DCA72C7417E35360E048 - -Cipher = CAMELLIA-128-CTR -Availablein = default -Key = 7691BE035E5020A8AC6E618529F9A0DC -IV = 00E0017B27777F3F4A1786F000000001 -Operation = ENCRYPT -Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F20212223 -Ciphertext = B19D1FCDCB75EB882F849CE24D85CF739CE64B2B5C9D73F14F2D5D9DCE9889CDDF508696 - -Cipher = CAMELLIA-192-CTR -Availablein = default -Key = 16AF5B145FC9F579C175F93E3BFB0EED863D06CCFDB78515 -IV = 0000004836733C147D6D93CB00000001 -Operation = ENCRYPT -Plaintext = 53696E676C6520626C6F636B206D7367 -Ciphertext = 2379399E8A8D2B2B16702FC78B9E9696 - -Cipher = CAMELLIA-192-CTR -Availablein = default -Key = 7C5CB2401B3DC33C19E7340819E0F69C678C3DB8E6F6A91A -IV = 0096B03B020C6EADC2CB500D00000001 -Operation = ENCRYPT -Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F -Ciphertext = 7DEF34F7A5D0E415674B7FFCAE67C75DD018B86FF23051E056392A99F35A4CED - -Cipher = CAMELLIA-192-CTR -Availablein = default -Key = 02BF391EE8ECB159B959617B0965279BF59B60A786D3E0FE -IV = 0007BDFD5CBD60278DCC091200000001 -Operation = ENCRYPT -Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F20212223 -Ciphertext = 5710E556E1487A20B5AC0E73F19E4E7876F37FDC91B1EF4D4DADE8E666A64D0ED557AB57 - -Cipher = CAMELLIA-256-CTR -Availablein = default -Key = 776BEFF2851DB06F4C8A0542C8696F6C6A81AF1EEC96B4D37FC1D689E6C1C104 -IV = 00000060DB5672C97AA8F0B200000001 -Operation = ENCRYPT -Plaintext = 53696E676C6520626C6F636B206D7367 -Ciphertext = 3401F9C8247EFFCEBD6994714C1BBB11 - -Cipher = CAMELLIA-256-CTR -Availablein = default -Key = F6D66D6BD52D59BB0796365879EFF886C66DD51A5B6A99744B50590C87A23884 -IV = 00FAAC24C1585EF15A43D87500000001 -Operation = ENCRYPT -Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F -Ciphertext = D6C30392246F7808A83C2B22A8839E45E51CD48A1CDF406EBC9CC2D3AB834108 - -Cipher = CAMELLIA-256-CTR -Availablein = default -Key = FF7A617CE69148E4F1726E2F43581DE2AA62D9F805532EDFF1EED687FB54153D -IV = 001CC5B751A51D70A1C1114800000001 -Operation = ENCRYPT -Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F20212223 -Ciphertext = A4DA23FCE6A5FFAA6D64AE9A0652A42CD161A34B65F9679F75C01F101F71276F15EF0D8D - -Title = ARIA test vectors from RFC5794 (and others) - -Cipher = ARIA-128-ECB -Availablein = default -Key = 000102030405060708090a0b0c0d0e0f -Plaintext = 00112233445566778899aabbccddeeff -Ciphertext = d718fbd6ab644c739da95f3be6451778 - -Cipher = ARIA-192-ECB -Availablein = default -Key = 000102030405060708090a0b0c0d0e0f1011121314151617 -Plaintext = 00112233445566778899aabbccddeeff -Ciphertext = 26449c1805dbe7aa25a468ce263a9e79 - -Cipher = ARIA-256-ECB -Availablein = default -Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f -Plaintext = 00112233445566778899aabbccddeeff -Ciphertext = f92bd7c79fb72e2f2b8f80c1972d24fc - -# Additional ARIA mode vectors from http://210.104.33.10/ARIA/doc/ARIA-testvector-e.pdf -Cipher = ARIA-128-ECB -Availablein = default -Key = 00112233445566778899aabbccddeeff -Plaintext = 11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd -Ciphertext = c6ecd08e22c30abdb215cf74e2075e6e29ccaac63448708d331b2f816c51b17d9e133d1528dbf0af5787c7f3a3f5c2bf6b6f345907a3055612ce072ff54de7d788424da6e8ccfe8172b391be499354165665ba7864917000a6eeb2ecb4a698edfc7887e7f556377614ab0a282293e6d884dbb84206cdb16ed1754e77a1f243fd086953f752cc1e46c7c794ae85537dcaec8dd721f55c93b6edfe2adea43873e8 - -Cipher = ARIA-128-CBC -Availablein = default -Key = 00112233445566778899aabbccddeeff -IV = 0f1e2d3c4b5a69788796a5b4c3d2e1f0 -Plaintext = 11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd -Ciphertext = 49d61860b14909109cef0d22a9268134fadf9fb23151e9645fba75018bdb1538b53334634bbf7d4cd4b5377033060c155fe3948ca75de1031e1d85619e0ad61eb419a866b3c2dbfd10a4ed18b22149f75897f0b8668b0c1c542c687778835fb7cd46e45f85eaa7072437dd9fa6793d6f8d4ccefc4eb1ac641ac1bd30b18c6d64c49bca137eb21c2e04da62712ca2b4f540c57112c38791852cfac7a5d19ed83a - -Cipher = ARIA-128-CFB -Availablein = default -Key = 00112233445566778899aabbccddeeff -IV = 0f1e2d3c4b5a69788796a5b4c3d2e1f0 -Plaintext = 11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd -Ciphertext = 3720e53ba7d615383406b09f0a05a200c07c21e6370f413a5d132500a68285017c61b434c7b7ca9685a51071861e4d4bb873b599b479e2d573dddeafba89f812ac6a9e44d554078eb3be94839db4b33da3f59c063123a7ef6f20e10579fa4fd239100ca73b52d4fcafeadee73f139f78f9b7614c2b3b9dbe010f87db06a89a9435f79ce8121431371f4e87b984e0230c22a6dacb32fc42dcc6accef33285bf11 - -Cipher = ARIA-128-CFB8 -Availablein = default -Key = 00112233445566778899aabbccddeeff -IV = 0f1e2d3c4b5a69788796a5b4c3d2e1f0 -Plaintext = 11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd -Ciphertext = 373c8f6a965599ec785cc8f8149f6c81b632ccb8e0c6eb6a9707ae52c59257a41f94701c1096933127a90195ed0c8e98690547572423bb45c3d70e4a18ee56b967c10e000ba4df5fba7c404134a343d8375d04b151d161ef83417fe1748447d30a6723c406733df7d18aa39a20752d2381942e244811bb97f72eae446b1815aa690cd1b1adcbd007c0088ecdc91cb2e2caf0e11e72459878137eea64ac62a9a1 - -Cipher = ARIA-128-OFB -Availablein = default -Key = 00112233445566778899aabbccddeeff -IV = 0f1e2d3c4b5a69788796a5b4c3d2e1f0 -Plaintext = 11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd -Ciphertext = 3720e53ba7d615383406b09f0a05a2000063063f0560083483faeb041c8adecef30cf80cefb002a0d280759168ec01db3d49f61aced260bd43eec0a2731730eec6fa4f2304319cf8ccac2d7be7833e4f8ae6ce967012c1c6badc5d28e7e4144f6bf5cebe01253ee202afce4bc61f28dec069a6f16f6c8a7dd2afae44148f6ff4d0029d5c607b5fa6b8c8a6301cde5c7033565cd0b8f0974ab490b236197ba04a - -Cipher = ARIA-128-CTR -Availablein = default -Key = 00112233445566778899aabbccddeeff -IV = 00000000000000000000000000000000 -Plaintext = 11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd -Ciphertext = ac5d7de805a0bf1c57c854501af60fa11497e2a34519dea1569e91e5b5ccae2ff3bfa1bf975f4571f48be191613546c3911163c085f871f0e7ae5f2a085b81851c2a3ddf20ecb8fa51901aec8ee4ba32a35dab67bb72cd9140ad188a967ac0fbbdfa94ea6cce47dcf8525ab5a814cfeb2bb60ee2b126e2d9d847c1a9e96f9019e3e6a7fe40d3829afb73db1cc245646addb62d9b907baaafbe46a73dbc131d3d - -Cipher = ARIA-192-ECB -Availablein = default -Key = 00112233445566778899aabbccddeeff0011223344556677 -Plaintext = 11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd -Ciphertext = 8d1470625f59ebacb0e55b534b3e462b5f23d33bff78f46c3c15911f4a21809aaccad80b4bda915aa9dae6bcebe06a6c83f77fd5391acfe61de2f646b5d447edbfd5bb49b12fbb9145b227895a757b2af1f7188734863d7b8b6ede5a5b2f06a0a233c8523d2db778fb31b0e311f32700152f33861e9d040c83b5eb40cd88ea49975709dc629365a189f78a3ec40345fc6a5a307a8f9a4413091e007eca5645a0 - -Cipher = ARIA-192-CBC -Availablein = default -Key = 00112233445566778899aabbccddeeff0011223344556677 -IV = 0f1e2d3c4b5a69788796a5b4c3d2e1f0 -Plaintext = 11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd -Ciphertext = afe6cf23974b533c672a826264ea785f4e4f7f780dc7f3f1e0962b80902386d514e9c3e77259de92dd1102ffab086c1ea52a71260db5920a83295c25320e421147ca45d532f327b856ea947cd2196ae2e040826548b4c891b0ed0ca6e714dbc4631998d548110d666b3d54c2a091955c6f05beb4f62309368696c9791fc4c551564a2637f194346ec45fbca6c72a5b4612e208d531d6c34cc5c64eac6bd0cf8c - -Cipher = ARIA-192-CFB -Availablein = default -Key = 00112233445566778899aabbccddeeff0011223344556677 -IV = 0f1e2d3c4b5a69788796a5b4c3d2e1f0 -Plaintext = 11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd -Ciphertext = 4171f7192bf4495494d2736129640f5c4d87a9a213664c9448477c6ecc2013598d9766952dd8c3868f17e36ef66fd84bfa45d1593d2d6ee3ea2115047d710d4fb66187caa3a315b3c8ea2d313962edcfe5a3e2028d5ba9a09fd5c65c19d3440e477f0cab0628ec6902c73ee02f1afee9f80115be7b9df82d1e28228e28581a20560e195cbb9e2b327bf56fd2d0ae5502e42c13e9b4015d4da42dc859252e7da4 - -Cipher = ARIA-192-CFB8 -Availablein = default -Key = 00112233445566778899aabbccddeeff0011223344556677 -IV = 0f1e2d3c4b5a69788796a5b4c3d2e1f0 -Plaintext = 11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd -Ciphertext = 411d3b4f57f705aa4d13c46e2cf426af7c8c916ed7923d889f0047bbf11471b6d54f8757ef519339105be3cb69babb976a57d5631fc23cc3051fe9d36e8b8e27a2b2c0c4d31928ccbf30ea8239b46ba1b77f6198e7ecd2ce27b35958148e826f06aaf385bd30362ff141583e7c1d8924d44d36a1133094074631e18adafa9d2e55de98f6895c89d4266ebd33f3d4be5153a96fa12132ece2e81e66e55baa7ade - -Cipher = ARIA-192-OFB -Availablein = default -Key = 00112233445566778899aabbccddeeff0011223344556677 -IV = 0f1e2d3c4b5a69788796a5b4c3d2e1f0 -Plaintext = 11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd -Ciphertext = 4171f7192bf4495494d2736129640f5cc224d26d364b5a06ddde13d0f1e74faa846de354c63cda77469d1a2d425c47ff41734c71b3fa1fcdc11e0b2de22bfeed54898e233df652c75ae136e61de6524e62b3f806fb2e8e616eb410a1b9500537e327ffb04f19f7f82fde2b122100261f81b82723bf936be7beaaf3067d1c036001f1ade71422268d274d7dc6c6ae1970b27a5f2c2f39c1d241fe8cac5ccd74e9 - -Cipher = ARIA-192-CTR -Availablein = default -Key = 00112233445566778899aabbccddeeff0011223344556677 -IV = 00000000000000000000000000000000 -Plaintext = 11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd -Ciphertext = 08625ca8fe569c19ba7af3760a6ed1cef4d199263e999dde14082dbba7560b79a4c6b456b8707dce751f9854f18893dfdb3f4e5afa539733e6f1e70b98ba37891f8f81e95df8efc26c7ce043504cb18958b865e4e316cd2aa1c97f31bf23dc046ef326b95a692a191ba0f2a41c5fe9ae070f236ff7078e703b42666caafbdd20bad74ac4c20c0f46c7ca24c151716575c947da16c90cfe1bf217a41cfebe7531 - -Cipher = ARIA-256-ECB -Availablein = default -Key = 00112233445566778899aabbccddeeff00112233445566778899aabbccddeeff -Plaintext = 11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd -Ciphertext = 58a875e6044ad7fffa4f58420f7f442d8e191016f28e79aefc01e204773280d7018e5f7a938ec30711719953bae86542cd7ebc752474c1a5f6eaaace2a7e29462ee7dfa5afdb84177ead95ccd4b4bb6e1ed17b9534cff0a5fc2941429cfee2ee49c7adbeb7e9d1b0d2a8531d942079596a27ed79f5b1dd13ecd604b07a48885a3afa0627a0e4e60a3c703af292f1baa77b702f16c54aa74bc727ea95c7468b00 - -Cipher = ARIA-256-CBC -Availablein = default -Key = 00112233445566778899aabbccddeeff00112233445566778899aabbccddeeff -IV = 0f1e2d3c4b5a69788796a5b4c3d2e1f0 -Plaintext = 11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd -Ciphertext = 523a8a806ae621f155fdd28dbc34e1ab7b9b42432ad8b2efb96e23b13f0a6e52f36185d50ad002c5f601bee5493f118b243ee2e313642bffc3902e7b2efd9a12fa682edd2d23c8b9c5f043c18b17c1ec4b5867918270fbec1027c19ed6af833da5d620994668ca22f599791d292dd6273b2959082aafb7a996167cce1eec5f0cfd15f610d87e2dda9ba68ce1260ca54b222491418374294e7909b1e8551cd8de - -Cipher = ARIA-256-CFB -Availablein = default -Key = 00112233445566778899aabbccddeeff00112233445566778899aabbccddeeff -IV = 0f1e2d3c4b5a69788796a5b4c3d2e1f0 -Plaintext = 11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd -Ciphertext = 26834705b0f2c0e2588d4a7f09009635f28bb93d8c31f870ec1e0bdb082b66fa402dd9c202be300c4517d196b14d4ce11dce97f7aaba54341b0d872cc9b63753a3e8556a14be6f7b3e27e3cfc39caf80f2a355aa50dc83c09c7b11828694f8e4aa726c528976b53f2c877f4991a3a8d28adb63bd751846ffb2350265e179d4990753ae8485ff9b4133ddad5875b84a90cbcfa62a045d726df71b6bda0eeca0be - -Cipher = ARIA-256-CFB8 -Availablein = default -Key = 00112233445566778899aabbccddeeff00112233445566778899aabbccddeeff -IV = 0f1e2d3c4b5a69788796a5b4c3d2e1f0 -Plaintext = 11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd -Ciphertext = 26baa33651e1f66434fec88ef27fd2b9a79e246dd89a3ffa00e8bdb37155433e6c24bd0b87d9a85baa9f485ccb984f5ec24d6a3ef5e3c81396177f039cf580dfdb55d6e1c47a28921dfe369e12fd357b289ad3a5544e1c1bd616d454db9c5f91f603373f29d5b2ed1b4b51de80f28537bbd43d5e3b5dd071dc91153cbbe732dfc325821b06ed8acaae656dcf2da9f13e4f29db671476f1e644ff06d9b67d6bd4 - -Cipher = ARIA-256-OFB -Availablein = default -Key = 00112233445566778899aabbccddeeff00112233445566778899aabbccddeeff -IV = 0f1e2d3c4b5a69788796a5b4c3d2e1f0 -Plaintext = 11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd -Ciphertext = 26834705b0f2c0e2588d4a7f0900963584c256815c4292b59f8d3f966a75b52345b4f5f98c785d3f368a8d5ff89b7f950ceab3cd63773c2621d652b8ef98b4196afb2c2b30496bc5b7d9e7f9084f9d855f63a511751c8909e7a6deadbe0a67a4fb89383ca5d209c6f66f793fc471195c476fb9c1eab2ac91e680e454b4f3ed9a67fb52f09c29b965b23cfa6f3f6bbb2a86c6cdbaa2857bf2486f543231892a52 - -Cipher = ARIA-256-CTR -Availablein = default -Key = 00112233445566778899aabbccddeeff00112233445566778899aabbccddeeff -IV = 00000000000000000000000000000000 -Plaintext = 11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd -Ciphertext = 30026c329666141721178b99c0a1f1b2f06940253f7b3089e2a30ea86aa3c88f5940f05ad7ee41d71347bb7261e348f18360473fdf7d4e7723bffb4411cc13f6cdd89f3bc7b9c768145022c7a74f14d7c305cd012a10f16050c23f1ae5c23f45998d13fbaa041e51619577e0772764896a5d4516d8ffceb3bf7e05f613edd9a60cdcedaff9cfcaf4e00d445a54334f73ab2cad944e51d266548e61c6eb0aa1cd - -Title = ARIA GCM test vectors from RFC8269 - -Cipher = ARIA-128-GCM -Availablein = default -Key = e91e5e75da65554a48181f3846349562 -IV = 000020e8f5eb00000000315e -AAD = 8008315ebf2e6fe020e8f5eb -Tag = 5abace3f37f5a736f4be984bbffbedc1 -Plaintext = f57af5fd4ae19562976ec57a5a7ad55a5af5c5e5c5fdf5c55ad57a4a7272d57262e9729566ed66e97ac54a4a5a7ad5e15ae5fdd5fd5ac5d56ae56ad5c572d54ae54ac55a956afd6aed5a4ac562957a9516991691d572fd14e97ae962ed7a9f4a955af572e162f57a956666e17ae1f54a95f566d54a66e16e4afd6a9f7ae1c5c55ae5d56afde916c5e94a6ec56695e14afde1148416e94ad57ac5146ed59d1cc5 -Ciphertext = 4d8a9a0675550c704b17d8c9ddc81a5cd6f7da34f2fe1b3db7cb3dfb9697102ea0f3c1fc2dbc873d44bceeae8e4442974ba21ff6789d3272613fb9631a7cf3f14bacbeb421633a90ffbe58c2fa6bdca534f10d0de0502ce1d531b6336e58878278531e5c22bc6c85bbd784d78d9e680aa19031aaf89101d669d7a3965c1f7e16229d7463e0535f4e253f5d18187d40b8ae0f564bd970b5e7e2adfb211e89a953 - -Cipher = ARIA-256-GCM -Availablein = default -Key = 0c5ffd37a11edc42c325287fc0604f2e3e8cd5671a00fe3216aa5eb105783b54 -IV = 000020e8f5eb00000000315e -AAD = 8008315ebf2e6fe020e8f5eb -Tag = e210d6ced2cf430ff841472915e7ef48 -Plaintext = f57af5fd4ae19562976ec57a5a7ad55a5af5c5e5c5fdf5c55ad57a4a7272d57262e9729566ed66e97ac54a4a5a7ad5e15ae5fdd5fd5ac5d56ae56ad5c572d54ae54ac55a956afd6aed5a4ac562957a9516991691d572fd14e97ae962ed7a9f4a955af572e162f57a956666e17ae1f54a95f566d54a66e16e4afd6a9f7ae1c5c55ae5d56afde916c5e94a6ec56695e14afde1148416e94ad57ac5146ed59d1cc5 -Ciphertext = 6f9e4bcbc8c85fc0128fb1e4a0a20cb9932ff74581f54fc013dd054b19f99371425b352d97d3f337b90b63d1b082adeeea9d2d7391897d591b985e55fb50cb5350cf7d38dc27dda127c078a149c8eb98083d66363a46e3726af217d3a00275ad5bf772c7610ea4c23006878f0ee69a8397703169a419303f40b72e4573714d19e2697df61e7c7252e5abc6bade876ac4961bfac4d5e867afca351a48aed52822 - -Title = ARIA GCM self-generated test vectors - -Cipher = ARIA-128-GCM -Availablein = default -Key = e91e5e75da65554a48181f3846349562 -# Shorter than default IV -IV = 0001020304 -AAD = 8008315ebf2e6fe020e8f5eb -Tag = ebaa2645bb154542117ee46031aa176e -Plaintext = f57af5fd4ae19562976ec57a5a7ad55a5af5c5e5c5fdf5c55ad57a4a7272d57262e9729566ed66e97ac54a4a5a7ad5e15ae5fdd5fd5ac5d56ae56ad5c572d54ae54ac55a956afd6aed5a4ac562957a9516991691d572fd14e97ae962ed7a9f4a955af572e162f57a956666e17ae1f54a95f566d54a66e16e4afd6a9f7ae1c5c55ae5d56afde916c5e94a6ec56695e14afde1148416e94ad57ac5146ed59d1cc5 -Ciphertext = 1723ccfc0ed44a12520473cfeb63bc933cd450a943f5f1cba78e19d72f80cc102acc51f2459a06cf6435182b8ddd451f83e13479efe5ec7dfbf16229f4017920fb41457a9b6fe1a401b30b2f332d827ae2f86e962326927c1ed8bfedac1f7a00ddde63bd392a8f28a488ba5974689f8d15b9b1739fb50aae0ff244026ec72064003c621b33ffc8086b0a97eefb70604a2826f6499f6eb12d67a0da03fc8e1482 - -Cipher = ARIA-128-GCM -Availablein = default -Key = e91e5e75da65554a48181f3846349562 -# Longer than default IV -IV = 000102030405060708090a0b0c0d0e0f -AAD = 8008315ebf2e6fe020e8f5eb -Tag = 61f7f44c7da3c60195b29ae0b46051a4 -Plaintext = f57af5fd4ae19562976ec57a5a7ad55a5af5c5e5c5fdf5c55ad57a4a7272d57262e9729566ed66e97ac54a4a5a7ad5e15ae5fdd5fd5ac5d56ae56ad5c572d54ae54ac55a956afd6aed5a4ac562957a9516991691d572fd14e97ae962ed7a9f4a955af572e162f57a956666e17ae1f54a95f566d54a66e16e4afd6a9f7ae1c5c55ae5d56afde916c5e94a6ec56695e14afde1148416e94ad57ac5146ed59d1cc5 -Ciphertext = 0d3e98fcaf7a2c4fe9198d66add90d113e5e0ff47598c40a4bf501960d935a4156c9a4d46c9358a608e10a16479a4247c9ab9bb4a02809e3eac3571b832590fe2ca3e2d545741e36282d96c041fc7d39a46ed60214c2c0ec70f27768dfea4f9563b5d5c2ac33b1368a78f2908f5daf942433fec6ab588f09e908e95cc8dfa85d1a0dfd5835dc14e148323230c63eedc99a9ce942214cb3768b97b821d613629f - -Cipher = ARIA-128-GCM -Availablein = default -Key = e91e5e75da65554a48181f3846349562 -# Extra long IV -IV = 000102030405060708090a0b0c0d0e0f1011 -AAD = 8008315ebf2e6fe020e8f5eb -Tag = c8b31ab6c2ddccab06b76af4e56e664e -Plaintext = f57af5fd4ae19562976ec57a5a7ad55a5af5c5e5c5fdf5c55ad57a4a7272d57262e9729566ed66e97ac54a4a5a7ad5e15ae5fdd5fd5ac5d56ae56ad5c572d54ae54ac55a956afd6aed5a4ac562957a9516991691d572fd14e97ae962ed7a9f4a955af572e162f57a956666e17ae1f54a95f566d54a66e16e4afd6a9f7ae1c5c55ae5d56afde916c5e94a6ec56695e14afde1148416e94ad57ac5146ed59d1cc5 -Ciphertext = 616a7bce24206501082cef7267c09a4affa54f8f82eb7fb2cdebdcaab4b6ab05c37e891c2d0fc90d15c5fb684247625c8bc0befad86896ae1c8f5a8506954caba4e13df0a0eb23853d4474e7f3b2c57bb398456a24d198e14566bce8a5f8d3bcdb12994d2fdc0f5cf19aeff990c1fe119e01f9fcc86757b1d43a9accf7b2f913c2208a46c1967f403867f89b46ffe96864c63f042265806ea5270e0dddd0e8dd - - -Title = ARIA CCM test vectors from IETF draft-ietf-avtcore-aria-srtp-02 - -# 16-byte Tag - -Cipher = ARIA-128-CCM -Availablein = default -Key = 974bee725d44fc3992267b284c3c6750 -IV = 000020e8f5eb00000000315e -AAD = 8008315ebf2e6fe020e8f5eb -Tag = 40f04b6467e300f6b336aedf9df4185b -Plaintext = f57af5fd4ae19562976ec57a5a7ad55a5af5c5e5c5fdf5c55ad57a4a7272d57262e9729566ed66e97ac54a4a5a7ad5e15ae5fdd5fd5ac5d56ae56ad5c572d54ae54ac55a956afd6aed5a4ac562957a9516991691d572fd14e97ae962ed7a9f4a955af572e162f57a956666e17ae1f54a95f566d54a66e16e4afd6a9f7ae1c5c55ae5d56afde916c5e94a6ec56695e14afde1148416e94ad57ac5146ed59d1cc5 -Ciphertext = 621e408a2e455505b39f704dcbac4307daabbd6d670abc4e42f2fd2fca263f094f4683e6fb0b10c5093d42b69dce0ba546520e7c4400975713f3bde93ef131160b9cbcd6df78a1502be7c6ea8d395b9ed0078819c3105c0ab92cb67b16ba51bb1f53508738bf7a37c9a905439b88b7af9d51a407916fdfea8d43bf253721846dc1671391225fc58d9d0693c8ade6a4ffb034ee6543dd4e651b7a084eae60f855 - -Cipher = ARIA-256-CCM -Availablein = default -Key = 0c5ffd37a11edc42c325287fc0604f2e3e8cd5671a00fe3216aa5eb105783b54 -IV = 000020e8f5eb00000000315e -AAD = 8008315ebf2e6fe020e8f5eb -Tag = 87b6bd222c55365a9c7d0b215b77ea41 -Plaintext = f57af5fd4ae19562976ec57a5a7ad55a5af5c5e5c5fdf5c55ad57a4a7272d57262e9729566ed66e97ac54a4a5a7ad5e15ae5fdd5fd5ac5d56ae56ad5c572d54ae54ac55a956afd6aed5a4ac562957a9516991691d572fd14e97ae962ed7a9f4a955af572e162f57a956666e17ae1f54a95f566d54a66e16e4afd6a9f7ae1c5c55ae5d56afde916c5e94a6ec56695e14afde1148416e94ad57ac5146ed59d1cc5 -Ciphertext = ff78128ee18ee3cb9fb0d20726a017ff67fbd09d3a4c38aa32f6d306d3fdda378e459b83ed005507449d6cd981a4c1e3ff4193870c276ef09b6317a01a2283206ae4b4be0d0b235422c8abb00122410656b75e1ffc7fb49c0d0c5d6169aa7623610579968037aee8e83fc26264ea866590fd620aa3c0a5f323d953aa7f8defb0d0d60ab5a9de44dbaf8eae74ea3ab5f30594154f405fd630aa4c4d5603efdfa1 - -# 8-byte Tag - -Cipher = ARIA-128-CCM -Availablein = default -Key = 974bee725d44fc3992267b284c3c6750 -IV = 000020e8f5eb00000000315e -AAD = 8008315ebf2e6fe020e8f5eb -Tag = dd2282c93a67fe4b -Plaintext = f57af5fd4ae19562976ec57a5a7ad55a5af5c5e5c5fdf5c55ad57a4a7272d57262e9729566ed66e97ac54a4a5a7ad5e15ae5fdd5fd5ac5d56ae56ad5c572d54ae54ac55a956afd6aed5a4ac562957a9516991691d572fd14e97ae962ed7a9f4a955af572e162f57a956666e17ae1f54a95f566d54a66e16e4afd6a9f7ae1c5c55ae5d56afde916c5e94a6ec56695e14afde1148416e94ad57ac5146ed59d1cc5 -Ciphertext = 621e408a2e455505b39f704dcbac4307daabbd6d670abc4e42f2fd2fca263f094f4683e6fb0b10c5093d42b69dce0ba546520e7c4400975713f3bde93ef131160b9cbcd6df78a1502be7c6ea8d395b9ed0078819c3105c0ab92cb67b16ba51bb1f53508738bf7a37c9a905439b88b7af9d51a407916fdfea8d43bf253721846dc1671391225fc58d9d0693c8ade6a4ffb034ee6543dd4e651b7a084eae60f855 - -Cipher = ARIA-256-CCM -Availablein = default -Key = 0c5ffd37a11edc42c325287fc0604f2e3e8cd5671a00fe3216aa5eb105783b54 -IV = 000020e8f5eb00000000315e -AAD = 8008315ebf2e6fe020e8f5eb -Tag = 828dc0088f99a7ef -Plaintext = f57af5fd4ae19562976ec57a5a7ad55a5af5c5e5c5fdf5c55ad57a4a7272d57262e9729566ed66e97ac54a4a5a7ad5e15ae5fdd5fd5ac5d56ae56ad5c572d54ae54ac55a956afd6aed5a4ac562957a9516991691d572fd14e97ae962ed7a9f4a955af572e162f57a956666e17ae1f54a95f566d54a66e16e4afd6a9f7ae1c5c55ae5d56afde916c5e94a6ec56695e14afde1148416e94ad57ac5146ed59d1cc5 -Ciphertext = ff78128ee18ee3cb9fb0d20726a017ff67fbd09d3a4c38aa32f6d306d3fdda378e459b83ed005507449d6cd981a4c1e3ff4193870c276ef09b6317a01a2283206ae4b4be0d0b235422c8abb00122410656b75e1ffc7fb49c0d0c5d6169aa7623610579968037aee8e83fc26264ea866590fd620aa3c0a5f323d953aa7f8defb0d0d60ab5a9de44dbaf8eae74ea3ab5f30594154f405fd630aa4c4d5603efdfa1 - -# 12-byte Tag - -Cipher = ARIA-128-CCM -Availablein = default -Key = 974bee725d44fc3992267b284c3c6750 -IV = 000020e8f5eb00000000315e -AAD = 8008315ebf2e6fe020e8f5eb -Tag = 01f3dedd15238da5ebfb1590 -Plaintext = f57af5fd4ae19562976ec57a5a7ad55a5af5c5e5c5fdf5c55ad57a4a7272d57262e9729566ed66e97ac54a4a5a7ad5e15ae5fdd5fd5ac5d56ae56ad5c572d54ae54ac55a956afd6aed5a4ac562957a9516991691d572fd14e97ae962ed7a9f4a955af572e162f57a956666e17ae1f54a95f566d54a66e16e4afd6a9f7ae1c5c55ae5d56afde916c5e94a6ec56695e14afde1148416e94ad57ac5146ed59d1cc5 -Ciphertext = 621e408a2e455505b39f704dcbac4307daabbd6d670abc4e42f2fd2fca263f094f4683e6fb0b10c5093d42b69dce0ba546520e7c4400975713f3bde93ef131160b9cbcd6df78a1502be7c6ea8d395b9ed0078819c3105c0ab92cb67b16ba51bb1f53508738bf7a37c9a905439b88b7af9d51a407916fdfea8d43bf253721846dc1671391225fc58d9d0693c8ade6a4ffb034ee6543dd4e651b7a084eae60f855 - -Cipher = ARIA-256-CCM -Availablein = default -Key = 0c5ffd37a11edc42c325287fc0604f2e3e8cd5671a00fe3216aa5eb105783b54 -IV = 000020e8f5eb00000000315e -AAD = 8008315ebf2e6fe020e8f5eb -Tag = 3615b7f90a651de15da20fb6 -Plaintext = f57af5fd4ae19562976ec57a5a7ad55a5af5c5e5c5fdf5c55ad57a4a7272d57262e9729566ed66e97ac54a4a5a7ad5e15ae5fdd5fd5ac5d56ae56ad5c572d54ae54ac55a956afd6aed5a4ac562957a9516991691d572fd14e97ae962ed7a9f4a955af572e162f57a956666e17ae1f54a95f566d54a66e16e4afd6a9f7ae1c5c55ae5d56afde916c5e94a6ec56695e14afde1148416e94ad57ac5146ed59d1cc5 -Ciphertext = ff78128ee18ee3cb9fb0d20726a017ff67fbd09d3a4c38aa32f6d306d3fdda378e459b83ed005507449d6cd981a4c1e3ff4193870c276ef09b6317a01a2283206ae4b4be0d0b235422c8abb00122410656b75e1ffc7fb49c0d0c5d6169aa7623610579968037aee8e83fc26264ea866590fd620aa3c0a5f323d953aa7f8defb0d0d60ab5a9de44dbaf8eae74ea3ab5f30594154f405fd630aa4c4d5603efdfa1 - -# Test that the tag can be set after specifying AAD. -Cipher = ARIA-256-CCM -Availablein = default -Key = 0c5ffd37a11edc42c325287fc0604f2e3e8cd5671a00fe3216aa5eb105783b54 -IV = 000020e8f5eb00000000315e -AAD = 8008315ebf2e6fe020e8f5eb -Tag = 3615b7f90a651de15da20fb6 -SetTagLate = TRUE -Plaintext = f57af5fd4ae19562976ec57a5a7ad55a5af5c5e5c5fdf5c55ad57a4a7272d57262e9729566ed66e97ac54a4a5a7ad5e15ae5fdd5fd5ac5d56ae56ad5c572d54ae54ac55a956afd6aed5a4ac562957a9516991691d572fd14e97ae962ed7a9f4a955af572e162f57a956666e17ae1f54a95f566d54a66e16e4afd6a9f7ae1c5c55ae5d56afde916c5e94a6ec56695e14afde1148416e94ad57ac5146ed59d1cc5 -Ciphertext = ff78128ee18ee3cb9fb0d20726a017ff67fbd09d3a4c38aa32f6d306d3fdda378e459b83ed005507449d6cd981a4c1e3ff4193870c276ef09b6317a01a2283206ae4b4be0d0b235422c8abb00122410656b75e1ffc7fb49c0d0c5d6169aa7623610579968037aee8e83fc26264ea866590fd620aa3c0a5f323d953aa7f8defb0d0d60ab5a9de44dbaf8eae74ea3ab5f30594154f405fd630aa4c4d5603efdfa1 diff --git a/test/recipes/30-test_evp_data/evpciph_aes_cts1.txt b/test/recipes/30-test_evp_data/evpciph_aes_cts1.txt new file mode 100644 index 0000000000..73da12b043 --- /dev/null +++ b/test/recipes/30-test_evp_data/evpciph_aes_cts1.txt @@ -0,0 +1,143 @@ +# +# Copyright 2020 The OpenSSL Project Authors. All Rights Reserved. +# +# Licensed under the Apache License 2.0 (the "License"). You may not use +# this file except in compliance with the License. You can obtain a copy +# in the file LICENSE in the source distribution or at +# https://www.openssl.org/source/license.html + +# Original test vectors were taken from https://www.ietf.org/rfc/rfc3962.txt for CS3 +# These have an IV of all zeros, for a 128 bit AES key. + +Title = AES CBC Test vectors + +#------------------------------------------------------ +# AES_CBC results for aligned block lengths. (Result should be the same as 32 byte CTS1 & CTS2) + +# 32 bytes input +Cipher = AES-128-CBC +Key = 636869636b656e207465726979616b69 +IV = 00000000000000000000000000000000 +Plaintext = 4920776f756c64206c696b65207468652047656e6572616c2047617527732043 +Ciphertext = 97687268d6ecccc0c07b25e25ecfe58439312523a78662d5be7fcbcc98ebf5a8 + +# 48 bytes input +Cipher = AES-128-CBC +Key = 636869636b656e207465726979616b69 +IV = 00000000000000000000000000000000 +Plaintext = 4920776f756c64206c696b65207468652047656e6572616c20476175277320436869636b656e2c20706c656173652c20 +Ciphertext = 97687268d6ecccc0c07b25e25ecfe58439312523a78662d5be7fcbcc98ebf5a89dad8bbb96c4cdc03bc103e1a194bbd8 + +# 64 bytes input +Cipher = AES-128-CBC +Key = 636869636b656e207465726979616b69 +IV = 00000000000000000000000000000000 +Plaintext = 4920776f756c64206c696b65207468652047656e6572616c20476175277320436869636b656e2c20706c656173652c20616e6420776f6e746f6e20736f75702e +Ciphertext = 97687268d6ecccc0c07b25e25ecfe58439312523a78662d5be7fcbcc98ebf5a89dad8bbb96c4cdc03bc103e1a194bbd84807efe836ee89a526730dbc2f7bc840 + +Title = AES CBC CTS1 Test vectors + +#------------------------------------------------------ +# Manually edited using the same inputs to also produce CS1 ciphertext +# where aligned blocks are the same as CBC mode, and partial lengths +# have the last 2 blocks swapped compared to CS3. + +# 17 bytes Input((Default is CS1 if CTSMode is not specified) +Cipher = AES-128-CBC-CTS +Key = 636869636b656e207465726979616b69 +IV = 00000000000000000000000000000000 +Plaintext = 4920776f756c64206c696b652074686520 +Ciphertext = 97c6353568f2bf8cb4d8a580362da7ff7f + +# 31 bytes input +Cipher = AES-128-CBC-CTS +CTSMode = CS1 +Key = 636869636b656e207465726979616b69 +IV = 00000000000000000000000000000000 +Plaintext = 4920776f756c64206c696b65207468652047656e6572616c20476175277320 +Ciphertext = 97687268d6ecccc0c07b25e25ecfe5fc00783e0efdb2c1d445d4c8eff7ed22 + +# 32 bytes input +Cipher = AES-128-CBC-CTS +CTSMode = CS1 +Key = 636869636b656e207465726979616b69 +IV = 00000000000000000000000000000000 +Plaintext = 4920776f756c64206c696b65207468652047656e6572616c2047617527732043 +Ciphertext = 97687268d6ecccc0c07b25e25ecfe58439312523a78662d5be7fcbcc98ebf5a8 + +# 47 bytes input +Cipher = AES-128-CBC-CTS +Key = 636869636b656e207465726979616b69 +IV = 00000000000000000000000000000000 +Plaintext = 4920776f756c64206c696b65207468652047656e6572616c20476175277320436869636b656e2c20706c656173652c +Ciphertext = 97687268d6ecccc0c07b25e25ecfe58439312523a78662d5be7fcbcc98ebf5b3fffd940c16a18c1b5549d2f838029e + +# 64 bytes input (CS1 is equivalent to CBC when the last block in full) +Cipher = AES-128-CBC-CTS +CTSMode = CS1 +Key = 636869636b656e207465726979616b69 +IV = 00000000000000000000000000000000 +Plaintext = 4920776f756c64206c696b65207468652047656e6572616c20476175277320436869636b656e2c20706c656173652c20616e6420776f6e746f6e20736f75702e +Ciphertext = 97687268d6ecccc0c07b25e25ecfe58439312523a78662d5be7fcbcc98ebf5a89dad8bbb96c4cdc03bc103e1a194bbd84807efe836ee89a526730dbc2f7bc840 + +#------------------------------------------------------------------------------- +# Generated test values using an IV. + +# 47 bytes input +Cipher = AES-128-CBC-CTS +CTSMode = CS1 +Key = 636869636b656e207465726979616b69 +IV =000102030405060708090A0B0C0D0E0F +Plaintext = 4920776f756c64206c696b65207468652047656e6572616c20476175277320436869636b656e2c20706c656173652c +Ciphertext = 5432a630742dee7beb70f9f1400ee6a0b557cfb581949a4bdf3bb67dedd472426da5c54a9990f5ae0b7825f51f0060 + +# 127 bytes +Cipher = AES-128-CBC-CTS +CTSMode = CS1 +Key = 636869636b656e207465726979616b69 +IV = 000102030405060708090A0B0C0D0E0F +Plaintext = 4920776f756c64206c696b65207468652047656e6572616c20476175277320436869636b656e2c20706c656173652c20616e6420776f6e746f6e20736f75702e4920776f756c64206c696b65207468652047656e6572616c20476175277320436869636b656e2c20706c656173652c20616e6420776f6e746f6e20736f7570 +Ciphertext = 5432a630742dee7beb70f9f1400ee6a0b557cfb581949a4bdf3bb67dedd472b9fc50e4e7dacf9e3d94b6cc031f9997a22d2fea7e6ef4aba2b717b0fa3f150e5e86e46b9e51c6ea5091a92aa791ce826b2e4fbaaf0e0314939625434b9530ce56f299891a48d26bdc287f54b230340d652a4721bf0f082ede80b6399800a92f + +# 129 bytes +Cipher = AES-128-CBC-CTS +CTSMode = CS1 +Key = 636869636b656e207465726979616b69 +IV = 000102030405060708090A0B0C0D0E0F +Plaintext = 4920776f756c64206c696b65207468652047656e6572616c20476175277320436869636b656e2c20706c656173652c20616e6420776f6e746f6e20736f75702e4920776f756c64206c696b65207468652047656e6572616c20476175277320436869636b656e2c20706c656173652c20616e6420776f6e746f6e20736f75702e49 +Ciphertext = 5432a630742dee7beb70f9f1400ee6a0b557cfb581949a4bdf3bb67dedd472b9fc50e4e7dacf9e3d94b6cc031f9997a22d2fea7e6ef4aba2b717b0fa3f150e5e86e46b9e51c6ea5091a92aa791ce826b2e4fbaaf0e0314939625434b9530ce56f299891a48d26bdc287f54b230340d14fde9fd1098b9b1db788b5868a8d009eeef + +# 17 Bytes +Cipher = AES-192-CBC-CTS +CTSMode = CS1 +Key = 636869636b656e207465726979616b69636869636b656e20 +IV = 000102030405060708090A0B0C0D0E0F +Plaintext = 4920776f756c64206c696b652074686520 +Ciphertext = e9de1b402de8f79f947cc6b5880588d9b6 + +# 31 Bytes +Cipher = AES-192-CBC-CTS +CTSMode = CS1 +Key = 636869636b656e207465726979616b69636869636b656e20 +IV = 000102030405060708090A0B0C0D0E0F +Plaintext = 4920776f756c64206c696b65207468652047656e6572616c20476175277320 +Ciphertext = e9de17d6248fb492bdea1fb2e09c8edea2b610546f3b1e1d231821e283e153 + +# 32 Bytes +Cipher = AES-192-CBC-CTS +CTSMode = CS1 +Key = 636869636b656e207465726979616b69636869636b656e20 +IV = 000102030405060708090A0B0C0D0E0F +Plaintext = 4920776f756c64206c696b65207468652047656e6572616c2047617527732043 +Ciphertext = e9de17d6248fb492bdea1fb2e09c8e8e31d005cc9fea948fed1ba6308dad9dd1 + +#------------------------------------------------------------------------------ +# Failure test + +# 15 bytes should fail for CS1 +Cipher = AES-128-CBC-CTS +CTSMode = CS1 +Key = 636869636b656e207465726979616b69 +IV = 00000000000000000000000000000000 +Plaintext = 0102030405060708090A0B0C0D0E0F +Result = CIPHERUPDATE_ERROR diff --git a/test/recipes/30-test_evp_data/evpciph_aes_cts.txt b/test/recipes/30-test_evp_data/evpciph_aes_cts23.txt similarity index 55% rename from test/recipes/30-test_evp_data/evpciph_aes_cts.txt rename to test/recipes/30-test_evp_data/evpciph_aes_cts23.txt index 83bac2c5c8..f4865a880a 100644 --- a/test/recipes/30-test_evp_data/evpciph_aes_cts.txt +++ b/test/recipes/30-test_evp_data/evpciph_aes_cts23.txt @@ -9,83 +9,7 @@ # Original test vectors were taken from https://www.ietf.org/rfc/rfc3962.txt for CS3 # These have an IV of all zeros, for a 128 bit AES key. -# 17 bytes Input -Cipher = AES-128-CBC-CTS -Availablein = default -CTSMode = CS3 -Key = 636869636b656e207465726979616b69 -IV = 00000000000000000000000000000000 -Plaintext = 4920776f756c64206c696b652074686520 -Ciphertext = c6353568f2bf8cb4d8a580362da7ff7f97 - -# 31 bytes input -Cipher = AES-128-CBC-CTS -Availablein = default -CTSMode = CS3 -Key = 636869636b656e207465726979616b69 -IV = 00000000000000000000000000000000 -Plaintext = 4920776f756c64206c696b65207468652047656e6572616c20476175277320 -Ciphertext = fc00783e0efdb2c1d445d4c8eff7ed2297687268d6ecccc0c07b25e25ecfe5 - -# 32 bytes input (CS3 always swaps the last 2 byte blocks - so it is not equivalent to CBC for a full block) -Cipher = AES-128-CBC-CTS -Availablein = default -CTSMode = CS3 -Key = 636869636b656e207465726979616b69 -IV = 00000000000000000000000000000000 -Plaintext = 4920776f756c64206c696b65207468652047656e6572616c2047617527732043 -Ciphertext = 39312523a78662d5be7fcbcc98ebf5a897687268d6ecccc0c07b25e25ecfe584 - -# 47 bytes input -Cipher = AES-128-CBC-CTS -Availablein = default -CTSMode = CS3 -Key = 636869636b656e207465726979616b69 -IV = 00000000000000000000000000000000 -Plaintext = 4920776f756c64206c696b65207468652047656e6572616c20476175277320436869636b656e2c20706c656173652c -Ciphertext = 97687268d6ecccc0c07b25e25ecfe584b3fffd940c16a18c1b5549d2f838029e39312523a78662d5be7fcbcc98ebf5 - -# 48 bytes input -Cipher = AES-128-CBC-CTS -Availablein = default -CTSMode = CS3 -Key = 636869636b656e207465726979616b69 -IV = 00000000000000000000000000000000 -Plaintext = 4920776f756c64206c696b65207468652047656e6572616c20476175277320436869636b656e2c20706c656173652c20 -Ciphertext = 97687268d6ecccc0c07b25e25ecfe5849dad8bbb96c4cdc03bc103e1a194bbd839312523a78662d5be7fcbcc98ebf5a8 - -# 64 bytes input (CS3 always swaps the last 2 byte blocks - so it is not equivalent to CBC for a full block) -Cipher = AES-128-CBC-CTS -Availablein = default -CTSMode = CS3 -Key = 636869636b656e207465726979616b69 -IV = 00000000000000000000000000000000 -Plaintext = 4920776f756c64206c696b65207468652047656e6572616c20476175277320436869636b656e2c20706c656173652c20616e6420776f6e746f6e20736f75702e -Ciphertext = 97687268d6ecccc0c07b25e25ecfe58439312523a78662d5be7fcbcc98ebf5a84807efe836ee89a526730dbc2f7bc8409dad8bbb96c4cdc03bc103e1a194bbd8 - -#------------------------------------------------------ -# AES_CBC results for aligned block lengths. (Result should be the same as 32 byte CTS1 & CTS2) - -# 32 bytes input -Cipher = AES-128-CBC -Key = 636869636b656e207465726979616b69 -IV = 00000000000000000000000000000000 -Plaintext = 4920776f756c64206c696b65207468652047656e6572616c2047617527732043 -Ciphertext = 97687268d6ecccc0c07b25e25ecfe58439312523a78662d5be7fcbcc98ebf5a8 - -# 48 bytes input -Cipher = AES-128-CBC -Key = 636869636b656e207465726979616b69 -IV = 00000000000000000000000000000000 -Plaintext = 4920776f756c64206c696b65207468652047656e6572616c20476175277320436869636b656e2c20706c656173652c20 -Ciphertext = 97687268d6ecccc0c07b25e25ecfe58439312523a78662d5be7fcbcc98ebf5a89dad8bbb96c4cdc03bc103e1a194bbd8 - -# 64 bytes input -Cipher = AES-128-CBC -Key = 636869636b656e207465726979616b69 -IV = 00000000000000000000000000000000 -Plaintext = 4920776f756c64206c696b65207468652047656e6572616c20476175277320436869636b656e2c20706c656173652c20616e6420776f6e746f6e20736f75702e -Ciphertext = 97687268d6ecccc0c07b25e25ecfe58439312523a78662d5be7fcbcc98ebf5a89dad8bbb96c4cdc03bc103e1a194bbd84807efe836ee89a526730dbc2f7bc840 +Title = AES CBC CTS2 Test vectors #------------------------------------------------------ # Manually edited using the same inputs to also produce CS2 ciphertext @@ -94,7 +18,6 @@ Ciphertext = 97687268d6ecccc0c07b25e25ecfe58439312523a78662d5be7fcbcc98ebf5a89da # 17 bytes Input (For partial blocks the output should match CS3) Cipher = AES-128-CBC-CTS -Availablein = default CTSMode = CS2 Key = 636869636b656e207465726979616b69 IV = 00000000000000000000000000000000 @@ -103,7 +26,6 @@ Ciphertext = c6353568f2bf8cb4d8a580362da7ff7f97 # 31 bytes input (For partial blocks the output should match CS3) Cipher = AES-128-CBC-CTS -Availablein = default CTSMode = CS2 Key = 636869636b656e207465726979616b69 IV = 00000000000000000000000000000000 @@ -112,7 +34,6 @@ Ciphertext = fc00783e0efdb2c1d445d4c8eff7ed2297687268d6ecccc0c07b25e25ecfe5 # 32 bytes input (Aligned blocks should match normal CBC mode) Cipher = AES-128-CBC-CTS -Availablein = default CTSMode = CS2 Key = 636869636b656e207465726979616b69 IV = 00000000000000000000000000000000 @@ -121,7 +42,6 @@ Ciphertext = 97687268d6ecccc0c07b25e25ecfe58439312523a78662d5be7fcbcc98ebf5a8 # 47 bytes input Cipher = AES-128-CBC-CTS -Availablein = default CTSMode = CS2 Key = 636869636b656e207465726979616b69 IV = 00000000000000000000000000000000 @@ -130,96 +50,110 @@ Ciphertext = 97687268d6ecccc0c07b25e25ecfe584b3fffd940c16a18c1b5549d2f838029e393 # 64 bytes input (CS2 is equivalent to CBC when the last block in full) Cipher = AES-128-CBC-CTS -Availablein = default CTSMode = CS2 Key = 636869636b656e207465726979616b69 IV = 00000000000000000000000000000000 Plaintext = 4920776f756c64206c696b65207468652047656e6572616c20476175277320436869636b656e2c20706c656173652c20616e6420776f6e746f6e20736f75702e Ciphertext = 97687268d6ecccc0c07b25e25ecfe58439312523a78662d5be7fcbcc98ebf5a89dad8bbb96c4cdc03bc103e1a194bbd84807efe836ee89a526730dbc2f7bc840 -#------------------------------------------------------ -# Manually edited using the same inputs to also produce CS1 ciphertext -# where aligned blocks are the same as CBC mode, and partial lengths -# have the last 2 blocks swapped compared to CS3. +# Generated test values using an IV. + +# 17 Bytes +Cipher = AES-192-CBC-CTS +CTSMode = CS2 +Key = 636869636b656e207465726979616b69636869636b656e20 +IV = 000102030405060708090A0B0C0D0E0F +Plaintext = 4920776f756c64206c696b652074686520 +Ciphertext = de1b402de8f79f947cc6b5880588d9b6e9 -# 17 bytes Input((Default is CS1 if CTSMode is not specified) +# 31 Bytes +Cipher = AES-192-CBC-CTS +CTSMode = CS2 +Key = 636869636b656e207465726979616b69636869636b656e20 +IV = 000102030405060708090A0B0C0D0E0F +Plaintext = 4920776f756c64206c696b65207468652047656e6572616c20476175277320 +Ciphertext = dea2b610546f3b1e1d231821e283e153e9de17d6248fb492bdea1fb2e09c8e + +# 32 Bytes +Cipher = AES-192-CBC-CTS +CTSMode = CS2 +Key = 636869636b656e207465726979616b69636869636b656e20 +IV = 000102030405060708090A0B0C0D0E0F +Plaintext = 4920776f756c64206c696b65207468652047656e6572616c2047617527732043 +Ciphertext = e9de17d6248fb492bdea1fb2e09c8e8e31d005cc9fea948fed1ba6308dad9dd1 + +# Failure test - 15 bytes should fail for CS2 Cipher = AES-128-CBC-CTS +CTSMode = CS2 +Key = 636869636b656e207465726979616b69 +IV = 00000000000000000000000000000000 +Plaintext = 0102030405060708090A0B0C0D0E0F +Result = CIPHERUPDATE_ERROR + + + +Title = AES CBC CTS3 Test vectors + +# 17 bytes Input +Cipher = AES-128-CBC-CTS +CTSMode = CS3 Key = 636869636b656e207465726979616b69 IV = 00000000000000000000000000000000 Plaintext = 4920776f756c64206c696b652074686520 -Ciphertext = 97c6353568f2bf8cb4d8a580362da7ff7f +Ciphertext = c6353568f2bf8cb4d8a580362da7ff7f97 # 31 bytes input Cipher = AES-128-CBC-CTS -CTSMode = CS1 +CTSMode = CS3 Key = 636869636b656e207465726979616b69 IV = 00000000000000000000000000000000 Plaintext = 4920776f756c64206c696b65207468652047656e6572616c20476175277320 -Ciphertext = 97687268d6ecccc0c07b25e25ecfe5fc00783e0efdb2c1d445d4c8eff7ed22 +Ciphertext = fc00783e0efdb2c1d445d4c8eff7ed2297687268d6ecccc0c07b25e25ecfe5 -# 32 bytes input +# 32 bytes input (CS3 always swaps the last 2 byte blocks - so it is not equivalent to CBC for a full block) Cipher = AES-128-CBC-CTS -CTSMode = CS1 +CTSMode = CS3 Key = 636869636b656e207465726979616b69 IV = 00000000000000000000000000000000 Plaintext = 4920776f756c64206c696b65207468652047656e6572616c2047617527732043 -Ciphertext = 97687268d6ecccc0c07b25e25ecfe58439312523a78662d5be7fcbcc98ebf5a8 +Ciphertext = 39312523a78662d5be7fcbcc98ebf5a897687268d6ecccc0c07b25e25ecfe584 # 47 bytes input Cipher = AES-128-CBC-CTS +CTSMode = CS3 Key = 636869636b656e207465726979616b69 IV = 00000000000000000000000000000000 Plaintext = 4920776f756c64206c696b65207468652047656e6572616c20476175277320436869636b656e2c20706c656173652c -Ciphertext = 97687268d6ecccc0c07b25e25ecfe58439312523a78662d5be7fcbcc98ebf5b3fffd940c16a18c1b5549d2f838029e +Ciphertext = 97687268d6ecccc0c07b25e25ecfe584b3fffd940c16a18c1b5549d2f838029e39312523a78662d5be7fcbcc98ebf5 -# 64 bytes input (CS1 is equivalent to CBC when the last block in full) +# 48 bytes input +Cipher = AES-128-CBC-CTS +CTSMode = CS3 +Key = 636869636b656e207465726979616b69 +IV = 00000000000000000000000000000000 +Plaintext = 4920776f756c64206c696b65207468652047656e6572616c20476175277320436869636b656e2c20706c656173652c20 +Ciphertext = 97687268d6ecccc0c07b25e25ecfe5849dad8bbb96c4cdc03bc103e1a194bbd839312523a78662d5be7fcbcc98ebf5a8 + +# 64 bytes input (CS3 always swaps the last 2 byte blocks - so it is not equivalent to CBC for a full block) Cipher = AES-128-CBC-CTS -CTSMode = CS1 +CTSMode = CS3 Key = 636869636b656e207465726979616b69 IV = 00000000000000000000000000000000 Plaintext = 4920776f756c64206c696b65207468652047656e6572616c20476175277320436869636b656e2c20706c656173652c20616e6420776f6e746f6e20736f75702e -Ciphertext = 97687268d6ecccc0c07b25e25ecfe58439312523a78662d5be7fcbcc98ebf5a89dad8bbb96c4cdc03bc103e1a194bbd84807efe836ee89a526730dbc2f7bc840 +Ciphertext = 97687268d6ecccc0c07b25e25ecfe58439312523a78662d5be7fcbcc98ebf5a84807efe836ee89a526730dbc2f7bc8409dad8bbb96c4cdc03bc103e1a194bbd8 -#------------------------------------------------------------------------------- -# Generated test values using an IV. +# Generated test values using an IV. # 47 bytes input Cipher = AES-128-CBC-CTS -Availablein = default CTSMode = CS3 Key = 636869636b656e207465726979616b69 IV = 000102030405060708090A0B0C0D0E0F Plaintext = 4920776f756c64206c696b65207468652047656e6572616c20476175277320436869636b656e2c20706c656173652c Ciphertext = 5432a630742dee7beb70f9f1400ee6a0426da5c54a9990f5ae0b7825f51f0060b557cfb581949a4bdf3bb67dedd472 -# 47 bytes input -Cipher = AES-128-CBC-CTS -CTSMode = CS1 -Key = 636869636b656e207465726979616b69 -IV =000102030405060708090A0B0C0D0E0F -Plaintext = 4920776f756c64206c696b65207468652047656e6572616c20476175277320436869636b656e2c20706c656173652c -Ciphertext = 5432a630742dee7beb70f9f1400ee6a0b557cfb581949a4bdf3bb67dedd472426da5c54a9990f5ae0b7825f51f0060 - -# 127 bytes -Cipher = AES-128-CBC-CTS -CTSMode = CS1 -Key = 636869636b656e207465726979616b69 -IV = 000102030405060708090A0B0C0D0E0F -Plaintext = 4920776f756c64206c696b65207468652047656e6572616c20476175277320436869636b656e2c20706c656173652c20616e6420776f6e746f6e20736f75702e4920776f756c64206c696b65207468652047656e6572616c20476175277320436869636b656e2c20706c656173652c20616e6420776f6e746f6e20736f7570 -Ciphertext = 5432a630742dee7beb70f9f1400ee6a0b557cfb581949a4bdf3bb67dedd472b9fc50e4e7dacf9e3d94b6cc031f9997a22d2fea7e6ef4aba2b717b0fa3f150e5e86e46b9e51c6ea5091a92aa791ce826b2e4fbaaf0e0314939625434b9530ce56f299891a48d26bdc287f54b230340d652a4721bf0f082ede80b6399800a92f - -# 129 bytes -Cipher = AES-128-CBC-CTS -CTSMode = CS1 -Key = 636869636b656e207465726979616b69 -IV = 000102030405060708090A0B0C0D0E0F -Plaintext = 4920776f756c64206c696b65207468652047656e6572616c20476175277320436869636b656e2c20706c656173652c20616e6420776f6e746f6e20736f75702e4920776f756c64206c696b65207468652047656e6572616c20476175277320436869636b656e2c20706c656173652c20616e6420776f6e746f6e20736f75702e49 -Ciphertext = 5432a630742dee7beb70f9f1400ee6a0b557cfb581949a4bdf3bb67dedd472b9fc50e4e7dacf9e3d94b6cc031f9997a22d2fea7e6ef4aba2b717b0fa3f150e5e86e46b9e51c6ea5091a92aa791ce826b2e4fbaaf0e0314939625434b9530ce56f299891a48d26bdc287f54b230340d14fde9fd1098b9b1db788b5868a8d009eeef - -#------------------------------------------------------------------------------- # 17 Bytes Cipher = AES-192-CBC-CTS -Availablein = default CTSMode = CS3 Key = 636869636b656e207465726979616b69636869636b656e20 IV =000102030405060708090A0B0C0D0E0F @@ -228,7 +162,6 @@ Ciphertext = de1b402de8f79f947cc6b5880588d9b6e9 # 31 Bytes Cipher = AES-192-CBC-CTS -Availablein = default CTSMode = CS3 Key = 636869636b656e207465726979616b69636869636b656e20 IV = 000102030405060708090A0B0C0D0E0F @@ -237,68 +170,14 @@ Ciphertext = dea2b610546f3b1e1d231821e283e153e9de17d6248fb492bdea1fb2e09c8e # 32 Bytes Cipher = AES-192-CBC-CTS -Availablein = default CTSMode = CS3 Key = 636869636b656e207465726979616b69636869636b656e20 IV = 000102030405060708090A0B0C0D0E0F Plaintext = 4920776f756c64206c696b65207468652047656e6572616c2047617527732043 Ciphertext = 31d005cc9fea948fed1ba6308dad9dd1e9de17d6248fb492bdea1fb2e09c8e8e -# 17 Bytes -Cipher = AES-192-CBC-CTS -Availablein = default -CTSMode = CS2 -Key = 636869636b656e207465726979616b69636869636b656e20 -IV = 000102030405060708090A0B0C0D0E0F -Plaintext = 4920776f756c64206c696b652074686520 -Ciphertext = de1b402de8f79f947cc6b5880588d9b6e9 - -# 31 Bytes -Cipher = AES-192-CBC-CTS -Availablein = default -CTSMode = CS2 -Key = 636869636b656e207465726979616b69636869636b656e20 -IV = 000102030405060708090A0B0C0D0E0F -Plaintext = 4920776f756c64206c696b65207468652047656e6572616c20476175277320 -Ciphertext = dea2b610546f3b1e1d231821e283e153e9de17d6248fb492bdea1fb2e09c8e - -# 32 Bytes -Cipher = AES-192-CBC-CTS -Availablein = default -CTSMode = CS2 -Key = 636869636b656e207465726979616b69636869636b656e20 -IV = 000102030405060708090A0B0C0D0E0F -Plaintext = 4920776f756c64206c696b65207468652047656e6572616c2047617527732043 -Ciphertext = e9de17d6248fb492bdea1fb2e09c8e8e31d005cc9fea948fed1ba6308dad9dd1 - -# 17 Bytes -Cipher = AES-192-CBC-CTS -CTSMode = CS1 -Key = 636869636b656e207465726979616b69636869636b656e20 -IV = 000102030405060708090A0B0C0D0E0F -Plaintext = 4920776f756c64206c696b652074686520 -Ciphertext = e9de1b402de8f79f947cc6b5880588d9b6 - -# 31 Bytes -Cipher = AES-192-CBC-CTS -CTSMode = CS1 -Key = 636869636b656e207465726979616b69636869636b656e20 -IV = 000102030405060708090A0B0C0D0E0F -Plaintext = 4920776f756c64206c696b65207468652047656e6572616c20476175277320 -Ciphertext = e9de17d6248fb492bdea1fb2e09c8edea2b610546f3b1e1d231821e283e153 - -# 32 Bytes -Cipher = AES-192-CBC-CTS -CTSMode = CS1 -Key = 636869636b656e207465726979616b69636869636b656e20 -IV = 000102030405060708090A0B0C0D0E0F -Plaintext = 4920776f756c64206c696b65207468652047656e6572616c2047617527732043 -Ciphertext = e9de17d6248fb492bdea1fb2e09c8e8e31d005cc9fea948fed1ba6308dad9dd1 - -#------------------------------------------------------------------------------- # 17 Bytes Cipher = AES-256-CBC-CTS -Availablein = default CTSMode = CS3 Key = 636869636b656e207465726979616b69636869636b656e207465726979616b69 IV = 000102030405060708090A0B0C0D0E0F @@ -307,7 +186,6 @@ Ciphertext = 6b5f5abc21c4d04156c73850da3bba29e9 # 31 Bytes Cipher = AES-256-CBC-CTS -Availablein = default CTSMode = CS3 Key = 636869636b656e207465726979616b69636869636b656e207465726979616b69 IV = 000102030405060708090A0B0C0D0E0F @@ -316,36 +194,15 @@ Ciphertext = f22553af78ee4f468f02fbe6f0f2168ee954e79fae9310dc75b6070e1d6253 # 32 Bytes Cipher = AES-256-CBC-CTS -Availablein = default CTSMode = CS3 Key = 636869636b656e207465726979616b69636869636b656e207465726979616b69 IV = 000102030405060708090A0B0C0D0E0F Plaintext = 4920776f756c64206c696b65207468652047656e6572616c2047617527732043 Ciphertext = 2c0463982174df10baa9d8f782c5a5b3e954e79fae9310dc75b6070e1d625346 -#------------------------------------------------------------------------------ # Failure tests - -# 15 bytes should fail for CS1 -Cipher = AES-128-CBC-CTS -CTSMode = CS1 -Key = 636869636b656e207465726979616b69 -IV = 00000000000000000000000000000000 -Plaintext = 0102030405060708090A0B0C0D0E0F -Result = CIPHERUPDATE_ERROR - -# 15 bytes should fail for CS2 -Cipher = AES-128-CBC-CTS -Availablein = default -CTSMode = CS2 -Key = 636869636b656e207465726979616b69 -IV = 00000000000000000000000000000000 -Plaintext = 0102030405060708090A0B0C0D0E0F -Result = CIPHERUPDATE_ERROR - # 15 bytes should fail for CS3 Cipher = AES-128-CBC-CTS -Availablein = default CTSMode = CS3 Key = 636869636b656e207465726979616b69 IV = 00000000000000000000000000000000 @@ -354,7 +211,6 @@ Result = CIPHERUPDATE_ERROR # 16 bytes should fail for CS3 (since it always needs 2 blocks). Cipher = AES-128-CBC-CTS -Availablein = default CTSMode = CS3 Key = 636869636b656e207465726979616b69 IV = 00000000000000000000000000000000 diff --git a/test/recipes/30-test_evp_data/evpciph_aes_ocb.txt b/test/recipes/30-test_evp_data/evpciph_aes_ocb.txt new file mode 100644 index 0000000000..e58ee34b6b --- /dev/null +++ b/test/recipes/30-test_evp_data/evpciph_aes_ocb.txt @@ -0,0 +1,209 @@ +# +# Copyright 2001-2020 The OpenSSL Project Authors. All Rights Reserved. +# +# Licensed under the Apache License 2.0 (the "License"). You may not use +# this file except in compliance with the License. You can obtain a copy +# in the file LICENSE in the source distribution or at +# https://www.openssl.org/source/license.html + +# Tests start with one of these keywords +# Cipher Decrypt Derive Digest Encoding KDF MAC PBE +# PrivPubKeyPair Sign Verify VerifyRecover +# and continue until a blank line. Lines starting with a pound sign are ignored. + +Title = AES OCB Test vectors + +Cipher = aes-128-ocb +Key = 000102030405060708090A0B0C0D0E0F +IV = 000102030405060708090A0B +AAD = +Tag = 197B9C3C441D3C83EAFB2BEF633B9182 +Plaintext = +Ciphertext = + +Cipher = aes-128-ocb +Key = 000102030405060708090A0B0C0D0E0F +IV = 000102030405060708090A0B +AAD = 0001020304050607 +Tag = 16DC76A46D47E1EAD537209E8A96D14E +Plaintext = 0001020304050607 +Ciphertext = 92B657130A74B85A + +Cipher = aes-128-ocb +Key = 000102030405060708090A0B0C0D0E0F +IV = 000102030405060708090A0B +AAD = 0001020304050607 +Tag = 98B91552C8C009185044E30A6EB2FE21 +Plaintext = +Ciphertext = + +Cipher = aes-128-ocb +Key = 000102030405060708090A0B0C0D0E0F +IV = 000102030405060708090A0B +AAD = +Tag = 971EFFCAE19AD4716F88E87B871FBEED +Plaintext = 0001020304050607 +Ciphertext = 92B657130A74B85A + +Cipher = aes-128-ocb +Key = 000102030405060708090A0B0C0D0E0F +IV = 000102030405060708090A0B +AAD = 000102030405060708090A0B0C0D0E0F +Tag = 776C9924D6723A1FC4524532AC3E5BEB +Plaintext = 000102030405060708090A0B0C0D0E0F +Ciphertext = BEA5E8798DBE7110031C144DA0B26122 + +Cipher = aes-128-ocb +Key = 000102030405060708090A0B0C0D0E0F +IV = 000102030405060708090A0B +AAD = 000102030405060708090A0B0C0D0E0F +Tag = 7DDB8E6CEA6814866212509619B19CC6 +Plaintext = +Ciphertext = + +Cipher = aes-128-ocb +Key = 000102030405060708090A0B0C0D0E0F +IV = 000102030405060708090A0B +AAD = +Tag = 13CC8B747807121A4CBB3E4BD6B456AF +Plaintext = 000102030405060708090A0B0C0D0E0F +Ciphertext = BEA5E8798DBE7110031C144DA0B26122 + +Cipher = aes-128-ocb +Key = 000102030405060708090A0B0C0D0E0F +IV = 000102030405060708090A0B +AAD = 000102030405060708090A0B0C0D0E0F1011121314151617 +Tag = 5FA94FC3F38820F1DC3F3D1FD4E55E1C +Plaintext = 000102030405060708090A0B0C0D0E0F1011121314151617 +Ciphertext = BEA5E8798DBE7110031C144DA0B26122FCFCEE7A2A8D4D48 + +Cipher = aes-128-ocb +Key = 000102030405060708090A0B0C0D0E0F +IV = 000102030405060708090A0B +AAD = 000102030405060708090A0B0C0D0E0F1011121314151617 +Tag = 282026DA3068BC9FA118681D559F10F6 +Plaintext = +Ciphertext = + +Cipher = aes-128-ocb +Key = 000102030405060708090A0B0C0D0E0F +IV = 000102030405060708090A0B +AAD = +Tag = 6EF2F52587FDA0ED97DC7EEDE241DF68 +Plaintext = 000102030405060708090A0B0C0D0E0F1011121314151617 +Ciphertext = BEA5E8798DBE7110031C144DA0B26122FCFCEE7A2A8D4D48 + +Cipher = aes-128-ocb +Key = 000102030405060708090A0B0C0D0E0F +IV = 000102030405060708090A0B +AAD = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F +Tag = B2A040DD3BD5164372D76D7BB6824240 +Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F +Ciphertext = BEA5E8798DBE7110031C144DA0B26122CEAAB9B05DF771A657149D53773463CB + +Cipher = aes-128-ocb +Key = 000102030405060708090A0B0C0D0E0F +IV = 000102030405060708090A0B +AAD = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F +Tag = E1E072633BADE51A60E85951D9C42A1B +Plaintext = +Ciphertext = + +Cipher = aes-128-ocb +Key = 000102030405060708090A0B0C0D0E0F +IV = 000102030405060708090A0B +AAD = +Tag = 4A3BAE824465CFDAF8C41FC50C7DF9D9 +Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F +Ciphertext = BEA5E8798DBE7110031C144DA0B26122CEAAB9B05DF771A657149D53773463CB + +Cipher = aes-128-ocb +Key = 000102030405060708090A0B0C0D0E0F +IV = 000102030405060708090A0B +AAD = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F2021222324252627 +Tag = 659C623211DEEA0DE30D2C381879F4C8 +Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F2021222324252627 +Ciphertext = BEA5E8798DBE7110031C144DA0B26122CEAAB9B05DF771A657149D53773463CB68C65778B058A635 + +Cipher = aes-128-ocb +Key = 000102030405060708090A0B0C0D0E0F +IV = 000102030405060708090A0B +AAD = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F2021222324252627 +Tag = 7AEB7A69A1687DD082CA27B0D9A37096 +Plaintext = +Ciphertext = + +Cipher = aes-128-ocb +Key = 000102030405060708090A0B0C0D0E0F +IV = 000102030405060708090A0B +AAD = +Tag = 060C8467F4ABAB5E8B3C2067A2E115DC +Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F2021222324252627 +Ciphertext = BEA5E8798DBE7110031C144DA0B26122CEAAB9B05DF771A657149D53773463CB68C65778B058A635 + +#AES OCB Non standard test vectors - generated from reference implementation +Cipher = aes-128-ocb +Key = 000102030405060708090A0B0C0D0E0F +IV = 000102030405060708090A0B +AAD = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F2021222324252627 +Tag = 1b6c44f34e3abb3cbf8976e7 +Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F2021222324252627 +Ciphertext = 09a4fd29de949d9a9aa9924248422097ad4883b4713e6c214ff6567ada08a96766fc4e2ee3e3a5a1 + +Cipher = aes-128-ocb +Key = 000102030405060708090A0B0C0D0E0F +IV = 000102030405060708090A0B0C0D0E +AAD = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F2021222324252627 +Tag = 1ad62009901f40cba7cd7156f94a7324 +Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F2021222324252627 +Ciphertext = 5e2fa7367ffbdb3938845cfd415fcc71ec79634eb31451609d27505f5e2978f43c44213d8fa441ee + +Cipher = aes-128-ocb +Key = 000102030405060708090A0B0C0D0E0F +IV = 000102030405060708090A0B +AAD = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F2021222324252627 +Tag = C203F98CE28F7DAD3F31C021 +Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F3031 +Ciphertext = 09A4FD29DE949D9A9AA9924248422097AD4883B4713E6C214FF6567ADA08A967B2176C12F110DD441B7CAA3A509B13C822D6 + +Cipher = aes-128-ocb +Key = 000102030405060708090A0B0C0D0E0F +IV = 000102030405060708090A0B +AAD = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F2021222324252627 +Tag = 8346D7D47C5D893ED472F5AB +Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F4041 +Ciphertext = 09A4FD29DE949D9A9AA9924248422097AD4883B4713E6C214FF6567ADA08A967B2176C12F110DD441B7CAA3A509B13C86A023AFCEE998BEE42028D44507B15F714FF + +Cipher = aes-128-ocb +Key = 000102030405060708090A0B0C0D0E0F +IV = 000102030405060708090A0B +AAD = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F2021222324252627 +Tag = 5822A9A70FDF55D29D2984A6 +Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F5051 +Ciphertext = 09A4FD29DE949D9A9AA9924248422097AD4883B4713E6C214FF6567ADA08A967B2176C12F110DD441B7CAA3A509B13C86A023AFCEE998BEE42028D44507B15F77C528A1DE6406B519BCEE8FCB8294170634D + +Cipher = aes-128-ocb +Key = 000102030405060708090A0B0C0D0E0F +IV = 000102030405060708090A0B +AAD = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F2021222324252627 +Tag = 81772B6741ABB4ECA9D2DEB2 +Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F6061 +Ciphertext = 09A4FD29DE949D9A9AA9924248422097AD4883B4713E6C214FF6567ADA08A967B2176C12F110DD441B7CAA3A509B13C86A023AFCEE998BEE42028D44507B15F77C528A1DE6406B519BCEE8FCB829417001E54E15A7576C4DF32366E0F439C7050FAA + +Cipher = aes-128-ocb +Key = 000102030405060708090A0B0C0D0E0F +IV = 000102030405060708090A0B +AAD = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F2021222324252627 +Tag = 3E52A01D068DE85456DB03B7 +Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F7071 +Ciphertext = 09A4FD29DE949D9A9AA9924248422097AD4883B4713E6C214FF6567ADA08A967B2176C12F110DD441B7CAA3A509B13C86A023AFCEE998BEE42028D44507B15F77C528A1DE6406B519BCEE8FCB829417001E54E15A7576C4DF32366E0F439C7051CB4824B8114E9A720CBC1CE0185B156B486 + +Cipher = aes-128-ocb +Key = 000102030405060708090A0B0C0D0E0F +IV = 000102030405060708090A0B +AAD = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F2021222324252627 +Tag = 3E52A01D068DE85456DB03B6 +Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F7071 +Ciphertext = 09A4FD29DE949D9A9AA9924248422097AD4883B4713E6C214FF6567ADA08A967B2176C12F110DD441B7CAA3A509B13C86A023AFCEE998BEE42028D44507B15F77C528A1DE6406B519BCEE8FCB829417001E54E15A7576C4DF32366E0F439C7051CB4824B8114E9A720CBC1CE0185B156B486 +Operation = DECRYPT +Result = CIPHERFINAL_ERROR diff --git a/test/recipes/30-test_evp_data/evpaessiv.txt b/test/recipes/30-test_evp_data/evpciph_aes_siv.txt similarity index 94% rename from test/recipes/30-test_evp_data/evpaessiv.txt rename to test/recipes/30-test_evp_data/evpciph_aes_siv.txt index e891b2149a..a78a49158d 100644 --- a/test/recipes/30-test_evp_data/evpaessiv.txt +++ b/test/recipes/30-test_evp_data/evpciph_aes_siv.txt @@ -9,10 +9,10 @@ # Tests start with one of these keywords # Cipher Decrypt Derive Digest Encoding KDF MAC PBE # PrivPubKeyPair Sign Verify VerifyRecover -# and continue until a blank line. Lines starting with a pound sign, -# like this prolog, are ignored. +# and continue until a blank line. Lines starting with a pound sign are ignored. Title = RFC5297 AES-SIV + Cipher = aes-128-siv Key = fffefdfcfbfaf9f8f7f6f5f4f3f2f1f0f0f1f2f3f4f5f6f7f8f9fafbfcfdfeff AAD = 101112131415161718191a1b1c1d1e1f2021222324252627 diff --git a/test/recipes/30-test_evp_data/evpciph_aria.txt b/test/recipes/30-test_evp_data/evpciph_aria.txt new file mode 100644 index 0000000000..be1698d822 --- /dev/null +++ b/test/recipes/30-test_evp_data/evpciph_aria.txt @@ -0,0 +1,249 @@ +# +# Copyright 2001-2020 The OpenSSL Project Authors. All Rights Reserved. +# +# Licensed under the Apache License 2.0 (the "License"). You may not use +# this file except in compliance with the License. You can obtain a copy +# in the file LICENSE in the source distribution or at +# https://www.openssl.org/source/license.html + +# Tests start with one of these keywords +# Cipher Decrypt Derive Digest Encoding KDF MAC PBE +# PrivPubKeyPair Sign Verify VerifyRecover +# and continue until a blank line. Lines starting with a pound sign are ignored. + +Title = ARIA test vectors from RFC5794 (and others) + +Cipher = ARIA-128-ECB +Key = 000102030405060708090a0b0c0d0e0f +Plaintext = 00112233445566778899aabbccddeeff +Ciphertext = d718fbd6ab644c739da95f3be6451778 + +Cipher = ARIA-192-ECB +Key = 000102030405060708090a0b0c0d0e0f1011121314151617 +Plaintext = 00112233445566778899aabbccddeeff +Ciphertext = 26449c1805dbe7aa25a468ce263a9e79 + +Cipher = ARIA-256-ECB +Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f +Plaintext = 00112233445566778899aabbccddeeff +Ciphertext = f92bd7c79fb72e2f2b8f80c1972d24fc + +# Additional ARIA mode vectors from http://210.104.33.10/ARIA/doc/ARIA-testvector-e.pdf +Cipher = ARIA-128-ECB +Key = 00112233445566778899aabbccddeeff +Plaintext = 11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd +Ciphertext = c6ecd08e22c30abdb215cf74e2075e6e29ccaac63448708d331b2f816c51b17d9e133d1528dbf0af5787c7f3a3f5c2bf6b6f345907a3055612ce072ff54de7d788424da6e8ccfe8172b391be499354165665ba7864917000a6eeb2ecb4a698edfc7887e7f556377614ab0a282293e6d884dbb84206cdb16ed1754e77a1f243fd086953f752cc1e46c7c794ae85537dcaec8dd721f55c93b6edfe2adea43873e8 + +Cipher = ARIA-128-CBC +Key = 00112233445566778899aabbccddeeff +IV = 0f1e2d3c4b5a69788796a5b4c3d2e1f0 +Plaintext = 11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd +Ciphertext = 49d61860b14909109cef0d22a9268134fadf9fb23151e9645fba75018bdb1538b53334634bbf7d4cd4b5377033060c155fe3948ca75de1031e1d85619e0ad61eb419a866b3c2dbfd10a4ed18b22149f75897f0b8668b0c1c542c687778835fb7cd46e45f85eaa7072437dd9fa6793d6f8d4ccefc4eb1ac641ac1bd30b18c6d64c49bca137eb21c2e04da62712ca2b4f540c57112c38791852cfac7a5d19ed83a + +Cipher = ARIA-128-CFB +Key = 00112233445566778899aabbccddeeff +IV = 0f1e2d3c4b5a69788796a5b4c3d2e1f0 +Plaintext = 11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd +Ciphertext = 3720e53ba7d615383406b09f0a05a200c07c21e6370f413a5d132500a68285017c61b434c7b7ca9685a51071861e4d4bb873b599b479e2d573dddeafba89f812ac6a9e44d554078eb3be94839db4b33da3f59c063123a7ef6f20e10579fa4fd239100ca73b52d4fcafeadee73f139f78f9b7614c2b3b9dbe010f87db06a89a9435f79ce8121431371f4e87b984e0230c22a6dacb32fc42dcc6accef33285bf11 + +Cipher = ARIA-128-CFB8 +Key = 00112233445566778899aabbccddeeff +IV = 0f1e2d3c4b5a69788796a5b4c3d2e1f0 +Plaintext = 11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd +Ciphertext = 373c8f6a965599ec785cc8f8149f6c81b632ccb8e0c6eb6a9707ae52c59257a41f94701c1096933127a90195ed0c8e98690547572423bb45c3d70e4a18ee56b967c10e000ba4df5fba7c404134a343d8375d04b151d161ef83417fe1748447d30a6723c406733df7d18aa39a20752d2381942e244811bb97f72eae446b1815aa690cd1b1adcbd007c0088ecdc91cb2e2caf0e11e72459878137eea64ac62a9a1 + +Cipher = ARIA-128-OFB +Key = 00112233445566778899aabbccddeeff +IV = 0f1e2d3c4b5a69788796a5b4c3d2e1f0 +Plaintext = 11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd +Ciphertext = 3720e53ba7d615383406b09f0a05a2000063063f0560083483faeb041c8adecef30cf80cefb002a0d280759168ec01db3d49f61aced260bd43eec0a2731730eec6fa4f2304319cf8ccac2d7be7833e4f8ae6ce967012c1c6badc5d28e7e4144f6bf5cebe01253ee202afce4bc61f28dec069a6f16f6c8a7dd2afae44148f6ff4d0029d5c607b5fa6b8c8a6301cde5c7033565cd0b8f0974ab490b236197ba04a + +Cipher = ARIA-128-CTR +Key = 00112233445566778899aabbccddeeff +IV = 00000000000000000000000000000000 +Plaintext = 11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd +Ciphertext = ac5d7de805a0bf1c57c854501af60fa11497e2a34519dea1569e91e5b5ccae2ff3bfa1bf975f4571f48be191613546c3911163c085f871f0e7ae5f2a085b81851c2a3ddf20ecb8fa51901aec8ee4ba32a35dab67bb72cd9140ad188a967ac0fbbdfa94ea6cce47dcf8525ab5a814cfeb2bb60ee2b126e2d9d847c1a9e96f9019e3e6a7fe40d3829afb73db1cc245646addb62d9b907baaafbe46a73dbc131d3d + +Cipher = ARIA-192-ECB +Key = 00112233445566778899aabbccddeeff0011223344556677 +Plaintext = 11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd +Ciphertext = 8d1470625f59ebacb0e55b534b3e462b5f23d33bff78f46c3c15911f4a21809aaccad80b4bda915aa9dae6bcebe06a6c83f77fd5391acfe61de2f646b5d447edbfd5bb49b12fbb9145b227895a757b2af1f7188734863d7b8b6ede5a5b2f06a0a233c8523d2db778fb31b0e311f32700152f33861e9d040c83b5eb40cd88ea49975709dc629365a189f78a3ec40345fc6a5a307a8f9a4413091e007eca5645a0 + +Cipher = ARIA-192-CBC +Key = 00112233445566778899aabbccddeeff0011223344556677 +IV = 0f1e2d3c4b5a69788796a5b4c3d2e1f0 +Plaintext = 11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd +Ciphertext = afe6cf23974b533c672a826264ea785f4e4f7f780dc7f3f1e0962b80902386d514e9c3e77259de92dd1102ffab086c1ea52a71260db5920a83295c25320e421147ca45d532f327b856ea947cd2196ae2e040826548b4c891b0ed0ca6e714dbc4631998d548110d666b3d54c2a091955c6f05beb4f62309368696c9791fc4c551564a2637f194346ec45fbca6c72a5b4612e208d531d6c34cc5c64eac6bd0cf8c + +Cipher = ARIA-192-CFB +Key = 00112233445566778899aabbccddeeff0011223344556677 +IV = 0f1e2d3c4b5a69788796a5b4c3d2e1f0 +Plaintext = 11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd +Ciphertext = 4171f7192bf4495494d2736129640f5c4d87a9a213664c9448477c6ecc2013598d9766952dd8c3868f17e36ef66fd84bfa45d1593d2d6ee3ea2115047d710d4fb66187caa3a315b3c8ea2d313962edcfe5a3e2028d5ba9a09fd5c65c19d3440e477f0cab0628ec6902c73ee02f1afee9f80115be7b9df82d1e28228e28581a20560e195cbb9e2b327bf56fd2d0ae5502e42c13e9b4015d4da42dc859252e7da4 + +Cipher = ARIA-192-CFB8 +Key = 00112233445566778899aabbccddeeff0011223344556677 +IV = 0f1e2d3c4b5a69788796a5b4c3d2e1f0 +Plaintext = 11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd +Ciphertext = 411d3b4f57f705aa4d13c46e2cf426af7c8c916ed7923d889f0047bbf11471b6d54f8757ef519339105be3cb69babb976a57d5631fc23cc3051fe9d36e8b8e27a2b2c0c4d31928ccbf30ea8239b46ba1b77f6198e7ecd2ce27b35958148e826f06aaf385bd30362ff141583e7c1d8924d44d36a1133094074631e18adafa9d2e55de98f6895c89d4266ebd33f3d4be5153a96fa12132ece2e81e66e55baa7ade + +Cipher = ARIA-192-OFB +Key = 00112233445566778899aabbccddeeff0011223344556677 +IV = 0f1e2d3c4b5a69788796a5b4c3d2e1f0 +Plaintext = 11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd +Ciphertext = 4171f7192bf4495494d2736129640f5cc224d26d364b5a06ddde13d0f1e74faa846de354c63cda77469d1a2d425c47ff41734c71b3fa1fcdc11e0b2de22bfeed54898e233df652c75ae136e61de6524e62b3f806fb2e8e616eb410a1b9500537e327ffb04f19f7f82fde2b122100261f81b82723bf936be7beaaf3067d1c036001f1ade71422268d274d7dc6c6ae1970b27a5f2c2f39c1d241fe8cac5ccd74e9 + +Cipher = ARIA-192-CTR +Key = 00112233445566778899aabbccddeeff0011223344556677 +IV = 00000000000000000000000000000000 +Plaintext = 11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd +Ciphertext = 08625ca8fe569c19ba7af3760a6ed1cef4d199263e999dde14082dbba7560b79a4c6b456b8707dce751f9854f18893dfdb3f4e5afa539733e6f1e70b98ba37891f8f81e95df8efc26c7ce043504cb18958b865e4e316cd2aa1c97f31bf23dc046ef326b95a692a191ba0f2a41c5fe9ae070f236ff7078e703b42666caafbdd20bad74ac4c20c0f46c7ca24c151716575c947da16c90cfe1bf217a41cfebe7531 + +Cipher = ARIA-256-ECB +Key = 00112233445566778899aabbccddeeff00112233445566778899aabbccddeeff +Plaintext = 11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd +Ciphertext = 58a875e6044ad7fffa4f58420f7f442d8e191016f28e79aefc01e204773280d7018e5f7a938ec30711719953bae86542cd7ebc752474c1a5f6eaaace2a7e29462ee7dfa5afdb84177ead95ccd4b4bb6e1ed17b9534cff0a5fc2941429cfee2ee49c7adbeb7e9d1b0d2a8531d942079596a27ed79f5b1dd13ecd604b07a48885a3afa0627a0e4e60a3c703af292f1baa77b702f16c54aa74bc727ea95c7468b00 + +Cipher = ARIA-256-CBC +Key = 00112233445566778899aabbccddeeff00112233445566778899aabbccddeeff +IV = 0f1e2d3c4b5a69788796a5b4c3d2e1f0 +Plaintext = 11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd +Ciphertext = 523a8a806ae621f155fdd28dbc34e1ab7b9b42432ad8b2efb96e23b13f0a6e52f36185d50ad002c5f601bee5493f118b243ee2e313642bffc3902e7b2efd9a12fa682edd2d23c8b9c5f043c18b17c1ec4b5867918270fbec1027c19ed6af833da5d620994668ca22f599791d292dd6273b2959082aafb7a996167cce1eec5f0cfd15f610d87e2dda9ba68ce1260ca54b222491418374294e7909b1e8551cd8de + +Cipher = ARIA-256-CFB +Key = 00112233445566778899aabbccddeeff00112233445566778899aabbccddeeff +IV = 0f1e2d3c4b5a69788796a5b4c3d2e1f0 +Plaintext = 11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd +Ciphertext = 26834705b0f2c0e2588d4a7f09009635f28bb93d8c31f870ec1e0bdb082b66fa402dd9c202be300c4517d196b14d4ce11dce97f7aaba54341b0d872cc9b63753a3e8556a14be6f7b3e27e3cfc39caf80f2a355aa50dc83c09c7b11828694f8e4aa726c528976b53f2c877f4991a3a8d28adb63bd751846ffb2350265e179d4990753ae8485ff9b4133ddad5875b84a90cbcfa62a045d726df71b6bda0eeca0be + +Cipher = ARIA-256-CFB8 +Key = 00112233445566778899aabbccddeeff00112233445566778899aabbccddeeff +IV = 0f1e2d3c4b5a69788796a5b4c3d2e1f0 +Plaintext = 11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd +Ciphertext = 26baa33651e1f66434fec88ef27fd2b9a79e246dd89a3ffa00e8bdb37155433e6c24bd0b87d9a85baa9f485ccb984f5ec24d6a3ef5e3c81396177f039cf580dfdb55d6e1c47a28921dfe369e12fd357b289ad3a5544e1c1bd616d454db9c5f91f603373f29d5b2ed1b4b51de80f28537bbd43d5e3b5dd071dc91153cbbe732dfc325821b06ed8acaae656dcf2da9f13e4f29db671476f1e644ff06d9b67d6bd4 + +Cipher = ARIA-256-OFB +Key = 00112233445566778899aabbccddeeff00112233445566778899aabbccddeeff +IV = 0f1e2d3c4b5a69788796a5b4c3d2e1f0 +Plaintext = 11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd +Ciphertext = 26834705b0f2c0e2588d4a7f0900963584c256815c4292b59f8d3f966a75b52345b4f5f98c785d3f368a8d5ff89b7f950ceab3cd63773c2621d652b8ef98b4196afb2c2b30496bc5b7d9e7f9084f9d855f63a511751c8909e7a6deadbe0a67a4fb89383ca5d209c6f66f793fc471195c476fb9c1eab2ac91e680e454b4f3ed9a67fb52f09c29b965b23cfa6f3f6bbb2a86c6cdbaa2857bf2486f543231892a52 + +Cipher = ARIA-256-CTR +Key = 00112233445566778899aabbccddeeff00112233445566778899aabbccddeeff +IV = 00000000000000000000000000000000 +Plaintext = 11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd +Ciphertext = 30026c329666141721178b99c0a1f1b2f06940253f7b3089e2a30ea86aa3c88f5940f05ad7ee41d71347bb7261e348f18360473fdf7d4e7723bffb4411cc13f6cdd89f3bc7b9c768145022c7a74f14d7c305cd012a10f16050c23f1ae5c23f45998d13fbaa041e51619577e0772764896a5d4516d8ffceb3bf7e05f613edd9a60cdcedaff9cfcaf4e00d445a54334f73ab2cad944e51d266548e61c6eb0aa1cd + +Title = ARIA GCM test vectors from RFC8269 + +Cipher = ARIA-128-GCM +Key = e91e5e75da65554a48181f3846349562 +IV = 000020e8f5eb00000000315e +AAD = 8008315ebf2e6fe020e8f5eb +Tag = 5abace3f37f5a736f4be984bbffbedc1 +Plaintext = f57af5fd4ae19562976ec57a5a7ad55a5af5c5e5c5fdf5c55ad57a4a7272d57262e9729566ed66e97ac54a4a5a7ad5e15ae5fdd5fd5ac5d56ae56ad5c572d54ae54ac55a956afd6aed5a4ac562957a9516991691d572fd14e97ae962ed7a9f4a955af572e162f57a956666e17ae1f54a95f566d54a66e16e4afd6a9f7ae1c5c55ae5d56afde916c5e94a6ec56695e14afde1148416e94ad57ac5146ed59d1cc5 +Ciphertext = 4d8a9a0675550c704b17d8c9ddc81a5cd6f7da34f2fe1b3db7cb3dfb9697102ea0f3c1fc2dbc873d44bceeae8e4442974ba21ff6789d3272613fb9631a7cf3f14bacbeb421633a90ffbe58c2fa6bdca534f10d0de0502ce1d531b6336e58878278531e5c22bc6c85bbd784d78d9e680aa19031aaf89101d669d7a3965c1f7e16229d7463e0535f4e253f5d18187d40b8ae0f564bd970b5e7e2adfb211e89a953 + +Cipher = ARIA-256-GCM +Key = 0c5ffd37a11edc42c325287fc0604f2e3e8cd5671a00fe3216aa5eb105783b54 +IV = 000020e8f5eb00000000315e +AAD = 8008315ebf2e6fe020e8f5eb +Tag = e210d6ced2cf430ff841472915e7ef48 +Plaintext = f57af5fd4ae19562976ec57a5a7ad55a5af5c5e5c5fdf5c55ad57a4a7272d57262e9729566ed66e97ac54a4a5a7ad5e15ae5fdd5fd5ac5d56ae56ad5c572d54ae54ac55a956afd6aed5a4ac562957a9516991691d572fd14e97ae962ed7a9f4a955af572e162f57a956666e17ae1f54a95f566d54a66e16e4afd6a9f7ae1c5c55ae5d56afde916c5e94a6ec56695e14afde1148416e94ad57ac5146ed59d1cc5 +Ciphertext = 6f9e4bcbc8c85fc0128fb1e4a0a20cb9932ff74581f54fc013dd054b19f99371425b352d97d3f337b90b63d1b082adeeea9d2d7391897d591b985e55fb50cb5350cf7d38dc27dda127c078a149c8eb98083d66363a46e3726af217d3a00275ad5bf772c7610ea4c23006878f0ee69a8397703169a419303f40b72e4573714d19e2697df61e7c7252e5abc6bade876ac4961bfac4d5e867afca351a48aed52822 + +Title = ARIA GCM self-generated test vectors + +Cipher = ARIA-128-GCM +Key = e91e5e75da65554a48181f3846349562 +# Shorter than default IV +IV = 0001020304 +AAD = 8008315ebf2e6fe020e8f5eb +Tag = ebaa2645bb154542117ee46031aa176e +Plaintext = f57af5fd4ae19562976ec57a5a7ad55a5af5c5e5c5fdf5c55ad57a4a7272d57262e9729566ed66e97ac54a4a5a7ad5e15ae5fdd5fd5ac5d56ae56ad5c572d54ae54ac55a956afd6aed5a4ac562957a9516991691d572fd14e97ae962ed7a9f4a955af572e162f57a956666e17ae1f54a95f566d54a66e16e4afd6a9f7ae1c5c55ae5d56afde916c5e94a6ec56695e14afde1148416e94ad57ac5146ed59d1cc5 +Ciphertext = 1723ccfc0ed44a12520473cfeb63bc933cd450a943f5f1cba78e19d72f80cc102acc51f2459a06cf6435182b8ddd451f83e13479efe5ec7dfbf16229f4017920fb41457a9b6fe1a401b30b2f332d827ae2f86e962326927c1ed8bfedac1f7a00ddde63bd392a8f28a488ba5974689f8d15b9b1739fb50aae0ff244026ec72064003c621b33ffc8086b0a97eefb70604a2826f6499f6eb12d67a0da03fc8e1482 + +Cipher = ARIA-128-GCM +Key = e91e5e75da65554a48181f3846349562 +# Longer than default IV +IV = 000102030405060708090a0b0c0d0e0f +AAD = 8008315ebf2e6fe020e8f5eb +Tag = 61f7f44c7da3c60195b29ae0b46051a4 +Plaintext = f57af5fd4ae19562976ec57a5a7ad55a5af5c5e5c5fdf5c55ad57a4a7272d57262e9729566ed66e97ac54a4a5a7ad5e15ae5fdd5fd5ac5d56ae56ad5c572d54ae54ac55a956afd6aed5a4ac562957a9516991691d572fd14e97ae962ed7a9f4a955af572e162f57a956666e17ae1f54a95f566d54a66e16e4afd6a9f7ae1c5c55ae5d56afde916c5e94a6ec56695e14afde1148416e94ad57ac5146ed59d1cc5 +Ciphertext = 0d3e98fcaf7a2c4fe9198d66add90d113e5e0ff47598c40a4bf501960d935a4156c9a4d46c9358a608e10a16479a4247c9ab9bb4a02809e3eac3571b832590fe2ca3e2d545741e36282d96c041fc7d39a46ed60214c2c0ec70f27768dfea4f9563b5d5c2ac33b1368a78f2908f5daf942433fec6ab588f09e908e95cc8dfa85d1a0dfd5835dc14e148323230c63eedc99a9ce942214cb3768b97b821d613629f + +Cipher = ARIA-128-GCM +Key = e91e5e75da65554a48181f3846349562 +# Extra long IV +IV = 000102030405060708090a0b0c0d0e0f1011 +AAD = 8008315ebf2e6fe020e8f5eb +Tag = c8b31ab6c2ddccab06b76af4e56e664e +Plaintext = f57af5fd4ae19562976ec57a5a7ad55a5af5c5e5c5fdf5c55ad57a4a7272d57262e9729566ed66e97ac54a4a5a7ad5e15ae5fdd5fd5ac5d56ae56ad5c572d54ae54ac55a956afd6aed5a4ac562957a9516991691d572fd14e97ae962ed7a9f4a955af572e162f57a956666e17ae1f54a95f566d54a66e16e4afd6a9f7ae1c5c55ae5d56afde916c5e94a6ec56695e14afde1148416e94ad57ac5146ed59d1cc5 +Ciphertext = 616a7bce24206501082cef7267c09a4affa54f8f82eb7fb2cdebdcaab4b6ab05c37e891c2d0fc90d15c5fb684247625c8bc0befad86896ae1c8f5a8506954caba4e13df0a0eb23853d4474e7f3b2c57bb398456a24d198e14566bce8a5f8d3bcdb12994d2fdc0f5cf19aeff990c1fe119e01f9fcc86757b1d43a9accf7b2f913c2208a46c1967f403867f89b46ffe96864c63f042265806ea5270e0dddd0e8dd + + +Title = ARIA CCM test vectors from IETF draft-ietf-avtcore-aria-srtp-02 + +# 16-byte Tag + +Cipher = ARIA-128-CCM +Key = 974bee725d44fc3992267b284c3c6750 +IV = 000020e8f5eb00000000315e +AAD = 8008315ebf2e6fe020e8f5eb +Tag = 40f04b6467e300f6b336aedf9df4185b +Plaintext = f57af5fd4ae19562976ec57a5a7ad55a5af5c5e5c5fdf5c55ad57a4a7272d57262e9729566ed66e97ac54a4a5a7ad5e15ae5fdd5fd5ac5d56ae56ad5c572d54ae54ac55a956afd6aed5a4ac562957a9516991691d572fd14e97ae962ed7a9f4a955af572e162f57a956666e17ae1f54a95f566d54a66e16e4afd6a9f7ae1c5c55ae5d56afde916c5e94a6ec56695e14afde1148416e94ad57ac5146ed59d1cc5 +Ciphertext = 621e408a2e455505b39f704dcbac4307daabbd6d670abc4e42f2fd2fca263f094f4683e6fb0b10c5093d42b69dce0ba546520e7c4400975713f3bde93ef131160b9cbcd6df78a1502be7c6ea8d395b9ed0078819c3105c0ab92cb67b16ba51bb1f53508738bf7a37c9a905439b88b7af9d51a407916fdfea8d43bf253721846dc1671391225fc58d9d0693c8ade6a4ffb034ee6543dd4e651b7a084eae60f855 + +Cipher = ARIA-256-CCM +Key = 0c5ffd37a11edc42c325287fc0604f2e3e8cd5671a00fe3216aa5eb105783b54 +IV = 000020e8f5eb00000000315e +AAD = 8008315ebf2e6fe020e8f5eb +Tag = 87b6bd222c55365a9c7d0b215b77ea41 +Plaintext = f57af5fd4ae19562976ec57a5a7ad55a5af5c5e5c5fdf5c55ad57a4a7272d57262e9729566ed66e97ac54a4a5a7ad5e15ae5fdd5fd5ac5d56ae56ad5c572d54ae54ac55a956afd6aed5a4ac562957a9516991691d572fd14e97ae962ed7a9f4a955af572e162f57a956666e17ae1f54a95f566d54a66e16e4afd6a9f7ae1c5c55ae5d56afde916c5e94a6ec56695e14afde1148416e94ad57ac5146ed59d1cc5 +Ciphertext = ff78128ee18ee3cb9fb0d20726a017ff67fbd09d3a4c38aa32f6d306d3fdda378e459b83ed005507449d6cd981a4c1e3ff4193870c276ef09b6317a01a2283206ae4b4be0d0b235422c8abb00122410656b75e1ffc7fb49c0d0c5d6169aa7623610579968037aee8e83fc26264ea866590fd620aa3c0a5f323d953aa7f8defb0d0d60ab5a9de44dbaf8eae74ea3ab5f30594154f405fd630aa4c4d5603efdfa1 + +# 8-byte Tag + +Cipher = ARIA-128-CCM +Key = 974bee725d44fc3992267b284c3c6750 +IV = 000020e8f5eb00000000315e +AAD = 8008315ebf2e6fe020e8f5eb +Tag = dd2282c93a67fe4b +Plaintext = f57af5fd4ae19562976ec57a5a7ad55a5af5c5e5c5fdf5c55ad57a4a7272d57262e9729566ed66e97ac54a4a5a7ad5e15ae5fdd5fd5ac5d56ae56ad5c572d54ae54ac55a956afd6aed5a4ac562957a9516991691d572fd14e97ae962ed7a9f4a955af572e162f57a956666e17ae1f54a95f566d54a66e16e4afd6a9f7ae1c5c55ae5d56afde916c5e94a6ec56695e14afde1148416e94ad57ac5146ed59d1cc5 +Ciphertext = 621e408a2e455505b39f704dcbac4307daabbd6d670abc4e42f2fd2fca263f094f4683e6fb0b10c5093d42b69dce0ba546520e7c4400975713f3bde93ef131160b9cbcd6df78a1502be7c6ea8d395b9ed0078819c3105c0ab92cb67b16ba51bb1f53508738bf7a37c9a905439b88b7af9d51a407916fdfea8d43bf253721846dc1671391225fc58d9d0693c8ade6a4ffb034ee6543dd4e651b7a084eae60f855 + +Cipher = ARIA-256-CCM +Key = 0c5ffd37a11edc42c325287fc0604f2e3e8cd5671a00fe3216aa5eb105783b54 +IV = 000020e8f5eb00000000315e +AAD = 8008315ebf2e6fe020e8f5eb +Tag = 828dc0088f99a7ef +Plaintext = f57af5fd4ae19562976ec57a5a7ad55a5af5c5e5c5fdf5c55ad57a4a7272d57262e9729566ed66e97ac54a4a5a7ad5e15ae5fdd5fd5ac5d56ae56ad5c572d54ae54ac55a956afd6aed5a4ac562957a9516991691d572fd14e97ae962ed7a9f4a955af572e162f57a956666e17ae1f54a95f566d54a66e16e4afd6a9f7ae1c5c55ae5d56afde916c5e94a6ec56695e14afde1148416e94ad57ac5146ed59d1cc5 +Ciphertext = ff78128ee18ee3cb9fb0d20726a017ff67fbd09d3a4c38aa32f6d306d3fdda378e459b83ed005507449d6cd981a4c1e3ff4193870c276ef09b6317a01a2283206ae4b4be0d0b235422c8abb00122410656b75e1ffc7fb49c0d0c5d6169aa7623610579968037aee8e83fc26264ea866590fd620aa3c0a5f323d953aa7f8defb0d0d60ab5a9de44dbaf8eae74ea3ab5f30594154f405fd630aa4c4d5603efdfa1 + +# 12-byte Tag + +Cipher = ARIA-128-CCM +Key = 974bee725d44fc3992267b284c3c6750 +IV = 000020e8f5eb00000000315e +AAD = 8008315ebf2e6fe020e8f5eb +Tag = 01f3dedd15238da5ebfb1590 +Plaintext = f57af5fd4ae19562976ec57a5a7ad55a5af5c5e5c5fdf5c55ad57a4a7272d57262e9729566ed66e97ac54a4a5a7ad5e15ae5fdd5fd5ac5d56ae56ad5c572d54ae54ac55a956afd6aed5a4ac562957a9516991691d572fd14e97ae962ed7a9f4a955af572e162f57a956666e17ae1f54a95f566d54a66e16e4afd6a9f7ae1c5c55ae5d56afde916c5e94a6ec56695e14afde1148416e94ad57ac5146ed59d1cc5 +Ciphertext = 621e408a2e455505b39f704dcbac4307daabbd6d670abc4e42f2fd2fca263f094f4683e6fb0b10c5093d42b69dce0ba546520e7c4400975713f3bde93ef131160b9cbcd6df78a1502be7c6ea8d395b9ed0078819c3105c0ab92cb67b16ba51bb1f53508738bf7a37c9a905439b88b7af9d51a407916fdfea8d43bf253721846dc1671391225fc58d9d0693c8ade6a4ffb034ee6543dd4e651b7a084eae60f855 + +Cipher = ARIA-256-CCM +Key = 0c5ffd37a11edc42c325287fc0604f2e3e8cd5671a00fe3216aa5eb105783b54 +IV = 000020e8f5eb00000000315e +AAD = 8008315ebf2e6fe020e8f5eb +Tag = 3615b7f90a651de15da20fb6 +Plaintext = f57af5fd4ae19562976ec57a5a7ad55a5af5c5e5c5fdf5c55ad57a4a7272d57262e9729566ed66e97ac54a4a5a7ad5e15ae5fdd5fd5ac5d56ae56ad5c572d54ae54ac55a956afd6aed5a4ac562957a9516991691d572fd14e97ae962ed7a9f4a955af572e162f57a956666e17ae1f54a95f566d54a66e16e4afd6a9f7ae1c5c55ae5d56afde916c5e94a6ec56695e14afde1148416e94ad57ac5146ed59d1cc5 +Ciphertext = ff78128ee18ee3cb9fb0d20726a017ff67fbd09d3a4c38aa32f6d306d3fdda378e459b83ed005507449d6cd981a4c1e3ff4193870c276ef09b6317a01a2283206ae4b4be0d0b235422c8abb00122410656b75e1ffc7fb49c0d0c5d6169aa7623610579968037aee8e83fc26264ea866590fd620aa3c0a5f323d953aa7f8defb0d0d60ab5a9de44dbaf8eae74ea3ab5f30594154f405fd630aa4c4d5603efdfa1 + +# Test that the tag can be set after specifying AAD. +Cipher = ARIA-256-CCM +Key = 0c5ffd37a11edc42c325287fc0604f2e3e8cd5671a00fe3216aa5eb105783b54 +IV = 000020e8f5eb00000000315e +AAD = 8008315ebf2e6fe020e8f5eb +Tag = 3615b7f90a651de15da20fb6 +SetTagLate = TRUE +Plaintext = f57af5fd4ae19562976ec57a5a7ad55a5af5c5e5c5fdf5c55ad57a4a7272d57262e9729566ed66e97ac54a4a5a7ad5e15ae5fdd5fd5ac5d56ae56ad5c572d54ae54ac55a956afd6aed5a4ac562957a9516991691d572fd14e97ae962ed7a9f4a955af572e162f57a956666e17ae1f54a95f566d54a66e16e4afd6a9f7ae1c5c55ae5d56afde916c5e94a6ec56695e14afde1148416e94ad57ac5146ed59d1cc5 +Ciphertext = ff78128ee18ee3cb9fb0d20726a017ff67fbd09d3a4c38aa32f6d306d3fdda378e459b83ed005507449d6cd981a4c1e3ff4193870c276ef09b6317a01a2283206ae4b4be0d0b235422c8abb00122410656b75e1ffc7fb49c0d0c5d6169aa7623610579968037aee8e83fc26264ea866590fd620aa3c0a5f323d953aa7f8defb0d0d60ab5a9de44dbaf8eae74ea3ab5f30594154f405fd630aa4c4d5603efdfa1 diff --git a/test/recipes/30-test_evp_data/evpciph_bf.txt b/test/recipes/30-test_evp_data/evpciph_bf.txt index 2f99db19e0..d0fcb288ec 100644 --- a/test/recipes/30-test_evp_data/evpciph_bf.txt +++ b/test/recipes/30-test_evp_data/evpciph_bf.txt @@ -10,20 +10,17 @@ Title = Self generated BF test vectors Cipher = BF-ECB -Availablein = default Key = 000102030405060708090a0b0c0d0e0f Plaintext = 0f0e0c0d0b0a09080706050403020100 Ciphertext = 079590e0010626685653b9b6c2a406e0 #Bigger key Cipher = BF-ECB -Availablein = default Key = 000102030405060708090a0b0c0d0e0f00000000 Plaintext = 0f0e0c0d0b0a09080706050403020100 Ciphertext = 7a0fe3734ad4785b49e59296b7861789 Cipher = BF-CBC -Availablein = default Key = 000102030405060708090a0b0c0d0e0f IV = 0101010101010101 Plaintext = 0f0e0c0d0b0a09080706050403020100 @@ -31,14 +28,12 @@ Ciphertext = 39c65006742b62a49f7a40ff69749c0a #Bigger key Cipher = BF-CBC -Availablein = default Key = 000102030405060708090a0b0c0d0e0f00000000 IV = 0101010101010101 Plaintext = 0f0e0c0d0b0a09080706050403020100 Ciphertext = 3a5cefdb91e56e7aab45e7ea562bd465 Cipher = BF-OFB -Availablein = default Key = 0001020304050607 IV = 0101010101010101 Plaintext = 0f0e0c0d0b0a09080706050403020100 @@ -46,14 +41,12 @@ Ciphertext = 27be8331cdc52dc61724029d302b9358 #Bigger key Cipher = BF-OFB -Availablein = default Key = 000102030405060700000000 IV = 0101010101010101 Plaintext = 0f0e0c0d0b0a09080706050403020100 Ciphertext = f108f229cc1cbe228aa3b2407979289a Cipher = BF-CFB -Availablein = default Key = 0001020304050607 IV = 0101010101010101 Plaintext = 0f0e0c0d0b0a09080706050403020100 @@ -61,7 +54,6 @@ Ciphertext = 27be8331cdc52dc675a93625f90f5db4 #Bigger key Cipher = BF-CFB -Availablein = default Key = 000102030405060700000000 IV = 0101010101010101 Plaintext = 0f0e0c0d0b0a09080706050403020100 diff --git a/test/recipes/30-test_evp_data/evpciph_camellia.txt b/test/recipes/30-test_evp_data/evpciph_camellia.txt new file mode 100644 index 0000000000..3a48fd778e --- /dev/null +++ b/test/recipes/30-test_evp_data/evpciph_camellia.txt @@ -0,0 +1,626 @@ +# +# Copyright 2001-2020 The OpenSSL Project Authors. All Rights Reserved. +# +# Licensed under the Apache License 2.0 (the "License"). You may not use +# this file except in compliance with the License. You can obtain a copy +# in the file LICENSE in the source distribution or at +# https://www.openssl.org/source/license.html + +# Tests start with one of these keywords +# Cipher Decrypt Derive Digest Encoding KDF MAC PBE +# PrivPubKeyPair Sign Verify VerifyRecover +# and continue until a blank line. Lines starting with a pound sign are ignored. + +Title = Camellia tests from RFC3713 + +# For all ECB encrypts and decrypts, the transformed sequence is +# CAMELLIA-bits-ECB:key::plaintext:ciphertext:encdec +Cipher = CAMELLIA-128-ECB +Key = 0123456789abcdeffedcba9876543210 +Plaintext = 0123456789abcdeffedcba9876543210 +Ciphertext = 67673138549669730857065648eabe43 + +Cipher = CAMELLIA-192-ECB +Key = 0123456789abcdeffedcba98765432100011223344556677 +Plaintext = 0123456789abcdeffedcba9876543210 +Ciphertext = b4993401b3e996f84ee5cee7d79b09b9 + +Cipher = CAMELLIA-256-ECB +Key = 0123456789abcdeffedcba987654321000112233445566778899aabbccddeeff +Plaintext = 0123456789abcdeffedcba9876543210 +Ciphertext = 9acc237dff16d76c20ef7c919e3a7509 + +# ECB-CAMELLIA128.Encrypt +Cipher = CAMELLIA-128-ECB +Key = 000102030405060708090A0B0C0D0E0F +Operation = ENCRYPT +Plaintext = 00112233445566778899AABBCCDDEEFF +Ciphertext = 77CF412067AF8270613529149919546F + +Cipher = CAMELLIA-192-ECB +Key = 000102030405060708090A0B0C0D0E0F1011121314151617 +Operation = ENCRYPT +Plaintext = 00112233445566778899AABBCCDDEEFF +Ciphertext = B22F3C36B72D31329EEE8ADDC2906C68 + +Cipher = CAMELLIA-256-ECB +Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F +Operation = ENCRYPT +Plaintext = 00112233445566778899AABBCCDDEEFF +Ciphertext = 2EDF1F3418D53B88841FC8985FB1ECF2 + + +# ECB-CAMELLIA128.Encrypt and ECB-CAMELLIA128.Decrypt +Cipher = CAMELLIA-128-ECB +Key = 2B7E151628AED2A6ABF7158809CF4F3C +Plaintext = 6BC1BEE22E409F96E93D7E117393172A +Ciphertext = 432FC5DCD628115B7C388D770B270C96 + +Cipher = CAMELLIA-128-ECB +Key = 2B7E151628AED2A6ABF7158809CF4F3C +Plaintext = AE2D8A571E03AC9C9EB76FAC45AF8E51 +Ciphertext = 0BE1F14023782A22E8384C5ABB7FAB2B + +Cipher = CAMELLIA-128-ECB +Key = 2B7E151628AED2A6ABF7158809CF4F3C +Plaintext = 30C81C46A35CE411E5FBC1191A0A52EF +Ciphertext = A0A1ABCD1893AB6FE0FE5B65DF5F8636 + +Cipher = CAMELLIA-128-ECB +Key = 2B7E151628AED2A6ABF7158809CF4F3C +Plaintext = F69F2445DF4F9B17AD2B417BE66C3710 +Ciphertext = E61925E0D5DFAA9BB29F815B3076E51A + + +# ECB-CAMELLIA192.Encrypt and ECB-CAMELLIA192.Decrypt +Cipher = CAMELLIA-192-ECB +Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B +Plaintext = 6BC1BEE22E409F96E93D7E117393172A +Ciphertext = CCCC6C4E138B45848514D48D0D3439D3 + +Cipher = CAMELLIA-192-ECB +Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B +Plaintext = AE2D8A571E03AC9C9EB76FAC45AF8E51 +Ciphertext = 5713C62C14B2EC0F8393B6AFD6F5785A + +Cipher = CAMELLIA-192-ECB +Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B +Plaintext = 30C81C46A35CE411E5FBC1191A0A52EF +Ciphertext = B40ED2B60EB54D09D030CF511FEEF366 + +Cipher = CAMELLIA-192-ECB +Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B +Plaintext = F69F2445DF4F9B17AD2B417BE66C3710 +Ciphertext = 909DBD95799096748CB27357E73E1D26 + + +# ECB-CAMELLIA256.Encrypt and ECB-CAMELLIA256.Decrypt +Cipher = CAMELLIA-256-ECB +Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 +Plaintext = 6BC1BEE22E409F96E93D7E117393172A +Ciphertext = BEFD219B112FA00098919CD101C9CCFA + +Cipher = CAMELLIA-256-ECB +Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 +Plaintext = AE2D8A571E03AC9C9EB76FAC45AF8E51 +Ciphertext = C91D3A8F1AEA08A9386CF4B66C0169EA + +Cipher = CAMELLIA-256-ECB +Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 +Plaintext = 30C81C46A35CE411E5FBC1191A0A52EF +Ciphertext = A623D711DC5F25A51BB8A80D56397D28 + +Cipher = CAMELLIA-256-ECB +Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 +Plaintext = F69F2445DF4F9B17AD2B417BE66C3710 +Ciphertext = 7960109FB6DC42947FCFE59EA3C5EB6B + + +# For all CBC encrypts and decrypts, the transformed sequence is +# CAMELLIA-bits-CBC:key:IV/ciphertext':plaintext:ciphertext:encdec +# CBC-CAMELLIA128.Encrypt and CBC-CAMELLIA128.Decrypt +Cipher = CAMELLIA-128-CBC +Key = 2B7E151628AED2A6ABF7158809CF4F3C +IV = 000102030405060708090A0B0C0D0E0F +Plaintext = 6BC1BEE22E409F96E93D7E117393172A +Ciphertext = 1607CF494B36BBF00DAEB0B503C831AB + +Cipher = CAMELLIA-128-CBC +Key = 2B7E151628AED2A6ABF7158809CF4F3C +IV = 1607CF494B36BBF00DAEB0B503C831AB +Plaintext = AE2D8A571E03AC9C9EB76FAC45AF8E51 +Ciphertext = A2F2CF671629EF7840C5A5DFB5074887 + +Cipher = CAMELLIA-128-CBC +Key = 2B7E151628AED2A6ABF7158809CF4F3C +IV = A2F2CF671629EF7840C5A5DFB5074887 +Plaintext = 30C81C46A35CE411E5FBC1191A0A52EF +Ciphertext = 0F06165008CF8B8B5A63586362543E54 + +Cipher = CAMELLIA-128-CBC +Key = 2B7E151628AED2A6ABF7158809CF4F3C +IV = 36A84CDAFD5F9A85ADA0F0A993D6D577 +Plaintext = F69F2445DF4F9B17AD2B417BE66C3710 +Ciphertext = 74C64268CDB8B8FAF5B34E8AF3732980 + + +# CBC-CAMELLIA192.Encrypt and CBC-CAMELLIA192.Decrypt +Cipher = CAMELLIA-192-CBC +Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B +IV = 000102030405060708090A0B0C0D0E0F +Plaintext = 6BC1BEE22E409F96E93D7E117393172A +Ciphertext = 2A4830AB5AC4A1A2405955FD2195CF93 + +Cipher = CAMELLIA-192-CBC +Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B +IV = 2A4830AB5AC4A1A2405955FD2195CF93 +Plaintext = AE2D8A571E03AC9C9EB76FAC45AF8E51 +Ciphertext = 5D5A869BD14CE54264F892A6DD2EC3D5 + +Cipher = CAMELLIA-192-CBC +Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B +IV = 5D5A869BD14CE54264F892A6DD2EC3D5 +Plaintext = 30C81C46A35CE411E5FBC1191A0A52EF +Ciphertext = 37D359C3349836D884E310ADDF68C449 + +Cipher = CAMELLIA-192-CBC +Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B +IV = 37D359C3349836D884E310ADDF68C449 +Plaintext = F69F2445DF4F9B17AD2B417BE66C3710 +Ciphertext = 01FAAA930B4AB9916E9668E1428C6B08 + + +# CBC-CAMELLIA256.Encrypt and CBC-CAMELLIA256.Decrypt +Cipher = CAMELLIA-256-CBC +Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 +IV = 000102030405060708090A0B0C0D0E0F +Plaintext = 6BC1BEE22E409F96E93D7E117393172A +Ciphertext = E6CFA35FC02B134A4D2C0B6737AC3EDA + +Cipher = CAMELLIA-256-CBC +Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 +IV = E6CFA35FC02B134A4D2C0B6737AC3EDA +Plaintext = AE2D8A571E03AC9C9EB76FAC45AF8E51 +Ciphertext = 36CBEB73BD504B4070B1B7DE2B21EB50 + +Cipher = CAMELLIA-256-CBC +Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 +IV = 36CBEB73BD504B4070B1B7DE2B21EB50 +Plaintext = 30C81C46A35CE411E5FBC1191A0A52EF +Ciphertext = E31A6055297D96CA3330CDF1B1860A83 + +Cipher = CAMELLIA-256-CBC +Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 +IV = E31A6055297D96CA3330CDF1B1860A83 +Plaintext = F69F2445DF4F9B17AD2B417BE66C3710 +Ciphertext = 5D563F6D1CCCF236051C0C5C1C58F28F + + +# We don't support CFB{1,8}-CAMELLIAxxx.{En,De}crypt +# For all CFB128 encrypts and decrypts, the transformed sequence is +# CAMELLIA-bits-CFB:key:IV/ciphertext':plaintext:ciphertext:encdec +# CFB128-CAMELLIA128.Encrypt +Cipher = CAMELLIA-128-CFB +Key = 2B7E151628AED2A6ABF7158809CF4F3C +IV = 000102030405060708090A0B0C0D0E0F +Operation = ENCRYPT +Plaintext = 6BC1BEE22E409F96E93D7E117393172A +Ciphertext = 14F7646187817EB586599146B82BD719 + +Cipher = CAMELLIA-128-CFB +Key = 2B7E151628AED2A6ABF7158809CF4F3C +IV = 14F7646187817EB586599146B82BD719 +Operation = ENCRYPT +Plaintext = AE2D8A571E03AC9C9EB76FAC45AF8E51 +Ciphertext = A53D28BB82DF741103EA4F921A44880B + +Cipher = CAMELLIA-128-CFB +Key = 2B7E151628AED2A6ABF7158809CF4F3C +IV = A53D28BB82DF741103EA4F921A44880B +Operation = ENCRYPT +Plaintext = 30C81C46A35CE411E5FBC1191A0A52EF +Ciphertext = 9C2157A664626D1DEF9EA420FDE69B96 + +Cipher = CAMELLIA-128-CFB +Key = 2B7E151628AED2A6ABF7158809CF4F3C +IV = 9C2157A664626D1DEF9EA420FDE69B96 +Operation = ENCRYPT +Plaintext = F69F2445DF4F9B17AD2B417BE66C3710 +Ciphertext = 742A25F0542340C7BAEF24CA8482BB09 + + +# CFB128-CAMELLIA128.Decrypt +Cipher = CAMELLIA-128-CFB +Key = 2B7E151628AED2A6ABF7158809CF4F3C +IV = 000102030405060708090A0B0C0D0E0F +Operation = DECRYPT +Plaintext = 6BC1BEE22E409F96E93D7E117393172A +Ciphertext = 14F7646187817EB586599146B82BD719 + +Cipher = CAMELLIA-128-CFB +Key = 2B7E151628AED2A6ABF7158809CF4F3C +IV = 14F7646187817EB586599146B82BD719 +Operation = DECRYPT +Plaintext = AE2D8A571E03AC9C9EB76FAC45AF8E51 +Ciphertext = A53D28BB82DF741103EA4F921A44880B + +Cipher = CAMELLIA-128-CFB +Key = 2B7E151628AED2A6ABF7158809CF4F3C +IV = A53D28BB82DF741103EA4F921A44880B +Operation = DECRYPT +Plaintext = 30C81C46A35CE411E5FBC1191A0A52EF +Ciphertext = 9C2157A664626D1DEF9EA420FDE69B96 + +Cipher = CAMELLIA-128-CFB +Key = 2B7E151628AED2A6ABF7158809CF4F3C +IV = 9C2157A664626D1DEF9EA420FDE69B96 +Operation = DECRYPT +Plaintext = F69F2445DF4F9B17AD2B417BE66C3710 +Ciphertext = 742A25F0542340C7BAEF24CA8482BB09 + + +# CFB128-CAMELLIA192.Encrypt +Cipher = CAMELLIA-192-CFB +Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B +IV = 000102030405060708090A0B0C0D0E0F +Operation = ENCRYPT +Plaintext = 6BC1BEE22E409F96E93D7E117393172A +Ciphertext = C832BB9780677DAA82D9B6860DCD565E + +Cipher = CAMELLIA-192-CFB +Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B +IV = C832BB9780677DAA82D9B6860DCD565E +Operation = ENCRYPT +Plaintext = AE2D8A571E03AC9C9EB76FAC45AF8E51 +Ciphertext = 86F8491627906D780C7A6D46EA331F98 + +Cipher = CAMELLIA-192-CFB +Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B +IV = 86F8491627906D780C7A6D46EA331F98 +Operation = ENCRYPT +Plaintext = 30C81C46A35CE411E5FBC1191A0A52EF +Ciphertext = 69511CCE594CF710CB98BB63D7221F01 + +Cipher = CAMELLIA-192-CFB +Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B +IV = 69511CCE594CF710CB98BB63D7221F01 +Operation = ENCRYPT +Plaintext = F69F2445DF4F9B17AD2B417BE66C3710 +Ciphertext = D5B5378A3ABED55803F25565D8907B84 + + +# CFB128-CAMELLIA192.Decrypt +Cipher = CAMELLIA-192-CFB +Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B +IV = 000102030405060708090A0B0C0D0E0F +Operation = DECRYPT +Plaintext = 6BC1BEE22E409F96E93D7E117393172A +Ciphertext = C832BB9780677DAA82D9B6860DCD565E + +Cipher = CAMELLIA-192-CFB +Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B +IV = C832BB9780677DAA82D9B6860DCD565E +Operation = DECRYPT +Plaintext = AE2D8A571E03AC9C9EB76FAC45AF8E51 +Ciphertext = 86F8491627906D780C7A6D46EA331F98 + +Cipher = CAMELLIA-192-CFB +Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B +IV = 86F8491627906D780C7A6D46EA331F98 +Operation = DECRYPT +Plaintext = 30C81C46A35CE411E5FBC1191A0A52EF +Ciphertext = 69511CCE594CF710CB98BB63D7221F01 + +Cipher = CAMELLIA-192-CFB +Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B +IV = 69511CCE594CF710CB98BB63D7221F01 +Operation = DECRYPT +Plaintext = F69F2445DF4F9B17AD2B417BE66C3710 +Ciphertext = D5B5378A3ABED55803F25565D8907B84 + + +# CFB128-CAMELLIA256.Encrypt +Cipher = CAMELLIA-256-CFB +Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 +IV = 000102030405060708090A0B0C0D0E0F +Operation = ENCRYPT +Plaintext = 6BC1BEE22E409F96E93D7E117393172A +Ciphertext = CF6107BB0CEA7D7FB1BD31F5E7B06C93 + +Cipher = CAMELLIA-256-CFB +Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 +IV = CF6107BB0CEA7D7FB1BD31F5E7B06C93 +Operation = ENCRYPT +Plaintext = AE2D8A571E03AC9C9EB76FAC45AF8E51 +Ciphertext = 89BEDB4CCDD864EA11BA4CBE849B5E2B + +Cipher = CAMELLIA-256-CFB +Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 +IV = 89BEDB4CCDD864EA11BA4CBE849B5E2B +Operation = ENCRYPT +Plaintext = 30C81C46A35CE411E5FBC1191A0A52EF +Ciphertext = 555FC3F34BDD2D54C62D9E3BF338C1C4 + +Cipher = CAMELLIA-256-CFB +Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 +IV = 555FC3F34BDD2D54C62D9E3BF338C1C4 +Operation = ENCRYPT +Plaintext = F69F2445DF4F9B17AD2B417BE66C3710 +Ciphertext = 5953ADCE14DB8C7F39F1BD39F359BFFA + + +# CFB128-CAMELLIA256.Decrypt +Cipher = CAMELLIA-256-CFB +Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 +IV = 000102030405060708090A0B0C0D0E0F +Operation = DECRYPT +Plaintext = 6BC1BEE22E409F96E93D7E117393172A +Ciphertext = CF6107BB0CEA7D7FB1BD31F5E7B06C93 + +Cipher = CAMELLIA-256-CFB +Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 +IV = CF6107BB0CEA7D7FB1BD31F5E7B06C93 +Operation = DECRYPT +Plaintext = AE2D8A571E03AC9C9EB76FAC45AF8E51 +Ciphertext = 89BEDB4CCDD864EA11BA4CBE849B5E2B + +Cipher = CAMELLIA-256-CFB +Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 +IV = 89BEDB4CCDD864EA11BA4CBE849B5E2B +Operation = DECRYPT +Plaintext = 30C81C46A35CE411E5FBC1191A0A52EF +Ciphertext = 555FC3F34BDD2D54C62D9E3BF338C1C4 + +Cipher = CAMELLIA-256-CFB +Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 +IV = 555FC3F34BDD2D54C62D9E3BF338C1C4 +Operation = DECRYPT +Plaintext = F69F2445DF4F9B17AD2B417BE66C3710 +Ciphertext = 5953ADCE14DB8C7F39F1BD39F359BFFA + + +# For all OFB encrypts and decrypts, the transformed sequence is +# CAMELLIA-bits-OFB:key:IV/output':plaintext:ciphertext:encdec +# OFB-CAMELLIA128.Encrypt +Cipher = CAMELLIA-128-OFB +Key = 2B7E151628AED2A6ABF7158809CF4F3C +IV = 000102030405060708090A0B0C0D0E0F +Operation = ENCRYPT +Plaintext = 6BC1BEE22E409F96E93D7E117393172A +Ciphertext = 14F7646187817EB586599146B82BD719 + +Cipher = CAMELLIA-128-OFB +Key = 2B7E151628AED2A6ABF7158809CF4F3C +IV = 50FE67CC996D32B6DA0937E99BAFEC60 +Operation = ENCRYPT +Plaintext = AE2D8A571E03AC9C9EB76FAC45AF8E51 +Ciphertext = 25623DB569CA51E01482649977E28D84 + +Cipher = CAMELLIA-128-OFB +Key = 2B7E151628AED2A6ABF7158809CF4F3C +IV = D9A4DADA0892239F6B8B3D7680E15674 +Operation = ENCRYPT +Plaintext = 30C81C46A35CE411E5FBC1191A0A52EF +Ciphertext = C776634A60729DC657D12B9FCA801E98 + +Cipher = CAMELLIA-128-OFB +Key = 2B7E151628AED2A6ABF7158809CF4F3C +IV = A78819583F0308E7A6BF36B1386ABF23 +Operation = ENCRYPT +Plaintext = F69F2445DF4F9B17AD2B417BE66C3710 +Ciphertext = D776379BE0E50825E681DA1A4C980E8E + + +# OFB-CAMELLIA128.Decrypt +Cipher = CAMELLIA-128-OFB +Key = 2B7E151628AED2A6ABF7158809CF4F3C +IV = 000102030405060708090A0B0C0D0E0F +Operation = DECRYPT +Plaintext = 6BC1BEE22E409F96E93D7E117393172A +Ciphertext = 14F7646187817EB586599146B82BD719 + +Cipher = CAMELLIA-128-OFB +Key = 2B7E151628AED2A6ABF7158809CF4F3C +IV = 50FE67CC996D32B6DA0937E99BAFEC60 +Operation = DECRYPT +Plaintext = AE2D8A571E03AC9C9EB76FAC45AF8E51 +Ciphertext = 25623DB569CA51E01482649977E28D84 + +Cipher = CAMELLIA-128-OFB +Key = 2B7E151628AED2A6ABF7158809CF4F3C +IV = D9A4DADA0892239F6B8B3D7680E15674 +Operation = DECRYPT +Plaintext = 30C81C46A35CE411E5FBC1191A0A52EF +Ciphertext = C776634A60729DC657D12B9FCA801E98 + +Cipher = CAMELLIA-128-OFB +Key = 2B7E151628AED2A6ABF7158809CF4F3C +IV = A78819583F0308E7A6BF36B1386ABF23 +Operation = DECRYPT +Plaintext = F69F2445DF4F9B17AD2B417BE66C3710 +Ciphertext = D776379BE0E50825E681DA1A4C980E8E + + +# OFB-CAMELLIA192.Encrypt +Cipher = CAMELLIA-192-OFB +Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B +IV = 000102030405060708090A0B0C0D0E0F +Operation = ENCRYPT +Plaintext = 6BC1BEE22E409F96E93D7E117393172A +Ciphertext = C832BB9780677DAA82D9B6860DCD565E + +Cipher = CAMELLIA-192-OFB +Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B +IV = A609B38DF3B1133DDDFF2718BA09565E +Operation = ENCRYPT +Plaintext = AE2D8A571E03AC9C9EB76FAC45AF8E51 +Ciphertext = 8ECEB7D0350D72C7F78562AEBDF99339 + +Cipher = CAMELLIA-192-OFB +Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B +IV = 52EF01DA52602FE0975F78AC84BF8A50 +Operation = ENCRYPT +Plaintext = 30C81C46A35CE411E5FBC1191A0A52EF +Ciphertext = BDD62DBBB9700846C53B507F544696F0 + +Cipher = CAMELLIA-192-OFB +Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B +IV = BD5286AC63AABD7EB067AC54B553F71D +Operation = ENCRYPT +Plaintext = F69F2445DF4F9B17AD2B417BE66C3710 +Ciphertext = E28014E046B802F385C4C2E13EAD4A72 + + +# OFB-CAMELLIA192.Decrypt +Cipher = CAMELLIA-192-OFB +Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B +IV = 000102030405060708090A0B0C0D0E0F +Operation = DECRYPT +Plaintext = 6BC1BEE22E409F96E93D7E117393172A +Ciphertext = C832BB9780677DAA82D9B6860DCD565E + +Cipher = CAMELLIA-192-OFB +Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B +IV = A609B38DF3B1133DDDFF2718BA09565E +Operation = DECRYPT +Plaintext = AE2D8A571E03AC9C9EB76FAC45AF8E51 +Ciphertext = 8ECEB7D0350D72C7F78562AEBDF99339 + +Cipher = CAMELLIA-192-OFB +Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B +IV = 52EF01DA52602FE0975F78AC84BF8A50 +Operation = DECRYPT +Plaintext = 30C81C46A35CE411E5FBC1191A0A52EF +Ciphertext = BDD62DBBB9700846C53B507F544696F0 + +Cipher = CAMELLIA-192-OFB +Key = 8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B +IV = BD5286AC63AABD7EB067AC54B553F71D +Operation = DECRYPT +Plaintext = F69F2445DF4F9B17AD2B417BE66C3710 +Ciphertext = E28014E046B802F385C4C2E13EAD4A72 + + +# OFB-CAMELLIA256.Encrypt +Cipher = CAMELLIA-256-OFB +Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 +IV = 000102030405060708090A0B0C0D0E0F +Operation = ENCRYPT +Plaintext = 6BC1BEE22E409F96E93D7E117393172A +Ciphertext = CF6107BB0CEA7D7FB1BD31F5E7B06C93 + +Cipher = CAMELLIA-256-OFB +Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 +IV = B7BF3A5DF43989DD97F0FA97EBCE2F4A +Operation = ENCRYPT +Plaintext = AE2D8A571E03AC9C9EB76FAC45AF8E51 +Ciphertext = 127AD97E8E3994E4820027D7BA109368 + +Cipher = CAMELLIA-256-OFB +Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 +IV = E1C656305ED1A7A6563805746FE03EDC +Operation = ENCRYPT +Plaintext = 30C81C46A35CE411E5FBC1191A0A52EF +Ciphertext = 6BFF6265A6A6B7A535BC65A80B17214E + +Cipher = CAMELLIA-256-OFB +Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 +IV = 41635BE625B48AFC1666DD42A09D96E7 +Operation = ENCRYPT +Plaintext = F69F2445DF4F9B17AD2B417BE66C3710 +Ciphertext = 0A4A0404E26AA78A27CB271E8BF3CF20 + + +# OFB-CAMELLIA256.Decrypt +Cipher = CAMELLIA-256-OFB +Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 +IV = 000102030405060708090A0B0C0D0E0F +Operation = DECRYPT +Plaintext = 6BC1BEE22E409F96E93D7E117393172A +Ciphertext = CF6107BB0CEA7D7FB1BD31F5E7B06C93 + +Cipher = CAMELLIA-256-OFB +Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 +IV = B7BF3A5DF43989DD97F0FA97EBCE2F4A +Operation = DECRYPT +Plaintext = AE2D8A571E03AC9C9EB76FAC45AF8E51 +Ciphertext = 127AD97E8E3994E4820027D7BA109368 + +Cipher = CAMELLIA-256-OFB +Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 +IV = E1C656305ED1A7A6563805746FE03EDC +Operation = DECRYPT +Plaintext = 30C81C46A35CE411E5FBC1191A0A52EF +Ciphertext = 6BFF6265A6A6B7A535BC65A80B17214E + +Cipher = CAMELLIA-256-OFB +Key = 603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4 +IV = 41635BE625B48AFC1666DD42A09D96E7 +Operation = DECRYPT +Plaintext = F69F2445DF4F9B17AD2B417BE66C3710 +Ciphertext = 0A4A0404E26AA78A27CB271E8BF3CF20 + + +# Camellia test vectors from RFC5528 +Cipher = CAMELLIA-128-CTR +Key = AE6852F8121067CC4BF7A5765577F39E +IV = 00000030000000000000000000000001 +Operation = ENCRYPT +Plaintext = 53696E676C6520626C6F636B206D7367 +Ciphertext = D09DC29A8214619A20877C76DB1F0B3F + +Cipher = CAMELLIA-128-CTR +Key = 7E24067817FAE0D743D6CE1F32539163 +IV = 006CB6DBC0543B59DA48D90B00000001 +Operation = ENCRYPT +Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F +Ciphertext = DBF3C78DC08396D4DA7C907765BBCB442B8E8E0F31F0DCA72C7417E35360E048 + +Cipher = CAMELLIA-128-CTR +Key = 7691BE035E5020A8AC6E618529F9A0DC +IV = 00E0017B27777F3F4A1786F000000001 +Operation = ENCRYPT +Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F20212223 +Ciphertext = B19D1FCDCB75EB882F849CE24D85CF739CE64B2B5C9D73F14F2D5D9DCE9889CDDF508696 + +Cipher = CAMELLIA-192-CTR +Key = 16AF5B145FC9F579C175F93E3BFB0EED863D06CCFDB78515 +IV = 0000004836733C147D6D93CB00000001 +Operation = ENCRYPT +Plaintext = 53696E676C6520626C6F636B206D7367 +Ciphertext = 2379399E8A8D2B2B16702FC78B9E9696 + +Cipher = CAMELLIA-192-CTR +Key = 7C5CB2401B3DC33C19E7340819E0F69C678C3DB8E6F6A91A +IV = 0096B03B020C6EADC2CB500D00000001 +Operation = ENCRYPT +Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F +Ciphertext = 7DEF34F7A5D0E415674B7FFCAE67C75DD018B86FF23051E056392A99F35A4CED + +Cipher = CAMELLIA-192-CTR +Key = 02BF391EE8ECB159B959617B0965279BF59B60A786D3E0FE +IV = 0007BDFD5CBD60278DCC091200000001 +Operation = ENCRYPT +Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F20212223 +Ciphertext = 5710E556E1487A20B5AC0E73F19E4E7876F37FDC91B1EF4D4DADE8E666A64D0ED557AB57 + +Cipher = CAMELLIA-256-CTR +Key = 776BEFF2851DB06F4C8A0542C8696F6C6A81AF1EEC96B4D37FC1D689E6C1C104 +IV = 00000060DB5672C97AA8F0B200000001 +Operation = ENCRYPT +Plaintext = 53696E676C6520626C6F636B206D7367 +Ciphertext = 3401F9C8247EFFCEBD6994714C1BBB11 + +Cipher = CAMELLIA-256-CTR +Key = F6D66D6BD52D59BB0796365879EFF886C66DD51A5B6A99744B50590C87A23884 +IV = 00FAAC24C1585EF15A43D87500000001 +Operation = ENCRYPT +Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F +Ciphertext = D6C30392246F7808A83C2B22A8839E45E51CD48A1CDF406EBC9CC2D3AB834108 + +Cipher = CAMELLIA-256-CTR +Key = FF7A617CE69148E4F1726E2F43581DE2AA62D9F805532EDFF1EED687FB54153D +IV = 001CC5B751A51D70A1C1114800000001 +Operation = ENCRYPT +Plaintext = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F20212223 +Ciphertext = A4DA23FCE6A5FFAA6D64AE9A0652A42CD161A34B65F9679F75C01F101F71276F15EF0D8D diff --git a/test/recipes/30-test_evp_data/evpciph_chacha.txt b/test/recipes/30-test_evp_data/evpciph_chacha.txt index 48d1a37a02..4fb1d2cc1b 100644 --- a/test/recipes/30-test_evp_data/evpciph_chacha.txt +++ b/test/recipes/30-test_evp_data/evpciph_chacha.txt @@ -9,8 +9,7 @@ # Tests start with one of these keywords # Cipher Decrypt Derive Digest Encoding KDF MAC PBE # PrivPubKeyPair Sign Verify VerifyRecover -# and continue until a blank line. Lines starting with a pound sign, -# like this prolog, are ignored. +# and continue until a blank line. Lines starting with a pound sign are ignored. Title = Chacha20 test vectors from RFC7539 diff --git a/test/recipes/30-test_evp_data/evpciph_des.txt b/test/recipes/30-test_evp_data/evpciph_des.txt index 4841fdc318..d501e43cdd 100644 --- a/test/recipes/30-test_evp_data/evpciph_des.txt +++ b/test/recipes/30-test_evp_data/evpciph_des.txt @@ -62,3 +62,25 @@ Key = 0123456789abcdef IV = 1234567890abcdef Plaintext = 4e6f77206973207468652074696d6520666f7220616c6c20 Ciphertext = f3096249c7f46e51a69e839b1a92f78403467133898ea622 + + +Title = DES Tests (various sources) + +Cipher = DES-EDE3-CFB1 +Key = 000102030405060708090A0B0C0D0E0F1011121314151617 +IV = 0001020304050607 +Plaintext = "Hello World" +Ciphertext = 3CF55D656E9C0664513358 + +Cipher = DES-EDE3-CFB1 +Key = 000102030405060708090A0B0C0D0E0F1011121314151617 +IV = 0001020304050607 +Operation = DECRYPT +Plaintext = "Hello World" +Ciphertext = 3CF55D656E9C0664513358 + +Cipher = DESX-CBC +Key = 0123456789abcdeff1e0d3c2b5a49786fedcba9876543210 +IV = fedcba9876543210 +Plaintext = 37363534333231204E6F77206973207468652074696D6520666F722000000000 +Ciphertext = 846B2914851E9A2954732F8AA0A611C115CDC2D7951B1053A63C5E03B21AA3C4 diff --git a/test/recipes/30-test_evp_data/evpciph_des3_common.txt b/test/recipes/30-test_evp_data/evpciph_des3_common.txt new file mode 100644 index 0000000000..e8e2bf152f --- /dev/null +++ b/test/recipes/30-test_evp_data/evpciph_des3_common.txt @@ -0,0 +1,21 @@ +# +# Copyright 2001-2020 The OpenSSL Project Authors. All Rights Reserved. +# +# Licensed under the Apache License 2.0 (the "License"). You may not use +# this file except in compliance with the License. You can obtain a copy +# in the file LICENSE in the source distribution or at +# https://www.openssl.org/source/license.html + +# Tests start with one of these keywords +# Cipher Decrypt Derive Digest Encoding KDF MAC PBE +# PrivPubKeyPair Sign Verify VerifyRecover +# and continue until a blank line. Lines starting with a pound sign are ignored. + +Title = DES3 Test + +# DES EDE3 CBC tests (from destest) +Cipher = DES-EDE3-CBC +Key = 0123456789abcdeff1e0d3c2b5a49786fedcba9876543210 +IV = fedcba9876543210 +Plaintext = 37363534333231204E6F77206973207468652074696D6520666F722000000000 +Ciphertext = 3FE301C962AC01D02213763C1CBD4CDC799657C064ECF5D41C673812CFDE9675 diff --git a/test/recipes/30-test_evp_data/evpciph_sm4.txt b/test/recipes/30-test_evp_data/evpciph_sm4.txt index 8434ccb6e2..464c4750eb 100644 --- a/test/recipes/30-test_evp_data/evpciph_sm4.txt +++ b/test/recipes/30-test_evp_data/evpciph_sm4.txt @@ -6,7 +6,6 @@ # in the file LICENSE in the source distribution or at # https://www.openssl.org/source/license.html - Title = SM4 test vectors from IETF draft-ribose-cfrg-sm4 Cipher = SM4-ECB diff --git a/test/recipes/30-test_evp_data/evpencod.txt b/test/recipes/30-test_evp_data/evpencod.txt index f9ce7a842d..8584d532fd 100644 --- a/test/recipes/30-test_evp_data/evpencod.txt +++ b/test/recipes/30-test_evp_data/evpencod.txt @@ -9,8 +9,7 @@ # Tests start with one of these keywords # Cipher Decrypt Derive Digest Encoding KDF MAC PBE # PrivPubKeyPair Sign Verify VerifyRecover -# and continue until a blank line. Lines starting with a pound sign, -# like this prolog, are ignored. +# and continue until a blank line. Lines starting with a pound sign are ignored. Title = Base64 tests @@ -191,4 +190,3 @@ Encoding = valid Input = "OpenSSLOpenSSL\n" Output = "T3BlblNTTE9wZW5TU0wK-abcd" - diff --git a/test/recipes/30-test_evp_data/evpkdf_hkdf.txt b/test/recipes/30-test_evp_data/evpkdf_hkdf.txt new file mode 100644 index 0000000000..8d486c672a --- /dev/null +++ b/test/recipes/30-test_evp_data/evpkdf_hkdf.txt @@ -0,0 +1,195 @@ +# +# Copyright 2001-2020 The OpenSSL Project Authors. All Rights Reserved. +# +# Licensed under the Apache License 2.0 (the "License"). You may not use +# this file except in compliance with the License. You can obtain a copy +# in the file LICENSE in the source distribution or at +# https://www.openssl.org/source/license.html + +# Tests start with one of these keywords +# Cipher Decrypt Derive Digest Encoding KDF MAC PBE +# PrivPubKeyPair Sign Verify VerifyRecover +# and continue until a blank line. Lines starting with a pound sign are ignored. + +Title = HKDF tests (from RFC5869 test vectors) + +KDF = HKDF +Ctrl.digest = digest:SHA256 +Ctrl.IKM = hexkey:0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b +Ctrl.salt = hexsalt:000102030405060708090a0b0c +Ctrl.info = hexinfo:f0f1f2f3f4f5f6f7f8f9 +Output = 3cb25f25faacd57a90434f64d0362f2a2d2d0a90cf1a5a4c5db02d56ecc4c5bf34007208d5b887185865 + +KDF = HKDF +Ctrl.mode = mode:EXTRACT_ONLY +Ctrl.digest = digest:SHA256 +Ctrl.IKM = hexkey:0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b +Ctrl.salt = hexsalt:000102030405060708090a0b0c +Output = 077709362c2e32df0ddc3f0dc47bba6390b6c73bb50f9c3122ec844ad7c2b3e5 + +KDF = HKDF +Ctrl.mode = mode:EXPAND_ONLY +Ctrl.digest = digest:SHA256 +Ctrl.IKM = hexkey:077709362c2e32df0ddc3f0dc47bba6390b6c73bb50f9c3122ec844ad7c2b3e5 +Ctrl.info = hexinfo:f0f1f2f3f4f5f6f7f8f9 +Output = 3cb25f25faacd57a90434f64d0362f2a2d2d0a90cf1a5a4c5db02d56ecc4c5bf34007208d5b887185865 + +KDF = HKDF +Ctrl.digest = digest:SHA256 +Ctrl.IKM = hexkey:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f +Ctrl.salt = hexsalt:606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeaf +Ctrl.info = hexinfo:b0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff +Output = b11e398dc80327a1c8e7f78c596a49344f012eda2d4efad8a050cc4c19afa97c59045a99cac7827271cb41c65e590e09da3275600c2f09b8367793a9aca3db71cc30c58179ec3e87c14c01d5c1f3434f1d87 + +KDF = HKDF +Ctrl.mode = mode:EXTRACT_ONLY +Ctrl.digest = digest:SHA256 +Ctrl.IKM = hexkey:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f +Ctrl.salt = hexsalt:606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeaf +Output = 06a6b88c5853361a06104c9ceb35b45cef760014904671014a193f40c15fc244 + +KDF = HKDF +Ctrl.mode = mode:EXPAND_ONLY +Ctrl.digest = digest:SHA256 +Ctrl.IKM = hexkey:06a6b88c5853361a06104c9ceb35b45cef760014904671014a193f40c15fc244 +Ctrl.info = hexinfo:b0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff +Output = b11e398dc80327a1c8e7f78c596a49344f012eda2d4efad8a050cc4c19afa97c59045a99cac7827271cb41c65e590e09da3275600c2f09b8367793a9aca3db71cc30c58179ec3e87c14c01d5c1f3434f1d87 + +KDF = HKDF +Ctrl.digest = digest:SHA256 +Ctrl.IKM = hexkey:0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b +Ctrl.salt = salt: +Ctrl.info = info: +Output = 8da4e775a563c18f715f802a063c5a31b8a11f5c5ee1879ec3454e5f3c738d2d9d201395faa4b61a96c8 + +KDF = HKDF +Ctrl.mode = mode:EXTRACT_ONLY +Ctrl.digest = digest:SHA256 +Ctrl.IKM = hexkey:0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b +Ctrl.salt = salt: +Ctrl.info = info: +Output = 19ef24a32c717b167f33a91d6f648bdf96596776afdb6377ac434c1c293ccb04 + +KDF = HKDF +Ctrl.mode = mode:EXPAND_ONLY +Ctrl.digest = digest:SHA256 +Ctrl.IKM = hexkey:19ef24a32c717b167f33a91d6f648bdf96596776afdb6377ac434c1c293ccb04 +Ctrl.info = info: +Output = 8da4e775a563c18f715f802a063c5a31b8a11f5c5ee1879ec3454e5f3c738d2d9d201395faa4b61a96c8 + +KDF = HKDF +Ctrl.digest = digest:SHA1 +Ctrl.IKM = hexkey:0b0b0b0b0b0b0b0b0b0b0b +Ctrl.salt = hexsalt:000102030405060708090a0b0c +Ctrl.info = hexinfo:f0f1f2f3f4f5f6f7f8f9 +Output = 085a01ea1b10f36933068b56efa5ad81a4f14b822f5b091568a9cdd4f155fda2c22e422478d305f3f896 + +KDF = HKDF +Ctrl.mode = mode:EXTRACT_ONLY +Ctrl.digest = digest:SHA1 +Ctrl.IKM = hexkey:0b0b0b0b0b0b0b0b0b0b0b +Ctrl.salt = hexsalt:000102030405060708090a0b0c +Output = 9b6c18c432a7bf8f0e71c8eb88f4b30baa2ba243 + +KDF = HKDF +Ctrl.mode = mode:EXPAND_ONLY +Ctrl.digest = digest:SHA1 +Ctrl.IKM = hexkey:9b6c18c432a7bf8f0e71c8eb88f4b30baa2ba243 +Ctrl.info = hexinfo:f0f1f2f3f4f5f6f7f8f9 +Output = 085a01ea1b10f36933068b56efa5ad81a4f14b822f5b091568a9cdd4f155fda2c22e422478d305f3f896 + +KDF = HKDF +Ctrl.digest = digest:SHA1 +Ctrl.IKM = hexkey:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f +Ctrl.salt = hexsalt:606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeaf +Ctrl.info = hexinfo:b0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff +Output = 0bd770a74d1160f7c9f12cd5912a06ebff6adcae899d92191fe4305673ba2ffe8fa3f1a4e5ad79f3f334b3b202b2173c486ea37ce3d397ed034c7f9dfeb15c5e927336d0441f4c4300e2cff0d0900b52d3b4 + +KDF = HKDF +Ctrl.mode = mode:EXTRACT_ONLY +Ctrl.digest = digest:SHA1 +Ctrl.IKM = hexkey:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f +Ctrl.salt = hexsalt:606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeaf +Output = 8adae09a2a307059478d309b26c4115a224cfaf6 + +KDF = HKDF +Ctrl.mode = mode:EXPAND_ONLY +Ctrl.digest = digest:SHA1 +Ctrl.IKM = hexkey:8adae09a2a307059478d309b26c4115a224cfaf6 +Ctrl.info = hexinfo:b0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff +Output = 0bd770a74d1160f7c9f12cd5912a06ebff6adcae899d92191fe4305673ba2ffe8fa3f1a4e5ad79f3f334b3b202b2173c486ea37ce3d397ed034c7f9dfeb15c5e927336d0441f4c4300e2cff0d0900b52d3b4 + +KDF = HKDF +Ctrl.digest = digest:SHA1 +Ctrl.IKM = hexkey:0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b +Ctrl.salt = salt: +Ctrl.info = info: +Output = 0ac1af7002b3d761d1e55298da9d0506b9ae52057220a306e07b6b87e8df21d0ea00033de03984d34918 + +KDF = HKDF +Ctrl.mode = mode:EXTRACT_ONLY +Ctrl.digest = digest:SHA1 +Ctrl.IKM = hexkey:0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b +Ctrl.salt = salt: +Output = da8c8a73c7fa77288ec6f5e7c297786aa0d32d01 + +KDF = HKDF +Ctrl.mode = mode:EXPAND_ONLY +Ctrl.digest = digest:SHA1 +Ctrl.IKM = hexkey:da8c8a73c7fa77288ec6f5e7c297786aa0d32d01 +Ctrl.info = info: +Output = 0ac1af7002b3d761d1e55298da9d0506b9ae52057220a306e07b6b87e8df21d0ea00033de03984d34918 + +KDF = HKDF +Ctrl.digest = digest:SHA1 +Ctrl.IKM = hexkey:0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c +Ctrl.salt = salt: +Ctrl.info = info: +Output = 2c91117204d745f3500d636a62f64f0ab3bae548aa53d423b0d1f27ebba6f5e5673a081d70cce7acfc48 + +KDF = HKDF +Ctrl.mode = mode:EXTRACT_ONLY +Ctrl.digest = digest:SHA1 +Ctrl.IKM = hexkey:0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c +Ctrl.salt = salt: +Output = 2adccada18779e7c2077ad2eb19d3f3e731385dd + +KDF = HKDF +Ctrl.mode = mode:EXPAND_ONLY +Ctrl.digest = digest:SHA1 +Ctrl.IKM = hexkey:2adccada18779e7c2077ad2eb19d3f3e731385dd +Ctrl.info = info: +Output = 2c91117204d745f3500d636a62f64f0ab3bae548aa53d423b0d1f27ebba6f5e5673a081d70cce7acfc48 + +KDF = HKDF +Ctrl.IKM = hexkey:0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c +Ctrl.salt = salt: +Ctrl.info = info: +Output = 00 +Result = KDF_DERIVE_ERROR + +KDF = HKDF +Ctrl.digest = digest:SHA1 +Ctrl.salt = salt: +Ctrl.info = info: +Output = 00 +Result = KDF_DERIVE_ERROR + +KDF = HKDF +Ctrl.digest = digest:SHA1 +Ctrl.IKM = hexkey:0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c +Ctrl.info = info: +Output = 2c91117204d745f3500d636a62f64f0ab3bae548aa53d423b0d1f27ebba6f5e5673a081d70cce7acfc48 + +KDF = HKDF +Ctrl.digest = digest:SHA1 +Ctrl.IKM = hexkey:0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c +Ctrl.salt = salt: +Output = 2c91117204d745f3500d636a62f64f0ab3bae548aa53d423b0d1f27ebba6f5e5673a081d70cce7acfc48 + +KDF = HKDF +Ctrl.mode = mode:EXTRACT_AND_EXPAND +Ctrl.digest = digest:SHA1 +Ctrl.IKM = hexkey:0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c +Ctrl.salt = salt: +Output = 2c91117204d745f3500d636a62f64f0ab3bae548aa53d423b0d1f27ebba6f5e5673a081d70cce7acfc48 diff --git a/test/recipes/30-test_evp_data/evpkdf_krb5.txt b/test/recipes/30-test_evp_data/evpkdf_krb5.txt new file mode 100644 index 0000000000..8c515ae39b --- /dev/null +++ b/test/recipes/30-test_evp_data/evpkdf_krb5.txt @@ -0,0 +1,131 @@ +# +# Copyright 2001-2019 The OpenSSL Project Authors. All Rights Reserved. +# +# Licensed under the Apache License 2.0 (the "License"). You may not use +# this file except in compliance with the License. You can obtain a copy +# in the file LICENSE in the source distribution or at +# https://www.openssl.org/source/license.html + +# Tests start with one of these keywords +# Cipher Decrypt Derive Digest Encoding KDF MAC PBE +# PrivPubKeyPair Sign Verify VerifyRecover +# and continue until a blank line. Lines starting with a pound sign are ignored. + +Title = KRB5KDF tests (from RFC 3961 test vectors and krb5 sources) + +#RFC3961 +KDF = KRB5KDF +Ctrl.cipher = cipher:DES-EDE3-CBC +Ctrl.hexkey = hexkey:dce06b1f64c857a11c3db57c51899b2cc1791008ce973b92 +Ctrl.hexconstant = hexconstant:0000000155 +Output = 925179d04591a79b5d3192c4a7e9c289b049c71f6ee604cd + +KDF = KRB5KDF +Ctrl.cipher = cipher:DES-EDE3-CBC +Ctrl.hexkey = hexkey:5e13d31c70ef765746578531cb51c15bf11ca82c97cee9f2 +Ctrl.hexconstant = hexconstant:00000001aa +Output = 9e58e5a146d9942a101c469845d67a20e3c4259ed913f207 + +KDF = KRB5KDF +Ctrl.cipher = cipher:DES-EDE3-CBC +Ctrl.hexkey = hexkey:98e6fd8a04a4b6859b75a176540b9752bad3ecd610a252bc +Ctrl.hexconstant = hexconstant:0000000155 +Output = 13fef80d763e94ec6d13fd2ca1d085070249dad39808eabf + +KDF = KRB5KDF +Ctrl.cipher = cipher:DES-EDE3-CBC +Ctrl.hexkey = hexkey:622aec25a2fe2cad7094680b7c64940280084c1a7cec92b5 +Ctrl.hexconstant = hexconstant:00000001aa +Output = f8dfbf04b097e6d9dc0702686bcb3489d91fd9a4516b703e + +KDF = KRB5KDF +Ctrl.cipher = cipher:DES-EDE3-CBC +Ctrl.hexkey = hexkey:d3f8298ccb166438dcb9b93ee5a7629286a491f838f802fb +Ctrl.hexconstant = hexconstant:6b65726265726f73 +Output = 2370da575d2a3da864cebfdc5204d56df779a7df43d9da43 + +KDF = KRB5KDF +Ctrl.cipher = cipher:DES-EDE3-CBC +Ctrl.hexkey = hexkey:c1081649ada74362e6a1459d01dfd30d67c2234c940704da +Ctrl.hexconstant = hexconstant:0000000155 +Output = 348057ec98fdc48016161c2a4c7a943e92ae492c989175f7 + +KDF = KRB5KDF +Ctrl.cipher = cipher:DES-EDE3-CBC +Ctrl.hexkey = hexkey:5d154af238f46713155719d55e2f1f790dd661f279a7917c +Ctrl.hexconstant = hexconstant:00000001aa +Output = a8808ac267dada3dcbe9a7c84626fbc761c294b01315e5c1 + +KDF = KRB5KDF +Ctrl.cipher = cipher:DES-EDE3-CBC +Ctrl.hexkey = hexkey:798562e049852f57dc8c343ba17f2ca1d97394efc8adc443 +Ctrl.hexconstant = hexconstant:0000000155 +Output = c813f88a3be3b334f75425ce9175fbe3c8493b89c8703b49 + +KDF = KRB5KDF +Ctrl.cipher = cipher:DES-EDE3-CBC +Ctrl.hexkey = hexkey:26dce334b545292f2feab9a8701a89a4b99eb9942cecd016 +Ctrl.hexconstant = hexconstant:00000001aa +Output = f48ffd6e83f83e7354e694fd252cf83bfe58f7d5ba37ec5d + +#Krb5 sources +KDF = KRB5KDF +Ctrl.cipher = cipher:DES-EDE3-CBC +Ctrl.hexkey = hexkey:850BB51358548CD05E86768C313E3BFEF7511937DCF72C3E +Ctrl.hexconstant = hexconstant:0000000299 +Output = F78C496D16E6C2DAE0E0B6C24057A84C0426AEEF26FD6DCE + +KDF = KRB5KDF +Ctrl.cipher = cipher:DES-EDE3-CBC +Ctrl.hexkey = hexkey:850BB51358548CD05E86768C313E3BFEF7511937DCF72C3E +Ctrl.hexconstant = hexconstant:00000002AA +Output = 5B5723D0B634CB684C3EBA5264E9A70D52E683231AD3C4CE + +KDF = KRB5KDF +Ctrl.cipher = cipher:DES-EDE3-CBC +Ctrl.hexkey = hexkey:850BB51358548CD05E86768C313E3BFEF7511937DCF72C3E +Ctrl.hexconstant = hexconstant:0000000255 +Output = A77C94980E9B7345A81525C423A737CE67F4CD91B6B3DA45 + +KDF = KRB5KDF +Ctrl.cipher = cipher:AES-128-CBC +Ctrl.hexkey = hexkey:42263C6E89F4FC28B8DF68EE09799F15 +Ctrl.hexconstant = hexconstant:0000000299 +Output = 34280A382BC92769B2DA2F9EF066854B + +KDF = KRB5KDF +Ctrl.cipher = cipher:AES-128-CBC +Ctrl.hexkey = hexkey:42263C6E89F4FC28B8DF68EE09799F15 +Ctrl.hexconstant = hexconstant:00000002AA +Output = 5B14FC4E250E14DDF9DCCF1AF6674F53 + +KDF = KRB5KDF +Ctrl.cipher = cipher:AES-128-CBC +Ctrl.hexkey = hexkey:42263C6E89F4FC28B8DF68EE09799F15 +Ctrl.hexconstant = hexconstant:0000000255 +Output = 4ED31063621684F09AE8D89991AF3E8F + +KDF = KRB5KDF +Ctrl.cipher = cipher:AES-256-CBC +Ctrl.hexkey = hexkey:FE697B52BC0D3CE14432BA036A92E65BBB52280990A2FA27883998D72AF30161 +Ctrl.hexconstant = hexconstant:0000000299 +Output = BFAB388BDCB238E9F9C98D6A878304F04D30C82556375AC507A7A852790F4674 + +KDF = KRB5KDF +Ctrl.cipher = cipher:AES-256-CBC +Ctrl.hexkey = hexkey:FE697B52BC0D3CE14432BA036A92E65BBB52280990A2FA27883998D72AF30161 +Ctrl.hexconstant = hexconstant:00000002AA +Output = C7CFD9CD75FE793A586A542D87E0D1396F1134A104BB1A9190B8C90ADA3DDF37 + +KDF = KRB5KDF +Ctrl.cipher = cipher:AES-256-CBC +Ctrl.hexkey = hexkey:FE697B52BC0D3CE14432BA036A92E65BBB52280990A2FA27883998D72AF30161 +Ctrl.hexconstant = hexconstant:0000000255 +Output = 97151B4C76945063E2EB0529DC067D97D7BBA90776D8126D91F34F3101AEA8BA + +#Same as the first but with no "fixup" +KDF = KRB5KDF +Ctrl.cipher = cipher:DES-EDE3-CBC +Ctrl.hexkey = hexkey:dce06b1f64c857a11c3db57c51899b2cc1791008ce973b92 +Ctrl.hexconstant = hexconstant:0000000155 +Output = 935079d14490a75c3093c4a6e8c3b049c71e6ee705 diff --git a/test/recipes/30-test_evp_data/evpkdf_pbkdf2.txt b/test/recipes/30-test_evp_data/evpkdf_pbkdf2.txt new file mode 100644 index 0000000000..3f59724072 --- /dev/null +++ b/test/recipes/30-test_evp_data/evpkdf_pbkdf2.txt @@ -0,0 +1,157 @@ +# +# Copyright 2001-2020 The OpenSSL Project Authors. All Rights Reserved. +# +# Licensed under the Apache License 2.0 (the "License"). You may not use +# this file except in compliance with the License. You can obtain a copy +# in the file LICENSE in the source distribution or at +# https://www.openssl.org/source/license.html + +# Tests start with one of these keywords +# Cipher Decrypt Derive Digest Encoding KDF MAC PBE +# PrivPubKeyPair Sign Verify VerifyRecover +# and continue until a blank line. Lines starting with a pound sign are ignored. + +Title = PBKDF2 tests + +KDF = PBKDF2 +Ctrl.pkcs5 = pkcs5:1 +Ctrl.pass = pass:password +Ctrl.salt = salt:salt +Ctrl.iter = iter:1 +Ctrl.digest = digest:sha1 +Output = 0c60c80f961f0e71f3a9b524af6012062fe037a6 + +KDF = PBKDF2 +Ctrl.pkcs5 = pkcs5:1 +Ctrl.pass = pass:password +Ctrl.salt = salt:salt +Ctrl.iter = iter:1 +Ctrl.digest = digest:sha256 +Output = 120fb6cffcf8b32c43e7225256c4f837a86548c92ccc35480805987cb70be17b + +KDF = PBKDF2 +Ctrl.pkcs5 = pkcs5:1 +Ctrl.pass = pass:password +Ctrl.salt = salt:salt +Ctrl.iter = iter:1 +Ctrl.digest = digest:sha512 +Output = 867f70cf1ade02cff3752599a3a53dc4af34c7a669815ae5d513554e1c8cf252c02d470a285a0501bad999bfe943c08f050235d7d68b1da55e63f73b60a57fce + +KDF = PBKDF2 +Ctrl.pkcs5 = pkcs5:1 +Ctrl.pass = pass:password +Ctrl.salt = salt:salt +Ctrl.iter = iter:2 +Ctrl.digest = digest:sha1 +Output = ea6c014dc72d6f8ccd1ed92ace1d41f0d8de8957 + +KDF = PBKDF2 +Ctrl.pkcs5 = pkcs5:1 +Ctrl.pass = pass:password +Ctrl.salt = salt:salt +Ctrl.iter = iter:2 +Ctrl.digest = digest:sha256 +Output = ae4d0c95af6b46d32d0adff928f06dd02a303f8ef3c251dfd6e2d85a95474c43 + +KDF = PBKDF2 +Ctrl.pkcs5 = pkcs5:1 +Ctrl.pass = pass:password +Ctrl.salt = salt:salt +Ctrl.iter = iter:2 +Ctrl.digest = digest:sha512 +Output = e1d9c16aa681708a45f5c7c4e215ceb66e011a2e9f0040713f18aefdb866d53cf76cab2868a39b9f7840edce4fef5a82be67335c77a6068e04112754f27ccf4e + +KDF = PBKDF2 +Ctrl.pkcs5 = pkcs5:1 +Ctrl.pass = pass:password +Ctrl.salt = salt:salt +Ctrl.iter = iter:4096 +Ctrl.digest = digest:sha1 +Output = 4b007901b765489abead49d926f721d065a429c1 + +KDF = PBKDF2 +Ctrl.pkcs5 = pkcs5:1 +Ctrl.pass = pass:password +Ctrl.salt = salt:salt +Ctrl.iter = iter:4096 +Ctrl.digest = digest:sha256 +Output = c5e478d59288c841aa530db6845c4c8d962893a001ce4e11a4963873aa98134a + +KDF = PBKDF2 +Ctrl.pkcs5 = pkcs5:1 +Ctrl.pass = pass:password +Ctrl.salt = salt:salt +Ctrl.iter = iter:4096 +Ctrl.digest = digest:sha512 +Output = d197b1b33db0143e018b12f3d1d1479e6cdebdcc97c5c0f87f6902e072f457b5143f30602641b3d55cd335988cb36b84376060ecd532e039b742a239434af2d5 + +KDF = PBKDF2 +Ctrl.pass = pass:passwordPASSWORDpassword +Ctrl.salt = salt:saltSALTsaltSALTsaltSALTsaltSALTsalt +Ctrl.iter = iter:4096 +Ctrl.digest = digest:sha1 +Output = 3d2eec4fe41c849b80c8d83662c0e44a8b291a964cf2f07038 + +KDF = PBKDF2 +Ctrl.pass = pass:passwordPASSWORDpassword +Ctrl.salt = salt:saltSALTsaltSALTsaltSALTsaltSALTsalt +Ctrl.iter = iter:4096 +Ctrl.digest = digest:sha256 +Output = 348c89dbcbd32b2f32d814b8116e84cf2b17347ebc1800181c4e2a1fb8dd53e1c635518c7dac47e9 + +KDF = PBKDF2 +Ctrl.pass = pass:passwordPASSWORDpassword +Ctrl.salt = salt:saltSALTsaltSALTsaltSALTsaltSALTsalt +Ctrl.iter = iter:4096 +Ctrl.digest = digest:sha512 +Output = 8c0511f4c6e597c6ac6315d8f0362e225f3c501495ba23b868c005174dc4ee71115b59f9e60cd9532fa33e0f75aefe30225c583a186cd82bd4daea9724a3d3b8 + +KDF = PBKDF2 +Ctrl.pkcs5 = pkcs5:1 +Ctrl.hexpass = hexpass:7061737300776f7264 +Ctrl.hexsalt = hexsalt:7361006c74 +Ctrl.iter = iter:4096 +Ctrl.digest = digest:sha1 +Output = 56fa6aa75548099dcc37d7f03425e0c3 + +KDF = PBKDF2 +Ctrl.pkcs5 = pkcs5:1 +Ctrl.hexpass = hexpass:7061737300776f7264 +Ctrl.hexsalt = hexsalt:7361006c74 +Ctrl.iter = iter:4096 +Ctrl.digest = digest:sha256 +Output = 89b69d0516f829893c696226650a8687 + +KDF = PBKDF2 +Ctrl.pkcs5 = pkcs5:1 +Ctrl.hexpass = hexpass:7061737300776f7264 +Ctrl.hexsalt = hexsalt:7361006c74 +Ctrl.iter = iter:4096 +Ctrl.digest = digest:sha512 +Output = 9d9e9c4cd21fe4be24d5b8244c759665 + +Title = PBKDF2 tests for empty inputs + +KDF = PBKDF2 +Ctrl.pkcs5 = pkcs5:1 +Ctrl.pass = pass: +Ctrl.salt = salt:salt +Ctrl.iter = iter:1 +Ctrl.digest = digest:sha1 +Output = a33dddc30478185515311f8752895d36ea4363a2 + +KDF = PBKDF2 +Ctrl.pkcs5 = pkcs5:1 +Ctrl.pass = pass: +Ctrl.salt = salt:salt +Ctrl.iter = iter:1 +Ctrl.digest = digest:sha256 +Output = f135c27993baf98773c5cdb40a5706ce6a345cde + +KDF = PBKDF2 +Ctrl.pkcs5 = pkcs5:1 +Ctrl.pass = pass: +Ctrl.salt = salt:salt +Ctrl.iter = iter:1 +Ctrl.digest = digest:sha512 +Output = 00ef42cdbfc98d29db20976608e455567fdddf14 diff --git a/test/recipes/30-test_evp_data/evpkdf_scrypt.txt b/test/recipes/30-test_evp_data/evpkdf_scrypt.txt new file mode 100644 index 0000000000..a7eb3a0789 --- /dev/null +++ b/test/recipes/30-test_evp_data/evpkdf_scrypt.txt @@ -0,0 +1,63 @@ +# +# Copyright 2001-2019 The OpenSSL Project Authors. All Rights Reserved. +# +# Licensed under the Apache License 2.0 (the "License"). You may not use +# this file except in compliance with the License. You can obtain a copy +# in the file LICENSE in the source distribution or at +# https://www.openssl.org/source/license.html + +# Tests start with one of these keywords +# Cipher Decrypt Derive Digest Encoding KDF MAC PBE +# PrivPubKeyPair Sign Verify VerifyRecover +# and continue until a blank line. Lines starting with a pound sign are ignored. + +Title = Scrypt tests (from draft-josefsson-id-scrypt-kdf-03 and others) + +KDF = id-scrypt +Ctrl.pass = pass: +Ctrl.salt = salt: +Ctrl.N = n:16 +Ctrl.r = r:1 +Ctrl.p = p:1 +Output = 77d6576238657b203b19ca42c18a0497f16b4844e3074ae8dfdffa3fede21442fcd0069ded0948f8326a753a0fc81f17e8d3e0fb2e0d3628cf35e20c38d18906 + +KDF = id-scrypt +Ctrl.pass = pass:password +Ctrl.salt = salt:NaCl +Ctrl.N = n:1024 +Ctrl.r = r:8 +Ctrl.p = p:16 +Output = fdbabe1c9d3472007856e7190d01e9fe7c6ad7cbc8237830e77376634b3731622eaf30d92e22a3886ff109279d9830dac727afb94a83ee6d8360cbdfa2cc0640 + +KDF = id-scrypt +Ctrl.hexpass = hexpass:70617373776f7264 +Ctrl.salt = salt:NaCl +Ctrl.N = n:1024 +Ctrl.r = r:8 +Ctrl.p = p:16 +Output = fdbabe1c9d3472007856e7190d01e9fe7c6ad7cbc8237830e77376634b3731622eaf30d92e22a3886ff109279d9830dac727afb94a83ee6d8360cbdfa2cc0640 + +KDF = id-scrypt +Ctrl.pass = pass:password +Ctrl.hexsalt = hexsalt:4e61436c +Ctrl.N = n:1024 +Ctrl.r = r:8 +Ctrl.p = p:16 +Output = fdbabe1c9d3472007856e7190d01e9fe7c6ad7cbc8237830e77376634b3731622eaf30d92e22a3886ff109279d9830dac727afb94a83ee6d8360cbdfa2cc0640 + +KDF = id-scrypt +Ctrl.pass = pass:pleaseletmein +Ctrl.salt = salt:SodiumChloride +Ctrl.N = n:16384 +Ctrl.r = r:8 +Ctrl.p = p:1 +Output = 7023bdcb3afd7348461c06cd81fd38ebfda8fbba904f8e3ea9b543f6545da1f2d5432955613f0fcf62d49705242a9af9e61e85dc0d651e40dfcf017b45575887 + +# Out of memory +KDF = id-scrypt +Ctrl.pass = pass:pleaseletmein +Ctrl.salt = salt:SodiumChloride +Ctrl.N = n:1048576 +Ctrl.r = r:8 +Ctrl.p = p:1 +Result = INTERNAL_ERROR diff --git a/test/recipes/30-test_evp_data/evpkdf_ss.txt b/test/recipes/30-test_evp_data/evpkdf_ss.txt new file mode 100644 index 0000000000..82c1d4e561 --- /dev/null +++ b/test/recipes/30-test_evp_data/evpkdf_ss.txt @@ -0,0 +1,1121 @@ +# +# Copyright 2001-2019 The OpenSSL Project Authors. All Rights Reserved. +# +# Licensed under the Apache License 2.0 (the "License"). You may not use +# this file except in compliance with the License. You can obtain a copy +# in the file LICENSE in the source distribution or at +# https://www.openssl.org/source/license.html + +# Tests start with one of these keywords +# Cipher Decrypt Derive Digest Encoding KDF MAC PBE +# PrivPubKeyPair Sign Verify VerifyRecover +# and continue until a blank line. Lines starting with a pound sign are ignored. + +# There are currently no official test vectors for Single Step KDF +# https://github.com/patrickfav/singlestep-kdf/wiki/NIST-SP-800-56C-Rev1:-Non-Official-Test-Vectors + +Title = Single Step KDF tests + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:d09a6b1a472f930db4f5e6b967900744 +Ctrl.hexinfo = hexinfo:b117255ab5f1b6b96fc434b0 +Output = b5a3c52e97ae6e8c5069954354eab3c7 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:343666c0dd34b756e70f759f14c304f5 +Ctrl.hexinfo = hexinfo:722b28448d7eab85491bce09 +Output = 1003b650ddd3f0891a15166db5ec881d + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:b84acf03ab08652dd7f82fa956933261 +Ctrl.hexinfo = hexinfo:3d8773ec068c86053a918565 +Output = 1635dcd1ce698f736831b4badb68ab2b + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:8cc24ca3f1d1a8b34783780b79890430 +Ctrl.hexinfo = hexinfo:f08d4f2d9a8e6d7105c0bc16 +Output = b8e716fb84a420aed4812cd76d9700ee + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:b616905a6f7562cd2689142ce21e42a3 +Ctrl.hexinfo = hexinfo:ead310159a909da87e7b4b40 +Output = 1b9201358c50fe5d5d42907c4a9fce78 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:3f57fd3fd56199b3eb33890f7ee28180 +Ctrl.hexinfo = hexinfo:7a5056ba4fdb034c7cb6c4fe +Output = e51ebd30a8c4b8449b0fb29d9adc11af + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:fb9fb108d104e9f662d6593fc84cde69 +Ctrl.hexinfo = hexinfo:5faf29211c1bdbf1b2696a7c +Output = 7a3a7e670656e48c390cdd7c51e167e0 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:237a39981794f4516dccffc3dda28396 +Ctrl.hexinfo = hexinfo:62ed9528d104c241e0f66275 +Output = 0c26fc9e90e1c5c5f943428301682045 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:b9b6c45f7279218fa09894e06366a3a1 +Ctrl.hexinfo = hexinfo:0f384339670aaed4b89ecb7e +Output = ee5fad414e32fad5d52a2bf61a7f6c72 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:08b7140e2cd0a4abd79171e4d5a71cad +Ctrl.hexinfo = hexinfo:099211f0d8a2e02dbb5958c0 +Output = 6162f5142e057efafd2c4f2bad5985a1 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 +Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b +Output = b4a2 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 +Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b +Output = b4a23963 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 +Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b +Output = b4a23963e07f + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 +Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b +Output = b4a23963e07f4853 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 +Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b +Output = b4a23963e07f485382cb + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 +Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b +Output = b4a23963e07f485382cb358a + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 +Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b +Output = b4a23963e07f485382cb358a493d + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 +Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b +Output = b4a23963e07f485382cb358a493daec1 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 +Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b +Output = b4a23963e07f485382cb358a493daec1759a + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 +Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b +Output = b4a23963e07f485382cb358a493daec1759ac704 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 +Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b +Output = b4a23963e07f485382cb358a493daec1759ac7043dbe + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 +Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b +Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 +Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b +Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 +Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b +Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 +Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b +Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf1050 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 +Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b +Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf105031f0 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 +Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b +Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf105031f0f239 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 +Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b +Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf105031f0f239f270 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 +Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b +Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf105031f0f239f270b7f3 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 +Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b +Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf105031f0f239f270b7f30616 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 +Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b +Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf105031f0f239f270b7f30616166f + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 +Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b +Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf105031f0f239f270b7f30616166f10e5 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 +Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b +Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf105031f0f239f270b7f30616166f10e5d2b4 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 +Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b +Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf105031f0f239f270b7f30616166f10e5d2b4cb11 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 +Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b +Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf105031f0f239f270b7f30616166f10e5d2b4cb11ba8b + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 +Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b +Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf105031f0f239f270b7f30616166f10e5d2b4cb11ba8bf4ba + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 +Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b +Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf105031f0f239f270b7f30616166f10e5d2b4cb11ba8bf4ba3f22 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 +Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b +Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf105031f0f239f270b7f30616166f10e5d2b4cb11ba8bf4ba3f227688 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 +Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b +Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf105031f0f239f270b7f30616166f10e5d2b4cb11ba8bf4ba3f2276885abf + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 +Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b +Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf105031f0f239f270b7f30616166f10e5d2b4cb11ba8bf4ba3f2276885abfbc3e + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 +Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b +Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf105031f0f239f270b7f30616166f10e5d2b4cb11ba8bf4ba3f2276885abfbc3e811a + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 +Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b +Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf105031f0f239f270b7f30616166f10e5d2b4cb11ba8bf4ba3f2276885abfbc3e811a568d + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 +Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b +Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf105031f0f239f270b7f30616166f10e5d2b4cb11ba8bf4ba3f2276885abfbc3e811a568d480d + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 +Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b +Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf105031f0f239f270b7f30616166f10e5d2b4cb11ba8bf4ba3f2276885abfbc3e811a568d480d9192 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:d7e6 +Ctrl.hexinfo = hexinfo:0bbe1fa8722023d7c3da4fff +Output = 31e798e9931b612a3ad1b9b1008faa8c + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:4646779d +Ctrl.hexinfo = hexinfo:0bbe1fa8722023d7c3da4fff +Output = 139f68bcca879b490e268e569087d04d + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:d9811c81d4c6 +Ctrl.hexinfo = hexinfo:0bbe1fa8722023d7c3da4fff +Output = 914dc4f09cb633a76e6c389e04c64485 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:8838f9d99ec46f09 +Ctrl.hexinfo = hexinfo:0bbe1fa8722023d7c3da4fff +Output = 4f07dfb6f7a5bf348689e08b2e29c948 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:3e0939b33f34e779f30e +Ctrl.hexinfo = hexinfo:0bbe1fa8722023d7c3da4fff +Output = b42c7a98c23be19d1187ff960e87557f + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:f36230cacca4d245d303058c +Ctrl.hexinfo = hexinfo:0bbe1fa8722023d7c3da4fff +Output = 50f2068d8010d355d56c5e34aaffbc67 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:7005d32c3d4284c73c3aefc70438 +Ctrl.hexinfo = hexinfo:0bbe1fa8722023d7c3da4fff +Output = 66fd712ccf5462bbd41e89041ea7ea26 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:c01c83150b7734f8dbd6efd6f54d7365 +Ctrl.hexinfo = hexinfo:0bbe1fa8722023d7c3da4fff +Output = 5c5edb0ceda9cd0c7f1f3d9e239c67d5 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:da69f1dbbebc837480af692e7e9ee6b9 +Ctrl.hexinfo = hexinfo:9949 +Output = 33c83f54ed00fb1bccd2113e88550941 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:da69f1dbbebc837480af692e7e9ee6b9 +Ctrl.hexinfo = hexinfo:17144da6 +Output = a999c28961424cab35ec06015e8c376a + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:da69f1dbbebc837480af692e7e9ee6b9 +Ctrl.hexinfo = hexinfo:dffdee1062eb +Output = 4101ad50e626ed6f957bff926dfbb7db + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:da69f1dbbebc837480af692e7e9ee6b9 +Ctrl.hexinfo = hexinfo:9f365043e23b4648 +Output = 4d3e4b971b88771f229df9f564984832 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:da69f1dbbebc837480af692e7e9ee6b9 +Ctrl.hexinfo = hexinfo:a885a0c4567ddc4f96da +Output = bebbc30f5a83df5e9c9b57db33c0c879 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:da69f1dbbebc837480af692e7e9ee6b9 +Ctrl.hexinfo = hexinfo:c9d86183295bfe4c3d85f0fd +Output = 87c947e45407db63eb94cbaa02d14e94 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:da69f1dbbebc837480af692e7e9ee6b9 +Ctrl.hexinfo = hexinfo:825fadce46964236a486732c5dad +Output = 192370a85ff78e3c0245129d9b398558 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:da69f1dbbebc837480af692e7e9ee6b9 +Ctrl.hexinfo = hexinfo:5c0b5eb3ac9f342347d73d7a521723aa +Output = c7b7634fd809383e87c4b1b3e728be56 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:8d7a4e7d5cf34b3f74873b862aeb33b7 +Output = 6a5594f402f74f69 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:9b208e7ee1e641fac1dff48fc1beb2d2 +Output = 556ed67e24ac0c7c46cc432da8bdb23c + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:4d2572539fed433211da28c8a0eebac3 +Output = 5a4054c59c5b92814025578f43c1b79fe84968fc284e240b + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:4e1e70c9886819a31bc29a537911add9 +Output = ddbfc440449aab4131c6d8aec08ce1496f2702241d0e27cc155c5c7c3cda75b5 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:68f144c952528e540c686dc353b766f2 +Output = 59ed66bb6f54a9688a0b891d0b2ea6743621d9e1b5cc098cf3a55e6f864f9af8a95e4d945d2f987f + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:b66c9d507c9f837fbe60b6675fdbf38b +Output = c282787ddf421a72fc88811be81b08d0d6ab66c92d1011974aa58335a6bbbd62e9e982bfae5929865ea1d517247089d2 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:34e730b49e46c7ed2fb25975a4cccd2d +Output = 39e76e6571cb00740260b9070accbdcc4a492c295cbef33d9e37dac21e5e9d07e0f12dc7063d2172641475d4e08b8e3712fb26a10c8376b8 + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:e340d87e2d7adbc1b95ec2dbdc3b82be +Output = a660c0037a53f76f1e7667043f5869348ad07ac0e272e615ce31f16d4ab90d4b35fe5c370c0010ce79aff45682c6fb8b97f9a05b7d40b5af3c62999a10df9c6d + +KDF = SSKDF +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:afc4e154498d4770aa8365f6903dc83b +Ctrl.hexinfo = hexinfo:662af20379b29d5ef813e655 +Output = f0b80d6ae4c1e19e2105a37024e35dc6 + + +KDF = SSKDF +Ctrl.digest = digest:SHA512 +Ctrl.hexsecret = hexsecret:108cf63318555c787fa578731dd4f037 +Ctrl.hexinfo = hexinfo:53191b1dd3f94d83084d61d6 +Output = 0ad475c1826da3007637970c8b92b993 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:6ee6c00d70a6cd14bd5a4e8fcfec8386 +Ctrl.hexsalt = hexsalt:532f5131e0a2fecc722f87e5aa2062cb +Ctrl.hexinfo = hexinfo:861aa2886798231259bd0314 +Output = 13479e9a91dd20fdd757d68ffe8869fb + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:cb09b565de1ac27a50289b3704b93afd +Ctrl.hexsalt = hexsalt:d504c1c41a499481ce88695d18ae2e8f +Ctrl.hexinfo = hexinfo:5ed3768c2c7835943a789324 +Output = f081c0255b0cae16edc6ce1d6c9d12bc + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:98f50345fd970639a1b7935f501e1d7c +Ctrl.hexsalt = hexsalt:3691939461247e9f74382ae4ef629b17 +Ctrl.hexinfo = hexinfo:6ddbdb1314663152c3ccc192 +Output = 56f42183ed3e287298dbbecf143f51ac + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:a72b0076221727eca4d3ef8f4d88ac96 +Ctrl.hexsalt = hexsalt:397dc6807de2c1d5ba52e03c4e6c7a19 +Ctrl.hexinfo = hexinfo:12379bd7873a7dbabe894ac8 +Output = 26c0f937e8ca337a859b6c092fe22b9a + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:0b09bf8ebe1e85a049174c521e35be64 +Ctrl.hexsalt = hexsalt:313d29bbeaa5ac9e52278f7619d29d93 +Ctrl.hexinfo = hexinfo:e2ac98de1486959bfc6363c0 +Output = 4bfdf78782a45e2a5858edb851c5783c + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:e907ad4fe811ee047af77e0c4418226a +Ctrl.hexsalt = hexsalt:5000ef57104ca2e86a5fec5883ea4ea8 +Ctrl.hexinfo = hexinfo:c4ee443920f2b7542eee2a24 +Output = 06bfbd9571462c920a5a1b589c765383 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:608dae15fe8b906d2dc649815bdee148 +Ctrl.hexsalt = hexsalt:742cc5a02a24d09c66fd9da0d0c571f6 +Ctrl.hexinfo = hexinfo:ba60ff781e2756cba07f6524 +Output = 7f7f9e5d8f89a8edd10289f1d690f629 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:eb39e8dc7c40b906216108e2592bb6cd +Ctrl.hexsalt = hexsalt:af9f612da575c1afc8c4afff4ced34e1 +Ctrl.hexinfo = hexinfo:84b7f0628df0cb22baaa279a +Output = 5202576c69c6276daedf4916de250d19 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:4bac0c1a963b8cf6933beb2ad191a31e +Ctrl.hexsalt = hexsalt:debd24d71a1a7ae77f7e3aa24d939635 +Ctrl.hexinfo = hexinfo:9e51c8593cec92c89e82439a +Output = ecb9889f9004f80716b56c44910f160c + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:8aa41e3c8076ea01ca6789dd18709a68 +Ctrl.hexsalt = hexsalt:7c9dacc409cde7b05efdae07bd9973db +Ctrl.hexinfo = hexinfo:52651f0f2e858bbfbacb2533 +Output = b8683c9a982e0826d659a1ab77a603d7 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 +Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c +Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 +Output = be32 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 +Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c +Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 +Output = be32e7d3 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 +Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c +Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 +Output = be32e7d306d8 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 +Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c +Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 +Output = be32e7d306d89102 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 +Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c +Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 +Output = be32e7d306d891028be0 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 +Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c +Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 +Output = be32e7d306d891028be088f2 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 +Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c +Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 +Output = be32e7d306d891028be088f213f9 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 +Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c +Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 +Output = be32e7d306d891028be088f213f9f947 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 +Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c +Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 +Output = be32e7d306d891028be088f213f9f947c504 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 +Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c +Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 +Output = be32e7d306d891028be088f213f9f947c50420d9 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 +Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c +Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 +Output = be32e7d306d891028be088f213f9f947c50420d9b5a1 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 +Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c +Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 +Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca6 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 +Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c +Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 +Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 +Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c +Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 +Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd99 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 +Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c +Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 +Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995de + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 +Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c +Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 +Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995dedd8e + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 +Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c +Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 +Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995dedd8e6137 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 +Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c +Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 +Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995dedd8e6137c710 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 +Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c +Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 +Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995dedd8e6137c7104d67 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 +Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c +Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 +Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995dedd8e6137c7104d67f2ca + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 +Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c +Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 +Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995dedd8e6137c7104d67f2ca9091 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 +Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c +Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 +Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995dedd8e6137c7104d67f2ca90915dda + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 +Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c +Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 +Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995dedd8e6137c7104d67f2ca90915dda0ab6 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 +Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c +Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 +Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995dedd8e6137c7104d67f2ca90915dda0ab68af2 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 +Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c +Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 +Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995dedd8e6137c7104d67f2ca90915dda0ab68af2f355 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 +Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c +Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 +Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995dedd8e6137c7104d67f2ca90915dda0ab68af2f355b904 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 +Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c +Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 +Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995dedd8e6137c7104d67f2ca90915dda0ab68af2f355b904f9eb + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 +Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c +Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 +Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995dedd8e6137c7104d67f2ca90915dda0ab68af2f355b904f9eb0388 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 +Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c +Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 +Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995dedd8e6137c7104d67f2ca90915dda0ab68af2f355b904f9eb0388b5b7 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 +Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c +Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 +Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995dedd8e6137c7104d67f2ca90915dda0ab68af2f355b904f9eb0388b5b7fe19 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 +Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c +Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 +Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995dedd8e6137c7104d67f2ca90915dda0ab68af2f355b904f9eb0388b5b7fe193c95 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 +Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c +Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 +Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995dedd8e6137c7104d67f2ca90915dda0ab68af2f355b904f9eb0388b5b7fe193c9546d4 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 +Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c +Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 +Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995dedd8e6137c7104d67f2ca90915dda0ab68af2f355b904f9eb0388b5b7fe193c9546d45849 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 +Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c +Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 +Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995dedd8e6137c7104d67f2ca90915dda0ab68af2f355b904f9eb0388b5b7fe193c9546d45849133d + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:f4e1 +Ctrl.hexsalt = hexsalt:3638271ccd68a25dc24ecddd39ef3f89 +Ctrl.hexinfo = hexinfo:348a37a27ef1282f5f020dcc +Output = 3f661ec46fcc1e110b88f33ee7dbc308 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:253554e5 +Ctrl.hexsalt = hexsalt:3638271ccd68a25dc24ecddd39ef3f89 +Ctrl.hexinfo = hexinfo:348a37a27ef1282f5f020dcc +Output = 73ccb357554ca44967d507518262e38d + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:e10d0e0bc95b +Ctrl.hexsalt = hexsalt:3638271ccd68a25dc24ecddd39ef3f89 +Ctrl.hexinfo = hexinfo:348a37a27ef1282f5f020dcc +Output = c4f1cf190980b6777bb35107654b25f9 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:451f7f2c23c51326 +Ctrl.hexsalt = hexsalt:3638271ccd68a25dc24ecddd39ef3f89 +Ctrl.hexinfo = hexinfo:348a37a27ef1282f5f020dcc +Output = ddb2d7475d00cc65bff6904b4f0b54ba + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:0f27277ee800d6cc5425 +Ctrl.hexsalt = hexsalt:3638271ccd68a25dc24ecddd39ef3f89 +Ctrl.hexinfo = hexinfo:348a37a27ef1282f5f020dcc +Output = 1100a6049ae9d8be01ab3829754cecc2 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:20438ff1f26390dbc3a1a6d0 +Ctrl.hexsalt = hexsalt:3638271ccd68a25dc24ecddd39ef3f89 +Ctrl.hexinfo = hexinfo:348a37a27ef1282f5f020dcc +Output = 5180382f740444ada597197f98e73e1e + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:b74a149a161546f8c20b06ac4ed4 +Ctrl.hexsalt = hexsalt:3638271ccd68a25dc24ecddd39ef3f89 +Ctrl.hexinfo = hexinfo:348a37a27ef1282f5f020dcc +Output = 44f676e85c1b1a8bbc3d319218631ca3 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:8aa7df46b8cb3fe47228494f4e116b2c +Ctrl.hexsalt = hexsalt:3638271ccd68a25dc24ecddd39ef3f89 +Ctrl.hexinfo = hexinfo:348a37a27ef1282f5f020dcc +Output = ebb24413855a0a3249960d0de0f4750d + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:a678236b6ac82077b23f73a510c1d0e2 +Ctrl.hexsalt = hexsalt:46ee4f36a4167a09cde5a33b130c6e1c +Ctrl.hexinfo = hexinfo:d851 +Output = 5dbe10ead8f81a81a29072eca4501658 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:a678236b6ac82077b23f73a510c1d0e2 +Ctrl.hexsalt = hexsalt:46ee4f36a4167a09cde5a33b130c6e1c +Ctrl.hexinfo = hexinfo:b04da03c +Output = 0a08d7616dcbec25a36f1936b82992ca + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:a678236b6ac82077b23f73a510c1d0e2 +Ctrl.hexsalt = hexsalt:46ee4f36a4167a09cde5a33b130c6e1c +Ctrl.hexinfo = hexinfo:f9e8b47eade3 +Output = 84a29697445179b662d85dbc59bf8042 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:a678236b6ac82077b23f73a510c1d0e2 +Ctrl.hexsalt = hexsalt:46ee4f36a4167a09cde5a33b130c6e1c +Ctrl.hexinfo = hexinfo:5b141bfa54fcf824 +Output = be7660c840644cec84d67d95ba7ebf2d + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:a678236b6ac82077b23f73a510c1d0e2 +Ctrl.hexsalt = hexsalt:46ee4f36a4167a09cde5a33b130c6e1c +Ctrl.hexinfo = hexinfo:736e7ddb856f0ba14744 +Output = e3010b1fbcb02fd8baa8449ac71d0c62 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:a678236b6ac82077b23f73a510c1d0e2 +Ctrl.hexsalt = hexsalt:46ee4f36a4167a09cde5a33b130c6e1c +Ctrl.hexinfo = hexinfo:c54320ff6e7d1a3b0b3aea00 +Output = df0ac84982999cda676e4cbf707c42f0 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:a678236b6ac82077b23f73a510c1d0e2 +Ctrl.hexsalt = hexsalt:46ee4f36a4167a09cde5a33b130c6e1c +Ctrl.hexinfo = hexinfo:37ab143e1b4ab61d0294ea8afbc7 +Output = 93eec7f4dda18b7e710dbbd7570ebd13 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:a678236b6ac82077b23f73a510c1d0e2 +Ctrl.hexsalt = hexsalt:46ee4f36a4167a09cde5a33b130c6e1c +Ctrl.hexinfo = hexinfo:c3146575d2c60981511e700902fc2ac1 +Output = e9125f77d699faa53d5bc48f3fc2f7d0 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:0031558fddb96e3db2e0496026302055 +Ctrl.hexsalt = hexsalt:1ae1 +Ctrl.hexinfo = hexinfo:97ed3540c7466ab27395fe79 +Output = ddf7eedcd997eca3943d4519aaf414f4 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:0031558fddb96e3db2e0496026302055 +Ctrl.hexsalt = hexsalt:3bda13b6 +Ctrl.hexinfo = hexinfo:97ed3540c7466ab27395fe79 +Output = ec783ca20501df3cacac5ab4adbc6427 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:0031558fddb96e3db2e0496026302055 +Ctrl.hexsalt = hexsalt:c792f52e5876 +Ctrl.hexinfo = hexinfo:97ed3540c7466ab27395fe79 +Output = 9303a2562e6f8c418e3fcc081b94bdcf + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:0031558fddb96e3db2e0496026302055 +Ctrl.hexsalt = hexsalt:a9b7a64840d52633 +Ctrl.hexinfo = hexinfo:97ed3540c7466ab27395fe79 +Output = aab6b0dc19bae0dd7fa02391ac3d6ef1 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:0031558fddb96e3db2e0496026302055 +Ctrl.hexsalt = hexsalt:8f62a3ec15cdf9b3522f +Ctrl.hexinfo = hexinfo:97ed3540c7466ab27395fe79 +Output = 1516d5ed7f46474d250408b0864647cf + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:0031558fddb96e3db2e0496026302055 +Ctrl.hexsalt = hexsalt:55ed67cbdc98ed8e45214704 +Ctrl.hexinfo = hexinfo:97ed3540c7466ab27395fe79 +Output = 38bf96a3d737a84dc10a835d340b6866 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:0031558fddb96e3db2e0496026302055 +Ctrl.hexsalt = hexsalt:e4946aff3b2ab891b311234c77bc +Ctrl.hexinfo = hexinfo:97ed3540c7466ab27395fe79 +Output = 3ddd870471ff028a63c5f1bacc7e5b5c + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:0031558fddb96e3db2e0496026302055 +Ctrl.hexsalt = hexsalt:91e8378de5348cea41f84c41e8546e34 +Ctrl.hexinfo = hexinfo:97ed3540c7466ab27395fe79 +Output = bf1eb0eab488b2393ad6a1c2eb804381 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:4ce16564db9615f75d46c6a9837af7ca +Ctrl.hexsalt = hexsalt:6199187690823def2037e0632577c6b1 +Output = 0a102289b16cbf4b + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:2578fe1116e27e3a5e8e935e892e12eb +Ctrl.hexsalt = hexsalt:6199187690823def2037e0632577c6b1 +Output = dd5773998893ad5a93f9819c8e798aab + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:e9dd8bd75f29661e61703346bbf2df47 +Ctrl.hexsalt = hexsalt:6199187690823def2037e0632577c6b1 +Output = 32136643daa64aaac0e2886364f157ba923d7b36ada761eb + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:e4640d3752cf48186a8ad2d7d4a81210 +Ctrl.hexsalt = hexsalt:6199187690823def2037e0632577c6b1 +Output = 6379d59efbe02576663af5efaccb9d063f596a22c8e1fed12cde7cdd7f327e88 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:3bd9a074a219d62273c3f639659a3ecd +Ctrl.hexsalt = hexsalt:6199187690823def2037e0632577c6b1 +Output = cc45eb2ab80272c1e082b4f167ee4e086f12af3fbd0c812dda5568fea702928999cde3899cffc8a8 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:2147c0fb1c7587b22fa44ce3bf3d8f5b +Ctrl.hexsalt = hexsalt:6199187690823def2037e0632577c6b1 +Output = 4e3a8827fcdb214686b35bfcc497ca69dccb78d3464aa4af0704ec0fba03c7bb10b9a4e31e27b1b2379a32e46935309c + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:2c2438b6321fed7a9eac200b91b3ac30 +Ctrl.hexsalt = hexsalt:6199187690823def2037e0632577c6b1 +Output = b402fda16e1c2719263be82158972c9080a7bafcbe0a3a6ede3504a3d5c8c0c0e00fe7e5f6bb3afdfa4d661b8fbe4bd7b950cfe0b2443bbd + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:0ffa4c40a822f6e3d86053aefe738eac +Ctrl.hexsalt = hexsalt:6199187690823def2037e0632577c6b1 +Output = 0486d589aa71a603c09120fb76eeab3293eee2dc36a91b23eb954d6703ade8a7b660d920c5a6f7bf3898d0e81fbad3a680b74b33680e0cc6a16aa616d078b256 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:a801d997ed539ae9aa05d17871eb7fab +Ctrl.hexinfo = hexinfo:03697296e42a6fdbdb24b3ec +Output = 1a5efa3aca87c1f4 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:e9624e112f9e90e7bf8a749cf37d920c +Ctrl.hexinfo = hexinfo:03697296e42a6fdbdb24b3ec +Output = ee93ca3986cc43516ae4e29fd7a90ef1 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:a92acdee54a84a4564d4782d47801ec0 +Ctrl.hexinfo = hexinfo:03697296e42a6fdbdb24b3ec +Output = 3116b87eaffaa0cc48a72e6c1574df335d706f7c860b44e9 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:e60d902e63b1a2bf5dab733cadb47b10 +Ctrl.hexinfo = hexinfo:03697296e42a6fdbdb24b3ec +Output = 3fde6c078dd6dc65aacf62beafa39398d2b3d7cfb4b0ee4807bfc98a15330eef + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:d3b747a1d1584a0fc5aefcd4dd8ef9c3 +Ctrl.hexinfo = hexinfo:03697296e42a6fdbdb24b3ec +Output = 2c4363597d42f9f8736e8050b4a6dd033d7ddac6f7211c4810ef74aff01f101d885767d7ae6f1d7f + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:119559a2c0a8888e9c95b9989a460d97 +Ctrl.hexinfo = hexinfo:03697296e42a6fdbdb24b3ec +Output = 97922585f69adf484930cf22b8378c797694438502fa47e2f19f0fee97ca11451f3bc81a20c1d74964c63ab2d5df1985 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:807f375266988df5d0ae878efac424fa +Ctrl.hexinfo = hexinfo:03697296e42a6fdbdb24b3ec +Output = ba78ef8ab720fc583bb64581917634fca230876cc344e46b44fe61f3bdab556ee753743b78db4b16c0fcd8f987aebad15d0b7b13a10f6819 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:f7906f870b256753b5bc3ef408e47e9b +Ctrl.hexinfo = hexinfo:03697296e42a6fdbdb24b3ec +Output = 96bee2ae234f98c285aa970bd54c2e2891febf734bad58a91dc7a97490b6b05fe539f2156ae3acd2e661eced0d59084fda340cd1ba3daa7ca2a550d7b1c19462 + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA512 +Ctrl.hexsecret = hexsecret:73b6e2ede34aae5680e2289e611ffc3a +Ctrl.hexsalt = hexsalt:28df8439747d5a9b502e0838ca6999b2 +Ctrl.hexinfo = hexinfo:232941631fc04dd82f727a51 +Output = b0d36cd7d6b23b48ca6f89901bb784ec + +KDF = SSKDF +Ctrl.mac = mac:HMAC +Ctrl.digest = digest:SHA512 +Ctrl.hexsecret = hexsecret:abb7d7554c0de41cada5826a1f79d76f +Ctrl.hexinfo = hexinfo:a80b9061879365b1669c87a8 +Output = 71e29fff69198eca92f5180bcb281fbdaf409ec7c99ca704b1f56e782d3c4db10cb4158e6634d793a46c13bffb6bdb71a01101936ea9b20f7dbe302558b1356c + +Title = SSKDF Test vectors from RFC 8636 Section 8 (With precoumputed ASN.1 info) + +KDF = SSKDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +Ctrl.hexinfo = hexinfo:307e300a06082b06010502030601a01f041d301ba0071b0553552e5345a110300ea003020101a10730051b036c6861a12904273025a0071b0553552e5345a11a3018a003020101a111300f1b066b72627467741b0553552e5345a22404223020a003020112a10c040aaaaaaaaaaaaaaaaaaaaaa20b0409bbbbbbbbbbbbbbbbbb +Output = e6ab38c9413e035bb079201ed0b6b73d8d49a814a737c04ee6649614206f73ad + +KDF = SSKDF +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +Ctrl.hexinfo = hexinfo:307e300a06082b06010502030602a01f041d301ba0071b0553552e5345a110300ea003020101a10730051b036c6861a12904273025a0071b0553552e5345a11a3018a003020101a111300f1b066b72627467741b0553552e5345a22404223020a003020112a10c040aaaaaaaaaaaaaaaaaaaaaa20b0409bbbbbbbbbbbbbbbbbb +Output = 77ef4e48c420ae3fec75109d7981697eed5d295c90c62564f7bfd101fa9bc1d5 + +KDF = SSKDF +Ctrl.digest = digest:SHA512 +Ctrl.hexsecret = hexsecret:00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +Ctrl.hexinfo = hexinfo:307e300a06082b06010502030603a01f041d301ba0071b0553552e5345a110300ea003020101a10730051b036c6861a12904273025a0071b0553552e5345a11a3018a003020101a111300f1b066b72627467741b0553552e5345a22404223020a003020110a10c040aaaaaaaaaaaaaaaaaaaaaa20b0409bbbbbbbbbbbbbbbbbb +Output = d3c78b78d75313e9a926f75dfb012363fa17fa01db diff --git a/test/recipes/30-test_evp_data/evpkdf.txt b/test/recipes/30-test_evp_data/evpkdf_ssh.txt similarity index 86% rename from test/recipes/30-test_evp_data/evpkdf.txt rename to test/recipes/30-test_evp_data/evpkdf_ssh.txt index ac4f5e87fd..d870df7037 100644 --- a/test/recipes/30-test_evp_data/evpkdf.txt +++ b/test/recipes/30-test_evp_data/evpkdf_ssh.txt @@ -9,444 +9,7 @@ # Tests start with one of these keywords # Cipher Decrypt Derive Digest Encoding KDF MAC PBE # PrivPubKeyPair Sign Verify VerifyRecover -# and continue until a blank line. Lines starting with a pound sign, -# like this prolog, are ignored. - -Title = TLS1 PRF tests (from NIST test vectors) - -KDF=TLS1-PRF -Ctrl.digest = digest:MD5-SHA1 -Ctrl.Secret = hexsecret:bded7fa5c1699c010be23dd06ada3a48349f21e5f86263d512c0c5cc379f0e780ec55d9844b2f1db02a96453513568d0 -Ctrl.label = seed:master secret -Ctrl.client_random = hexseed:e5acaf549cd25c22d964c0d930fa4b5261d2507fad84c33715b7b9a864020693 -Ctrl.server_random = hexseed:135e4d557fdf3aa6406d82975d5c606a9734c9334b42136e96990fbd5358cdb2 -Output = 2f6962dfbc744c4b2138bb6b3d33054c5ecc14f24851d9896395a44ab3964efc2090c5bf51a0891209f46c1e1e998f62 - -KDF=TLS1-PRF -Ctrl.digest = digest:MD5-SHA1 -Ctrl.Secret = hexsecret:2f6962dfbc744c4b2138bb6b3d33054c5ecc14f24851d9896395a44ab3964efc2090c5bf51a0891209f46c1e1e998f62 -Ctrl.label = seed:key expansion -Ctrl.server_random = hexseed:67267e650eb32444119d222a368c191af3082888dc35afe8368e638c828874be -Ctrl.client_random = hexseed:d58a7b1cd4fedaa232159df652ce188f9d997e061b9bf48e83b62990440931f6 -Output = 3088825988e77fce68d19f756e18e43eb7fe672433504feaf99b3c503d9091b164f166db301d70c9fc0870b4a94563907bee1a61fb786cb717576890bcc51cb9ead97e01d0a2fea99c953377b195205ff07b369589178796edc963fd80fdbe518a2fc1c35c18ae8d - -KDF=TLS1-PRF -Ctrl.digest = digest:SHA256 -Ctrl.Secret = hexsecret:f8938ecc9edebc5030c0c6a441e213cd24e6f770a50dda07876f8d55da062bcadb386b411fd4fe4313a604fce6c17fbc -Ctrl.label = seed:master secret -Ctrl.client_random = hexseed:36c129d01a3200894b9179faac589d9835d58775f9b5ea3587cb8fd0364cae8c -Ctrl.server_random = hexseed:f6c9575ed7ddd73e1f7d16eca115415812a43c2b747daaaae043abfb50053fce -Output = 202c88c00f84a17a20027079604787461176455539e705be730890602c289a5001e34eeb3a043e5d52a65e66125188bf - -KDF=TLS1-PRF -Ctrl.digest = digest:SHA256 -Ctrl.Secret = hexsecret:202c88c00f84a17a20027079604787461176455539e705be730890602c289a5001e34eeb3a043e5d52a65e66125188bf -Ctrl.label = seed:key expansion -Ctrl.server_random = hexseed:ae6c806f8ad4d80784549dff28a4b58fd837681a51d928c3e30ee5ff14f39868 -Ctrl.client_random = hexseed:62e1fd91f23f558a605f28478c58cf72637b89784d959df7e946d3f07bd1b616 -Output = d06139889fffac1e3a71865f504aa5d0d2a2e89506c6f2279b670c3e1b74f531016a2530c51a3a0f7e1d6590d0f0566b2f387f8d11fd4f731cdd572d2eae927f6f2f81410b25e6960be68985add6c38445ad9f8c64bf8068bf9a6679485d966f1ad6f68b43495b10a683755ea2b858d70ccac7ec8b053c6bd41ca299d4e51928 - -# As above but use long name for KDF -KDF=tls1-prf -Ctrl.digest = digest:SHA256 -Ctrl.Secret = hexsecret:202c88c00f84a17a20027079604787461176455539e705be730890602c289a5001e34eeb3a043e5d52a65e66125188bf -Ctrl.label = seed:key expansion -Ctrl.server_random = hexseed:ae6c806f8ad4d80784549dff28a4b58fd837681a51d928c3e30ee5ff14f39868 -Ctrl.client_random = hexseed:62e1fd91f23f558a605f28478c58cf72637b89784d959df7e946d3f07bd1b616 -Output = d06139889fffac1e3a71865f504aa5d0d2a2e89506c6f2279b670c3e1b74f531016a2530c51a3a0f7e1d6590d0f0566b2f387f8d11fd4f731cdd572d2eae927f6f2f81410b25e6960be68985add6c38445ad9f8c64bf8068bf9a6679485d966f1ad6f68b43495b10a683755ea2b858d70ccac7ec8b053c6bd41ca299d4e51928 - -# Missing digest. -KDF=TLS1-PRF -Ctrl.Secret = hexsecret:01 -Ctrl.Seed = hexseed:02 -Output = 03 -Result = KDF_DERIVE_ERROR - -# Missing secret. -KDF=TLS1-PRF -Ctrl.digest = digest:MD5-SHA1 -Ctrl.Seed = hexseed:02 -Output = 03 -Result = KDF_DERIVE_ERROR - -Title = HKDF tests (from RFC5869 test vectors) - -KDF = HKDF -Ctrl.digest = digest:SHA256 -Ctrl.IKM = hexkey:0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b -Ctrl.salt = hexsalt:000102030405060708090a0b0c -Ctrl.info = hexinfo:f0f1f2f3f4f5f6f7f8f9 -Output = 3cb25f25faacd57a90434f64d0362f2a2d2d0a90cf1a5a4c5db02d56ecc4c5bf34007208d5b887185865 - -KDF = HKDF -Ctrl.mode = mode:EXTRACT_ONLY -Ctrl.digest = digest:SHA256 -Ctrl.IKM = hexkey:0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b -Ctrl.salt = hexsalt:000102030405060708090a0b0c -Output = 077709362c2e32df0ddc3f0dc47bba6390b6c73bb50f9c3122ec844ad7c2b3e5 - -KDF = HKDF -Ctrl.mode = mode:EXPAND_ONLY -Ctrl.digest = digest:SHA256 -Ctrl.IKM = hexkey:077709362c2e32df0ddc3f0dc47bba6390b6c73bb50f9c3122ec844ad7c2b3e5 -Ctrl.info = hexinfo:f0f1f2f3f4f5f6f7f8f9 -Output = 3cb25f25faacd57a90434f64d0362f2a2d2d0a90cf1a5a4c5db02d56ecc4c5bf34007208d5b887185865 - -KDF = HKDF -Ctrl.digest = digest:SHA256 -Ctrl.IKM = hexkey:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f -Ctrl.salt = hexsalt:606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeaf -Ctrl.info = hexinfo:b0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff -Output = b11e398dc80327a1c8e7f78c596a49344f012eda2d4efad8a050cc4c19afa97c59045a99cac7827271cb41c65e590e09da3275600c2f09b8367793a9aca3db71cc30c58179ec3e87c14c01d5c1f3434f1d87 - -KDF = HKDF -Ctrl.mode = mode:EXTRACT_ONLY -Ctrl.digest = digest:SHA256 -Ctrl.IKM = hexkey:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f -Ctrl.salt = hexsalt:606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeaf -Output = 06a6b88c5853361a06104c9ceb35b45cef760014904671014a193f40c15fc244 - -KDF = HKDF -Ctrl.mode = mode:EXPAND_ONLY -Ctrl.digest = digest:SHA256 -Ctrl.IKM = hexkey:06a6b88c5853361a06104c9ceb35b45cef760014904671014a193f40c15fc244 -Ctrl.info = hexinfo:b0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff -Output = b11e398dc80327a1c8e7f78c596a49344f012eda2d4efad8a050cc4c19afa97c59045a99cac7827271cb41c65e590e09da3275600c2f09b8367793a9aca3db71cc30c58179ec3e87c14c01d5c1f3434f1d87 - -KDF = HKDF -Ctrl.digest = digest:SHA256 -Ctrl.IKM = hexkey:0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b -Ctrl.salt = salt: -Ctrl.info = info: -Output = 8da4e775a563c18f715f802a063c5a31b8a11f5c5ee1879ec3454e5f3c738d2d9d201395faa4b61a96c8 - -KDF = HKDF -Ctrl.mode = mode:EXTRACT_ONLY -Ctrl.digest = digest:SHA256 -Ctrl.IKM = hexkey:0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b -Ctrl.salt = salt: -Ctrl.info = info: -Output = 19ef24a32c717b167f33a91d6f648bdf96596776afdb6377ac434c1c293ccb04 - -KDF = HKDF -Ctrl.mode = mode:EXPAND_ONLY -Ctrl.digest = digest:SHA256 -Ctrl.IKM = hexkey:19ef24a32c717b167f33a91d6f648bdf96596776afdb6377ac434c1c293ccb04 -Ctrl.info = info: -Output = 8da4e775a563c18f715f802a063c5a31b8a11f5c5ee1879ec3454e5f3c738d2d9d201395faa4b61a96c8 - -KDF = HKDF -Ctrl.digest = digest:SHA1 -Ctrl.IKM = hexkey:0b0b0b0b0b0b0b0b0b0b0b -Ctrl.salt = hexsalt:000102030405060708090a0b0c -Ctrl.info = hexinfo:f0f1f2f3f4f5f6f7f8f9 -Output = 085a01ea1b10f36933068b56efa5ad81a4f14b822f5b091568a9cdd4f155fda2c22e422478d305f3f896 - -KDF = HKDF -Ctrl.mode = mode:EXTRACT_ONLY -Ctrl.digest = digest:SHA1 -Ctrl.IKM = hexkey:0b0b0b0b0b0b0b0b0b0b0b -Ctrl.salt = hexsalt:000102030405060708090a0b0c -Output = 9b6c18c432a7bf8f0e71c8eb88f4b30baa2ba243 - -KDF = HKDF -Ctrl.mode = mode:EXPAND_ONLY -Ctrl.digest = digest:SHA1 -Ctrl.IKM = hexkey:9b6c18c432a7bf8f0e71c8eb88f4b30baa2ba243 -Ctrl.info = hexinfo:f0f1f2f3f4f5f6f7f8f9 -Output = 085a01ea1b10f36933068b56efa5ad81a4f14b822f5b091568a9cdd4f155fda2c22e422478d305f3f896 - -KDF = HKDF -Ctrl.digest = digest:SHA1 -Ctrl.IKM = hexkey:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f -Ctrl.salt = hexsalt:606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeaf -Ctrl.info = hexinfo:b0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff -Output = 0bd770a74d1160f7c9f12cd5912a06ebff6adcae899d92191fe4305673ba2ffe8fa3f1a4e5ad79f3f334b3b202b2173c486ea37ce3d397ed034c7f9dfeb15c5e927336d0441f4c4300e2cff0d0900b52d3b4 - -KDF = HKDF -Ctrl.mode = mode:EXTRACT_ONLY -Ctrl.digest = digest:SHA1 -Ctrl.IKM = hexkey:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f -Ctrl.salt = hexsalt:606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeaf -Output = 8adae09a2a307059478d309b26c4115a224cfaf6 - -KDF = HKDF -Ctrl.mode = mode:EXPAND_ONLY -Ctrl.digest = digest:SHA1 -Ctrl.IKM = hexkey:8adae09a2a307059478d309b26c4115a224cfaf6 -Ctrl.info = hexinfo:b0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff -Output = 0bd770a74d1160f7c9f12cd5912a06ebff6adcae899d92191fe4305673ba2ffe8fa3f1a4e5ad79f3f334b3b202b2173c486ea37ce3d397ed034c7f9dfeb15c5e927336d0441f4c4300e2cff0d0900b52d3b4 - -KDF = HKDF -Ctrl.digest = digest:SHA1 -Ctrl.IKM = hexkey:0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b -Ctrl.salt = salt: -Ctrl.info = info: -Output = 0ac1af7002b3d761d1e55298da9d0506b9ae52057220a306e07b6b87e8df21d0ea00033de03984d34918 - -KDF = HKDF -Ctrl.mode = mode:EXTRACT_ONLY -Ctrl.digest = digest:SHA1 -Ctrl.IKM = hexkey:0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b -Ctrl.salt = salt: -Output = da8c8a73c7fa77288ec6f5e7c297786aa0d32d01 - -KDF = HKDF -Ctrl.mode = mode:EXPAND_ONLY -Ctrl.digest = digest:SHA1 -Ctrl.IKM = hexkey:da8c8a73c7fa77288ec6f5e7c297786aa0d32d01 -Ctrl.info = info: -Output = 0ac1af7002b3d761d1e55298da9d0506b9ae52057220a306e07b6b87e8df21d0ea00033de03984d34918 - -KDF = HKDF -Ctrl.digest = digest:SHA1 -Ctrl.IKM = hexkey:0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c -Ctrl.salt = salt: -Ctrl.info = info: -Output = 2c91117204d745f3500d636a62f64f0ab3bae548aa53d423b0d1f27ebba6f5e5673a081d70cce7acfc48 - -KDF = HKDF -Ctrl.mode = mode:EXTRACT_ONLY -Ctrl.digest = digest:SHA1 -Ctrl.IKM = hexkey:0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c -Ctrl.salt = salt: -Output = 2adccada18779e7c2077ad2eb19d3f3e731385dd - -KDF = HKDF -Ctrl.mode = mode:EXPAND_ONLY -Ctrl.digest = digest:SHA1 -Ctrl.IKM = hexkey:2adccada18779e7c2077ad2eb19d3f3e731385dd -Ctrl.info = info: -Output = 2c91117204d745f3500d636a62f64f0ab3bae548aa53d423b0d1f27ebba6f5e5673a081d70cce7acfc48 - -KDF = HKDF -Ctrl.IKM = hexkey:0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c -Ctrl.salt = salt: -Ctrl.info = info: -Output = 00 -Result = KDF_DERIVE_ERROR - -KDF = HKDF -Ctrl.digest = digest:SHA1 -Ctrl.salt = salt: -Ctrl.info = info: -Output = 00 -Result = KDF_DERIVE_ERROR - -KDF = HKDF -Ctrl.digest = digest:SHA1 -Ctrl.IKM = hexkey:0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c -Ctrl.info = info: -Output = 2c91117204d745f3500d636a62f64f0ab3bae548aa53d423b0d1f27ebba6f5e5673a081d70cce7acfc48 - -KDF = HKDF -Ctrl.digest = digest:SHA1 -Ctrl.IKM = hexkey:0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c -Ctrl.salt = salt: -Output = 2c91117204d745f3500d636a62f64f0ab3bae548aa53d423b0d1f27ebba6f5e5673a081d70cce7acfc48 - -KDF = HKDF -Ctrl.mode = mode:EXTRACT_AND_EXPAND -Ctrl.digest = digest:SHA1 -Ctrl.IKM = hexkey:0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c -Ctrl.salt = salt: -Output = 2c91117204d745f3500d636a62f64f0ab3bae548aa53d423b0d1f27ebba6f5e5673a081d70cce7acfc48 - -Title = id-scrypt tests (from draft-josefsson-id-scrypt-kdf-03 and others) - -KDF = id-scrypt -Ctrl.pass = pass: -Ctrl.salt = salt: -Ctrl.N = n:16 -Ctrl.r = r:1 -Ctrl.p = p:1 -Output = 77d6576238657b203b19ca42c18a0497f16b4844e3074ae8dfdffa3fede21442fcd0069ded0948f8326a753a0fc81f17e8d3e0fb2e0d3628cf35e20c38d18906 - -KDF = id-scrypt -Ctrl.pass = pass:password -Ctrl.salt = salt:NaCl -Ctrl.N = n:1024 -Ctrl.r = r:8 -Ctrl.p = p:16 -Output = fdbabe1c9d3472007856e7190d01e9fe7c6ad7cbc8237830e77376634b3731622eaf30d92e22a3886ff109279d9830dac727afb94a83ee6d8360cbdfa2cc0640 - -KDF = id-scrypt -Ctrl.hexpass = hexpass:70617373776f7264 -Ctrl.salt = salt:NaCl -Ctrl.N = n:1024 -Ctrl.r = r:8 -Ctrl.p = p:16 -Output = fdbabe1c9d3472007856e7190d01e9fe7c6ad7cbc8237830e77376634b3731622eaf30d92e22a3886ff109279d9830dac727afb94a83ee6d8360cbdfa2cc0640 - -KDF = id-scrypt -Ctrl.pass = pass:password -Ctrl.hexsalt = hexsalt:4e61436c -Ctrl.N = n:1024 -Ctrl.r = r:8 -Ctrl.p = p:16 -Output = fdbabe1c9d3472007856e7190d01e9fe7c6ad7cbc8237830e77376634b3731622eaf30d92e22a3886ff109279d9830dac727afb94a83ee6d8360cbdfa2cc0640 - -KDF = id-scrypt -Ctrl.pass = pass:pleaseletmein -Ctrl.salt = salt:SodiumChloride -Ctrl.N = n:16384 -Ctrl.r = r:8 -Ctrl.p = p:1 -Output = 7023bdcb3afd7348461c06cd81fd38ebfda8fbba904f8e3ea9b543f6545da1f2d5432955613f0fcf62d49705242a9af9e61e85dc0d651e40dfcf017b45575887 - -# Out of memory -KDF = id-scrypt -Ctrl.pass = pass:pleaseletmein -Ctrl.salt = salt:SodiumChloride -Ctrl.N = n:1048576 -Ctrl.r = r:8 -Ctrl.p = p:1 -Result = INTERNAL_ERROR - -Title = PBKDF2 tests - -KDF = PBKDF2 -Ctrl.pkcs5 = pkcs5:1 -Ctrl.pass = pass:password -Ctrl.salt = salt:salt -Ctrl.iter = iter:1 -Ctrl.digest = digest:sha1 -Output = 0c60c80f961f0e71f3a9b524af6012062fe037a6 - -KDF = PBKDF2 -Ctrl.pkcs5 = pkcs5:1 -Ctrl.pass = pass:password -Ctrl.salt = salt:salt -Ctrl.iter = iter:1 -Ctrl.digest = digest:sha256 -Output = 120fb6cffcf8b32c43e7225256c4f837a86548c92ccc35480805987cb70be17b - -KDF = PBKDF2 -Ctrl.pkcs5 = pkcs5:1 -Ctrl.pass = pass:password -Ctrl.salt = salt:salt -Ctrl.iter = iter:1 -Ctrl.digest = digest:sha512 -Output = 867f70cf1ade02cff3752599a3a53dc4af34c7a669815ae5d513554e1c8cf252c02d470a285a0501bad999bfe943c08f050235d7d68b1da55e63f73b60a57fce - -KDF = PBKDF2 -Ctrl.pkcs5 = pkcs5:1 -Ctrl.pass = pass:password -Ctrl.salt = salt:salt -Ctrl.iter = iter:2 -Ctrl.digest = digest:sha1 -Output = ea6c014dc72d6f8ccd1ed92ace1d41f0d8de8957 - -KDF = PBKDF2 -Ctrl.pkcs5 = pkcs5:1 -Ctrl.pass = pass:password -Ctrl.salt = salt:salt -Ctrl.iter = iter:2 -Ctrl.digest = digest:sha256 -Output = ae4d0c95af6b46d32d0adff928f06dd02a303f8ef3c251dfd6e2d85a95474c43 - -KDF = PBKDF2 -Ctrl.pkcs5 = pkcs5:1 -Ctrl.pass = pass:password -Ctrl.salt = salt:salt -Ctrl.iter = iter:2 -Ctrl.digest = digest:sha512 -Output = e1d9c16aa681708a45f5c7c4e215ceb66e011a2e9f0040713f18aefdb866d53cf76cab2868a39b9f7840edce4fef5a82be67335c77a6068e04112754f27ccf4e - -KDF = PBKDF2 -Ctrl.pkcs5 = pkcs5:1 -Ctrl.pass = pass:password -Ctrl.salt = salt:salt -Ctrl.iter = iter:4096 -Ctrl.digest = digest:sha1 -Output = 4b007901b765489abead49d926f721d065a429c1 - -KDF = PBKDF2 -Ctrl.pkcs5 = pkcs5:1 -Ctrl.pass = pass:password -Ctrl.salt = salt:salt -Ctrl.iter = iter:4096 -Ctrl.digest = digest:sha256 -Output = c5e478d59288c841aa530db6845c4c8d962893a001ce4e11a4963873aa98134a - -KDF = PBKDF2 -Ctrl.pkcs5 = pkcs5:1 -Ctrl.pass = pass:password -Ctrl.salt = salt:salt -Ctrl.iter = iter:4096 -Ctrl.digest = digest:sha512 -Output = d197b1b33db0143e018b12f3d1d1479e6cdebdcc97c5c0f87f6902e072f457b5143f30602641b3d55cd335988cb36b84376060ecd532e039b742a239434af2d5 - -KDF = PBKDF2 -Ctrl.pass = pass:passwordPASSWORDpassword -Ctrl.salt = salt:saltSALTsaltSALTsaltSALTsaltSALTsalt -Ctrl.iter = iter:4096 -Ctrl.digest = digest:sha1 -Output = 3d2eec4fe41c849b80c8d83662c0e44a8b291a964cf2f07038 - -KDF = PBKDF2 -Ctrl.pass = pass:passwordPASSWORDpassword -Ctrl.salt = salt:saltSALTsaltSALTsaltSALTsaltSALTsalt -Ctrl.iter = iter:4096 -Ctrl.digest = digest:sha256 -Output = 348c89dbcbd32b2f32d814b8116e84cf2b17347ebc1800181c4e2a1fb8dd53e1c635518c7dac47e9 - -KDF = PBKDF2 -Ctrl.pass = pass:passwordPASSWORDpassword -Ctrl.salt = salt:saltSALTsaltSALTsaltSALTsaltSALTsalt -Ctrl.iter = iter:4096 -Ctrl.digest = digest:sha512 -Output = 8c0511f4c6e597c6ac6315d8f0362e225f3c501495ba23b868c005174dc4ee71115b59f9e60cd9532fa33e0f75aefe30225c583a186cd82bd4daea9724a3d3b8 - -KDF = PBKDF2 -Ctrl.pkcs5 = pkcs5:1 -Ctrl.hexpass = hexpass:7061737300776f7264 -Ctrl.hexsalt = hexsalt:7361006c74 -Ctrl.iter = iter:4096 -Ctrl.digest = digest:sha1 -Output = 56fa6aa75548099dcc37d7f03425e0c3 - -KDF = PBKDF2 -Ctrl.pkcs5 = pkcs5:1 -Ctrl.hexpass = hexpass:7061737300776f7264 -Ctrl.hexsalt = hexsalt:7361006c74 -Ctrl.iter = iter:4096 -Ctrl.digest = digest:sha256 -Output = 89b69d0516f829893c696226650a8687 - -KDF = PBKDF2 -Ctrl.pkcs5 = pkcs5:1 -Ctrl.hexpass = hexpass:7061737300776f7264 -Ctrl.hexsalt = hexsalt:7361006c74 -Ctrl.iter = iter:4096 -Ctrl.digest = digest:sha512 -Output = 9d9e9c4cd21fe4be24d5b8244c759665 - -Title = PBKDF2 tests for empty inputs - -KDF = PBKDF2 -Ctrl.pkcs5 = pkcs5:1 -Ctrl.pass = pass: -Ctrl.salt = salt:salt -Ctrl.iter = iter:1 -Ctrl.digest = digest:sha1 -Output = a33dddc30478185515311f8752895d36ea4363a2 - -KDF = PBKDF2 -Ctrl.pkcs5 = pkcs5:1 -Ctrl.pass = pass: -Ctrl.salt = salt:salt -Ctrl.iter = iter:1 -Ctrl.digest = digest:sha256 -Output = f135c27993baf98773c5cdb40a5706ce6a345cde - -KDF = PBKDF2 -Ctrl.pkcs5 = pkcs5:1 -Ctrl.pass = pass: -Ctrl.salt = salt:salt -Ctrl.iter = iter:1 -Ctrl.digest = digest:sha512 -Output = 00ef42cdbfc98d29db20976608e455567fdddf14 +# and continue until a blank line. Lines starting with a pound sign are ignored. Title = SSHKDF tests (from NIST CAVS 14.1 test vectors) # The first one uses md instead of digest to test alias works @@ -5302,1352 +4865,3 @@ Ctrl.hexsession_id = hexsession_id:a4ebd45934f56792b5112dcd75a1075fdc889245 Ctrl.type = type:A Output = FF Result = KDF_MISMATCH - -#There are currently no official test vectors for Single Step KDF -#https://github.com/patrickfav/singlestep-kdf/wiki/NIST-SP-800-56C-Rev1:-Non-Official-Test-Vectors -Title = Single Step KDF tests - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:d09a6b1a472f930db4f5e6b967900744 -Ctrl.hexinfo = hexinfo:b117255ab5f1b6b96fc434b0 -Output = b5a3c52e97ae6e8c5069954354eab3c7 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:343666c0dd34b756e70f759f14c304f5 -Ctrl.hexinfo = hexinfo:722b28448d7eab85491bce09 -Output = 1003b650ddd3f0891a15166db5ec881d - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:b84acf03ab08652dd7f82fa956933261 -Ctrl.hexinfo = hexinfo:3d8773ec068c86053a918565 -Output = 1635dcd1ce698f736831b4badb68ab2b - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:8cc24ca3f1d1a8b34783780b79890430 -Ctrl.hexinfo = hexinfo:f08d4f2d9a8e6d7105c0bc16 -Output = b8e716fb84a420aed4812cd76d9700ee - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:b616905a6f7562cd2689142ce21e42a3 -Ctrl.hexinfo = hexinfo:ead310159a909da87e7b4b40 -Output = 1b9201358c50fe5d5d42907c4a9fce78 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:3f57fd3fd56199b3eb33890f7ee28180 -Ctrl.hexinfo = hexinfo:7a5056ba4fdb034c7cb6c4fe -Output = e51ebd30a8c4b8449b0fb29d9adc11af - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:fb9fb108d104e9f662d6593fc84cde69 -Ctrl.hexinfo = hexinfo:5faf29211c1bdbf1b2696a7c -Output = 7a3a7e670656e48c390cdd7c51e167e0 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:237a39981794f4516dccffc3dda28396 -Ctrl.hexinfo = hexinfo:62ed9528d104c241e0f66275 -Output = 0c26fc9e90e1c5c5f943428301682045 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:b9b6c45f7279218fa09894e06366a3a1 -Ctrl.hexinfo = hexinfo:0f384339670aaed4b89ecb7e -Output = ee5fad414e32fad5d52a2bf61a7f6c72 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:08b7140e2cd0a4abd79171e4d5a71cad -Ctrl.hexinfo = hexinfo:099211f0d8a2e02dbb5958c0 -Output = 6162f5142e057efafd2c4f2bad5985a1 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 -Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b -Output = b4a2 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 -Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b -Output = b4a23963 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 -Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b -Output = b4a23963e07f - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 -Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b -Output = b4a23963e07f4853 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 -Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b -Output = b4a23963e07f485382cb - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 -Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b -Output = b4a23963e07f485382cb358a - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 -Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b -Output = b4a23963e07f485382cb358a493d - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 -Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b -Output = b4a23963e07f485382cb358a493daec1 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 -Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b -Output = b4a23963e07f485382cb358a493daec1759a - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 -Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b -Output = b4a23963e07f485382cb358a493daec1759ac704 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 -Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b -Output = b4a23963e07f485382cb358a493daec1759ac7043dbe - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 -Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b -Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 -Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b -Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 -Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b -Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 -Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b -Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf1050 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 -Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b -Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf105031f0 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 -Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b -Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf105031f0f239 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 -Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b -Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf105031f0f239f270 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 -Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b -Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf105031f0f239f270b7f3 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 -Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b -Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf105031f0f239f270b7f30616 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 -Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b -Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf105031f0f239f270b7f30616166f - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 -Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b -Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf105031f0f239f270b7f30616166f10e5 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 -Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b -Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf105031f0f239f270b7f30616166f10e5d2b4 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 -Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b -Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf105031f0f239f270b7f30616166f10e5d2b4cb11 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 -Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b -Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf105031f0f239f270b7f30616166f10e5d2b4cb11ba8b - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 -Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b -Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf105031f0f239f270b7f30616166f10e5d2b4cb11ba8bf4ba - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 -Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b -Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf105031f0f239f270b7f30616166f10e5d2b4cb11ba8bf4ba3f22 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 -Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b -Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf105031f0f239f270b7f30616166f10e5d2b4cb11ba8bf4ba3f227688 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 -Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b -Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf105031f0f239f270b7f30616166f10e5d2b4cb11ba8bf4ba3f2276885abf - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 -Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b -Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf105031f0f239f270b7f30616166f10e5d2b4cb11ba8bf4ba3f2276885abfbc3e - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 -Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b -Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf105031f0f239f270b7f30616166f10e5d2b4cb11ba8bf4ba3f2276885abfbc3e811a - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 -Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b -Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf105031f0f239f270b7f30616166f10e5d2b4cb11ba8bf4ba3f2276885abfbc3e811a568d - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 -Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b -Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf105031f0f239f270b7f30616166f10e5d2b4cb11ba8bf4ba3f2276885abfbc3e811a568d480d - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:ebe28edbae5a410b87a479243db3f690 -Ctrl.hexinfo = hexinfo:e60dd8b28228ce5b9be74d3b -Output = b4a23963e07f485382cb358a493daec1759ac7043dbeac37152c6ddf105031f0f239f270b7f30616166f10e5d2b4cb11ba8bf4ba3f2276885abfbc3e811a568d480d9192 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:d7e6 -Ctrl.hexinfo = hexinfo:0bbe1fa8722023d7c3da4fff -Output = 31e798e9931b612a3ad1b9b1008faa8c - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:4646779d -Ctrl.hexinfo = hexinfo:0bbe1fa8722023d7c3da4fff -Output = 139f68bcca879b490e268e569087d04d - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:d9811c81d4c6 -Ctrl.hexinfo = hexinfo:0bbe1fa8722023d7c3da4fff -Output = 914dc4f09cb633a76e6c389e04c64485 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:8838f9d99ec46f09 -Ctrl.hexinfo = hexinfo:0bbe1fa8722023d7c3da4fff -Output = 4f07dfb6f7a5bf348689e08b2e29c948 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:3e0939b33f34e779f30e -Ctrl.hexinfo = hexinfo:0bbe1fa8722023d7c3da4fff -Output = b42c7a98c23be19d1187ff960e87557f - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:f36230cacca4d245d303058c -Ctrl.hexinfo = hexinfo:0bbe1fa8722023d7c3da4fff -Output = 50f2068d8010d355d56c5e34aaffbc67 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:7005d32c3d4284c73c3aefc70438 -Ctrl.hexinfo = hexinfo:0bbe1fa8722023d7c3da4fff -Output = 66fd712ccf5462bbd41e89041ea7ea26 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:c01c83150b7734f8dbd6efd6f54d7365 -Ctrl.hexinfo = hexinfo:0bbe1fa8722023d7c3da4fff -Output = 5c5edb0ceda9cd0c7f1f3d9e239c67d5 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:da69f1dbbebc837480af692e7e9ee6b9 -Ctrl.hexinfo = hexinfo:9949 -Output = 33c83f54ed00fb1bccd2113e88550941 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:da69f1dbbebc837480af692e7e9ee6b9 -Ctrl.hexinfo = hexinfo:17144da6 -Output = a999c28961424cab35ec06015e8c376a - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:da69f1dbbebc837480af692e7e9ee6b9 -Ctrl.hexinfo = hexinfo:dffdee1062eb -Output = 4101ad50e626ed6f957bff926dfbb7db - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:da69f1dbbebc837480af692e7e9ee6b9 -Ctrl.hexinfo = hexinfo:9f365043e23b4648 -Output = 4d3e4b971b88771f229df9f564984832 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:da69f1dbbebc837480af692e7e9ee6b9 -Ctrl.hexinfo = hexinfo:a885a0c4567ddc4f96da -Output = bebbc30f5a83df5e9c9b57db33c0c879 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:da69f1dbbebc837480af692e7e9ee6b9 -Ctrl.hexinfo = hexinfo:c9d86183295bfe4c3d85f0fd -Output = 87c947e45407db63eb94cbaa02d14e94 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:da69f1dbbebc837480af692e7e9ee6b9 -Ctrl.hexinfo = hexinfo:825fadce46964236a486732c5dad -Output = 192370a85ff78e3c0245129d9b398558 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:da69f1dbbebc837480af692e7e9ee6b9 -Ctrl.hexinfo = hexinfo:5c0b5eb3ac9f342347d73d7a521723aa -Output = c7b7634fd809383e87c4b1b3e728be56 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:8d7a4e7d5cf34b3f74873b862aeb33b7 -Output = 6a5594f402f74f69 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:9b208e7ee1e641fac1dff48fc1beb2d2 -Output = 556ed67e24ac0c7c46cc432da8bdb23c - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:4d2572539fed433211da28c8a0eebac3 -Output = 5a4054c59c5b92814025578f43c1b79fe84968fc284e240b - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:4e1e70c9886819a31bc29a537911add9 -Output = ddbfc440449aab4131c6d8aec08ce1496f2702241d0e27cc155c5c7c3cda75b5 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:68f144c952528e540c686dc353b766f2 -Output = 59ed66bb6f54a9688a0b891d0b2ea6743621d9e1b5cc098cf3a55e6f864f9af8a95e4d945d2f987f - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:b66c9d507c9f837fbe60b6675fdbf38b -Output = c282787ddf421a72fc88811be81b08d0d6ab66c92d1011974aa58335a6bbbd62e9e982bfae5929865ea1d517247089d2 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:34e730b49e46c7ed2fb25975a4cccd2d -Output = 39e76e6571cb00740260b9070accbdcc4a492c295cbef33d9e37dac21e5e9d07e0f12dc7063d2172641475d4e08b8e3712fb26a10c8376b8 - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:e340d87e2d7adbc1b95ec2dbdc3b82be -Output = a660c0037a53f76f1e7667043f5869348ad07ac0e272e615ce31f16d4ab90d4b35fe5c370c0010ce79aff45682c6fb8b97f9a05b7d40b5af3c62999a10df9c6d - -KDF = SSKDF -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:afc4e154498d4770aa8365f6903dc83b -Ctrl.hexinfo = hexinfo:662af20379b29d5ef813e655 -Output = f0b80d6ae4c1e19e2105a37024e35dc6 - - -KDF = SSKDF -Ctrl.digest = digest:SHA512 -Ctrl.hexsecret = hexsecret:108cf63318555c787fa578731dd4f037 -Ctrl.hexinfo = hexinfo:53191b1dd3f94d83084d61d6 -Output = 0ad475c1826da3007637970c8b92b993 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:6ee6c00d70a6cd14bd5a4e8fcfec8386 -Ctrl.hexsalt = hexsalt:532f5131e0a2fecc722f87e5aa2062cb -Ctrl.hexinfo = hexinfo:861aa2886798231259bd0314 -Output = 13479e9a91dd20fdd757d68ffe8869fb - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:cb09b565de1ac27a50289b3704b93afd -Ctrl.hexsalt = hexsalt:d504c1c41a499481ce88695d18ae2e8f -Ctrl.hexinfo = hexinfo:5ed3768c2c7835943a789324 -Output = f081c0255b0cae16edc6ce1d6c9d12bc - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:98f50345fd970639a1b7935f501e1d7c -Ctrl.hexsalt = hexsalt:3691939461247e9f74382ae4ef629b17 -Ctrl.hexinfo = hexinfo:6ddbdb1314663152c3ccc192 -Output = 56f42183ed3e287298dbbecf143f51ac - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:a72b0076221727eca4d3ef8f4d88ac96 -Ctrl.hexsalt = hexsalt:397dc6807de2c1d5ba52e03c4e6c7a19 -Ctrl.hexinfo = hexinfo:12379bd7873a7dbabe894ac8 -Output = 26c0f937e8ca337a859b6c092fe22b9a - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:0b09bf8ebe1e85a049174c521e35be64 -Ctrl.hexsalt = hexsalt:313d29bbeaa5ac9e52278f7619d29d93 -Ctrl.hexinfo = hexinfo:e2ac98de1486959bfc6363c0 -Output = 4bfdf78782a45e2a5858edb851c5783c - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:e907ad4fe811ee047af77e0c4418226a -Ctrl.hexsalt = hexsalt:5000ef57104ca2e86a5fec5883ea4ea8 -Ctrl.hexinfo = hexinfo:c4ee443920f2b7542eee2a24 -Output = 06bfbd9571462c920a5a1b589c765383 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:608dae15fe8b906d2dc649815bdee148 -Ctrl.hexsalt = hexsalt:742cc5a02a24d09c66fd9da0d0c571f6 -Ctrl.hexinfo = hexinfo:ba60ff781e2756cba07f6524 -Output = 7f7f9e5d8f89a8edd10289f1d690f629 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:eb39e8dc7c40b906216108e2592bb6cd -Ctrl.hexsalt = hexsalt:af9f612da575c1afc8c4afff4ced34e1 -Ctrl.hexinfo = hexinfo:84b7f0628df0cb22baaa279a -Output = 5202576c69c6276daedf4916de250d19 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:4bac0c1a963b8cf6933beb2ad191a31e -Ctrl.hexsalt = hexsalt:debd24d71a1a7ae77f7e3aa24d939635 -Ctrl.hexinfo = hexinfo:9e51c8593cec92c89e82439a -Output = ecb9889f9004f80716b56c44910f160c - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:8aa41e3c8076ea01ca6789dd18709a68 -Ctrl.hexsalt = hexsalt:7c9dacc409cde7b05efdae07bd9973db -Ctrl.hexinfo = hexinfo:52651f0f2e858bbfbacb2533 -Output = b8683c9a982e0826d659a1ab77a603d7 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 -Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c -Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 -Output = be32 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 -Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c -Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 -Output = be32e7d3 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 -Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c -Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 -Output = be32e7d306d8 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 -Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c -Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 -Output = be32e7d306d89102 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 -Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c -Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 -Output = be32e7d306d891028be0 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 -Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c -Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 -Output = be32e7d306d891028be088f2 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 -Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c -Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 -Output = be32e7d306d891028be088f213f9 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 -Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c -Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 -Output = be32e7d306d891028be088f213f9f947 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 -Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c -Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 -Output = be32e7d306d891028be088f213f9f947c504 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 -Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c -Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 -Output = be32e7d306d891028be088f213f9f947c50420d9 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 -Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c -Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 -Output = be32e7d306d891028be088f213f9f947c50420d9b5a1 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 -Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c -Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 -Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca6 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 -Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c -Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 -Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 -Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c -Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 -Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd99 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 -Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c -Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 -Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995de - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 -Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c -Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 -Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995dedd8e - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 -Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c -Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 -Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995dedd8e6137 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 -Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c -Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 -Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995dedd8e6137c710 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 -Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c -Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 -Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995dedd8e6137c7104d67 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 -Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c -Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 -Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995dedd8e6137c7104d67f2ca - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 -Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c -Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 -Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995dedd8e6137c7104d67f2ca9091 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 -Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c -Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 -Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995dedd8e6137c7104d67f2ca90915dda - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 -Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c -Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 -Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995dedd8e6137c7104d67f2ca90915dda0ab6 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 -Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c -Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 -Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995dedd8e6137c7104d67f2ca90915dda0ab68af2 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 -Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c -Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 -Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995dedd8e6137c7104d67f2ca90915dda0ab68af2f355 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 -Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c -Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 -Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995dedd8e6137c7104d67f2ca90915dda0ab68af2f355b904 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 -Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c -Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 -Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995dedd8e6137c7104d67f2ca90915dda0ab68af2f355b904f9eb - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 -Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c -Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 -Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995dedd8e6137c7104d67f2ca90915dda0ab68af2f355b904f9eb0388 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 -Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c -Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 -Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995dedd8e6137c7104d67f2ca90915dda0ab68af2f355b904f9eb0388b5b7 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 -Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c -Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 -Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995dedd8e6137c7104d67f2ca90915dda0ab68af2f355b904f9eb0388b5b7fe19 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 -Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c -Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 -Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995dedd8e6137c7104d67f2ca90915dda0ab68af2f355b904f9eb0388b5b7fe193c95 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 -Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c -Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 -Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995dedd8e6137c7104d67f2ca90915dda0ab68af2f355b904f9eb0388b5b7fe193c9546d4 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 -Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c -Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 -Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995dedd8e6137c7104d67f2ca90915dda0ab68af2f355b904f9eb0388b5b7fe193c9546d45849 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:02b40d33e3f685aeae677ac344eeaf77 -Ctrl.hexsalt = hexsalt:0ad52c9357c85e4781296a36ca72039c -Ctrl.hexinfo = hexinfo:c67c389580128f18f6cf8592 -Output = be32e7d306d891028be088f213f9f947c50420d9b5a12ca69818dd9995dedd8e6137c7104d67f2ca90915dda0ab68af2f355b904f9eb0388b5b7fe193c9546d45849133d - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:f4e1 -Ctrl.hexsalt = hexsalt:3638271ccd68a25dc24ecddd39ef3f89 -Ctrl.hexinfo = hexinfo:348a37a27ef1282f5f020dcc -Output = 3f661ec46fcc1e110b88f33ee7dbc308 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:253554e5 -Ctrl.hexsalt = hexsalt:3638271ccd68a25dc24ecddd39ef3f89 -Ctrl.hexinfo = hexinfo:348a37a27ef1282f5f020dcc -Output = 73ccb357554ca44967d507518262e38d - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:e10d0e0bc95b -Ctrl.hexsalt = hexsalt:3638271ccd68a25dc24ecddd39ef3f89 -Ctrl.hexinfo = hexinfo:348a37a27ef1282f5f020dcc -Output = c4f1cf190980b6777bb35107654b25f9 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:451f7f2c23c51326 -Ctrl.hexsalt = hexsalt:3638271ccd68a25dc24ecddd39ef3f89 -Ctrl.hexinfo = hexinfo:348a37a27ef1282f5f020dcc -Output = ddb2d7475d00cc65bff6904b4f0b54ba - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:0f27277ee800d6cc5425 -Ctrl.hexsalt = hexsalt:3638271ccd68a25dc24ecddd39ef3f89 -Ctrl.hexinfo = hexinfo:348a37a27ef1282f5f020dcc -Output = 1100a6049ae9d8be01ab3829754cecc2 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:20438ff1f26390dbc3a1a6d0 -Ctrl.hexsalt = hexsalt:3638271ccd68a25dc24ecddd39ef3f89 -Ctrl.hexinfo = hexinfo:348a37a27ef1282f5f020dcc -Output = 5180382f740444ada597197f98e73e1e - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:b74a149a161546f8c20b06ac4ed4 -Ctrl.hexsalt = hexsalt:3638271ccd68a25dc24ecddd39ef3f89 -Ctrl.hexinfo = hexinfo:348a37a27ef1282f5f020dcc -Output = 44f676e85c1b1a8bbc3d319218631ca3 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:8aa7df46b8cb3fe47228494f4e116b2c -Ctrl.hexsalt = hexsalt:3638271ccd68a25dc24ecddd39ef3f89 -Ctrl.hexinfo = hexinfo:348a37a27ef1282f5f020dcc -Output = ebb24413855a0a3249960d0de0f4750d - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:a678236b6ac82077b23f73a510c1d0e2 -Ctrl.hexsalt = hexsalt:46ee4f36a4167a09cde5a33b130c6e1c -Ctrl.hexinfo = hexinfo:d851 -Output = 5dbe10ead8f81a81a29072eca4501658 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:a678236b6ac82077b23f73a510c1d0e2 -Ctrl.hexsalt = hexsalt:46ee4f36a4167a09cde5a33b130c6e1c -Ctrl.hexinfo = hexinfo:b04da03c -Output = 0a08d7616dcbec25a36f1936b82992ca - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:a678236b6ac82077b23f73a510c1d0e2 -Ctrl.hexsalt = hexsalt:46ee4f36a4167a09cde5a33b130c6e1c -Ctrl.hexinfo = hexinfo:f9e8b47eade3 -Output = 84a29697445179b662d85dbc59bf8042 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:a678236b6ac82077b23f73a510c1d0e2 -Ctrl.hexsalt = hexsalt:46ee4f36a4167a09cde5a33b130c6e1c -Ctrl.hexinfo = hexinfo:5b141bfa54fcf824 -Output = be7660c840644cec84d67d95ba7ebf2d - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:a678236b6ac82077b23f73a510c1d0e2 -Ctrl.hexsalt = hexsalt:46ee4f36a4167a09cde5a33b130c6e1c -Ctrl.hexinfo = hexinfo:736e7ddb856f0ba14744 -Output = e3010b1fbcb02fd8baa8449ac71d0c62 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:a678236b6ac82077b23f73a510c1d0e2 -Ctrl.hexsalt = hexsalt:46ee4f36a4167a09cde5a33b130c6e1c -Ctrl.hexinfo = hexinfo:c54320ff6e7d1a3b0b3aea00 -Output = df0ac84982999cda676e4cbf707c42f0 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:a678236b6ac82077b23f73a510c1d0e2 -Ctrl.hexsalt = hexsalt:46ee4f36a4167a09cde5a33b130c6e1c -Ctrl.hexinfo = hexinfo:37ab143e1b4ab61d0294ea8afbc7 -Output = 93eec7f4dda18b7e710dbbd7570ebd13 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:a678236b6ac82077b23f73a510c1d0e2 -Ctrl.hexsalt = hexsalt:46ee4f36a4167a09cde5a33b130c6e1c -Ctrl.hexinfo = hexinfo:c3146575d2c60981511e700902fc2ac1 -Output = e9125f77d699faa53d5bc48f3fc2f7d0 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:0031558fddb96e3db2e0496026302055 -Ctrl.hexsalt = hexsalt:1ae1 -Ctrl.hexinfo = hexinfo:97ed3540c7466ab27395fe79 -Output = ddf7eedcd997eca3943d4519aaf414f4 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:0031558fddb96e3db2e0496026302055 -Ctrl.hexsalt = hexsalt:3bda13b6 -Ctrl.hexinfo = hexinfo:97ed3540c7466ab27395fe79 -Output = ec783ca20501df3cacac5ab4adbc6427 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:0031558fddb96e3db2e0496026302055 -Ctrl.hexsalt = hexsalt:c792f52e5876 -Ctrl.hexinfo = hexinfo:97ed3540c7466ab27395fe79 -Output = 9303a2562e6f8c418e3fcc081b94bdcf - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:0031558fddb96e3db2e0496026302055 -Ctrl.hexsalt = hexsalt:a9b7a64840d52633 -Ctrl.hexinfo = hexinfo:97ed3540c7466ab27395fe79 -Output = aab6b0dc19bae0dd7fa02391ac3d6ef1 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:0031558fddb96e3db2e0496026302055 -Ctrl.hexsalt = hexsalt:8f62a3ec15cdf9b3522f -Ctrl.hexinfo = hexinfo:97ed3540c7466ab27395fe79 -Output = 1516d5ed7f46474d250408b0864647cf - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:0031558fddb96e3db2e0496026302055 -Ctrl.hexsalt = hexsalt:55ed67cbdc98ed8e45214704 -Ctrl.hexinfo = hexinfo:97ed3540c7466ab27395fe79 -Output = 38bf96a3d737a84dc10a835d340b6866 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:0031558fddb96e3db2e0496026302055 -Ctrl.hexsalt = hexsalt:e4946aff3b2ab891b311234c77bc -Ctrl.hexinfo = hexinfo:97ed3540c7466ab27395fe79 -Output = 3ddd870471ff028a63c5f1bacc7e5b5c - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:0031558fddb96e3db2e0496026302055 -Ctrl.hexsalt = hexsalt:91e8378de5348cea41f84c41e8546e34 -Ctrl.hexinfo = hexinfo:97ed3540c7466ab27395fe79 -Output = bf1eb0eab488b2393ad6a1c2eb804381 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:4ce16564db9615f75d46c6a9837af7ca -Ctrl.hexsalt = hexsalt:6199187690823def2037e0632577c6b1 -Output = 0a102289b16cbf4b - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:2578fe1116e27e3a5e8e935e892e12eb -Ctrl.hexsalt = hexsalt:6199187690823def2037e0632577c6b1 -Output = dd5773998893ad5a93f9819c8e798aab - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:e9dd8bd75f29661e61703346bbf2df47 -Ctrl.hexsalt = hexsalt:6199187690823def2037e0632577c6b1 -Output = 32136643daa64aaac0e2886364f157ba923d7b36ada761eb - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:e4640d3752cf48186a8ad2d7d4a81210 -Ctrl.hexsalt = hexsalt:6199187690823def2037e0632577c6b1 -Output = 6379d59efbe02576663af5efaccb9d063f596a22c8e1fed12cde7cdd7f327e88 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:3bd9a074a219d62273c3f639659a3ecd -Ctrl.hexsalt = hexsalt:6199187690823def2037e0632577c6b1 -Output = cc45eb2ab80272c1e082b4f167ee4e086f12af3fbd0c812dda5568fea702928999cde3899cffc8a8 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:2147c0fb1c7587b22fa44ce3bf3d8f5b -Ctrl.hexsalt = hexsalt:6199187690823def2037e0632577c6b1 -Output = 4e3a8827fcdb214686b35bfcc497ca69dccb78d3464aa4af0704ec0fba03c7bb10b9a4e31e27b1b2379a32e46935309c - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:2c2438b6321fed7a9eac200b91b3ac30 -Ctrl.hexsalt = hexsalt:6199187690823def2037e0632577c6b1 -Output = b402fda16e1c2719263be82158972c9080a7bafcbe0a3a6ede3504a3d5c8c0c0e00fe7e5f6bb3afdfa4d661b8fbe4bd7b950cfe0b2443bbd - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:0ffa4c40a822f6e3d86053aefe738eac -Ctrl.hexsalt = hexsalt:6199187690823def2037e0632577c6b1 -Output = 0486d589aa71a603c09120fb76eeab3293eee2dc36a91b23eb954d6703ade8a7b660d920c5a6f7bf3898d0e81fbad3a680b74b33680e0cc6a16aa616d078b256 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:a801d997ed539ae9aa05d17871eb7fab -Ctrl.hexinfo = hexinfo:03697296e42a6fdbdb24b3ec -Output = 1a5efa3aca87c1f4 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:e9624e112f9e90e7bf8a749cf37d920c -Ctrl.hexinfo = hexinfo:03697296e42a6fdbdb24b3ec -Output = ee93ca3986cc43516ae4e29fd7a90ef1 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:a92acdee54a84a4564d4782d47801ec0 -Ctrl.hexinfo = hexinfo:03697296e42a6fdbdb24b3ec -Output = 3116b87eaffaa0cc48a72e6c1574df335d706f7c860b44e9 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:e60d902e63b1a2bf5dab733cadb47b10 -Ctrl.hexinfo = hexinfo:03697296e42a6fdbdb24b3ec -Output = 3fde6c078dd6dc65aacf62beafa39398d2b3d7cfb4b0ee4807bfc98a15330eef - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:d3b747a1d1584a0fc5aefcd4dd8ef9c3 -Ctrl.hexinfo = hexinfo:03697296e42a6fdbdb24b3ec -Output = 2c4363597d42f9f8736e8050b4a6dd033d7ddac6f7211c4810ef74aff01f101d885767d7ae6f1d7f - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:119559a2c0a8888e9c95b9989a460d97 -Ctrl.hexinfo = hexinfo:03697296e42a6fdbdb24b3ec -Output = 97922585f69adf484930cf22b8378c797694438502fa47e2f19f0fee97ca11451f3bc81a20c1d74964c63ab2d5df1985 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:807f375266988df5d0ae878efac424fa -Ctrl.hexinfo = hexinfo:03697296e42a6fdbdb24b3ec -Output = ba78ef8ab720fc583bb64581917634fca230876cc344e46b44fe61f3bdab556ee753743b78db4b16c0fcd8f987aebad15d0b7b13a10f6819 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:f7906f870b256753b5bc3ef408e47e9b -Ctrl.hexinfo = hexinfo:03697296e42a6fdbdb24b3ec -Output = 96bee2ae234f98c285aa970bd54c2e2891febf734bad58a91dc7a97490b6b05fe539f2156ae3acd2e661eced0d59084fda340cd1ba3daa7ca2a550d7b1c19462 - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA512 -Ctrl.hexsecret = hexsecret:73b6e2ede34aae5680e2289e611ffc3a -Ctrl.hexsalt = hexsalt:28df8439747d5a9b502e0838ca6999b2 -Ctrl.hexinfo = hexinfo:232941631fc04dd82f727a51 -Output = b0d36cd7d6b23b48ca6f89901bb784ec - -KDF = SSKDF -Ctrl.mac = mac:HMAC -Ctrl.digest = digest:SHA512 -Ctrl.hexsecret = hexsecret:abb7d7554c0de41cada5826a1f79d76f -Ctrl.hexinfo = hexinfo:a80b9061879365b1669c87a8 -Output = 71e29fff69198eca92f5180bcb281fbdaf409ec7c99ca704b1f56e782d3c4db10cb4158e6634d793a46c13bffb6bdb71a01101936ea9b20f7dbe302558b1356c - -Title = SSKDF Test vectors from RFC 8636 Section 8 (With precoumputed ASN.1 info) - -KDF = SSKDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 -Ctrl.hexinfo = hexinfo:307e300a06082b06010502030601a01f041d301ba0071b0553552e5345a110300ea003020101a10730051b036c6861a12904273025a0071b0553552e5345a11a3018a003020101a111300f1b066b72627467741b0553552e5345a22404223020a003020112a10c040aaaaaaaaaaaaaaaaaaaaaa20b0409bbbbbbbbbbbbbbbbbb -Output = e6ab38c9413e035bb079201ed0b6b73d8d49a814a737c04ee6649614206f73ad - -KDF = SSKDF -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 -Ctrl.hexinfo = hexinfo:307e300a06082b06010502030602a01f041d301ba0071b0553552e5345a110300ea003020101a10730051b036c6861a12904273025a0071b0553552e5345a11a3018a003020101a111300f1b066b72627467741b0553552e5345a22404223020a003020112a10c040aaaaaaaaaaaaaaaaaaaaaa20b0409bbbbbbbbbbbbbbbbbb -Output = 77ef4e48c420ae3fec75109d7981697eed5d295c90c62564f7bfd101fa9bc1d5 - -KDF = SSKDF -Ctrl.digest = digest:SHA512 -Ctrl.hexsecret = hexsecret:00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 -Ctrl.hexinfo = hexinfo:307e300a06082b06010502030603a01f041d301ba0071b0553552e5345a110300ea003020101a10730051b036c6861a12904273025a0071b0553552e5345a11a3018a003020101a111300f1b066b72627467741b0553552e5345a22404223020a003020110a10c040aaaaaaaaaaaaaaaaaaaaaa20b0409bbbbbbbbbbbbbbbbbb -Output = d3c78b78d75313e9a926f75dfb012363fa17fa01db - -# Test vectors extracted from -# https://csrc.nist.gov/CSRC/media/Projects/Cryptographic-Algorithm-Validation-Program/documents/components/800-135testvectors/ansx963_2001.zip -Title = X963 KDF tests (from NIST test vectors) - -KDF = X963KDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:fd17198b89ab39c4ab5d7cca363b82f9fd7e23c3984dc8a2 -Ctrl.hexinfo = hexinfo:856a53f3e36a26bbc5792879f307cce2 -Output = 6e5fad865cb4a51c95209b16df0cc490bc2c9064405c5bccd4ee4832a531fbe7f10cb79e2eab6ab1149fbd5a23cfdabc41242269c9df22f628c4424333855b64e95e2d4fb8469c669f17176c07d103376b10b384ec5763d8b8c610409f19aca8eb31f9d85cc61a8d6d4a03d03e5a506b78d6847e93d295ee548c65afedd2efec - -KDF = X963KDF -Ctrl.digest = digest:SHA224 -Ctrl.hexsecret = hexsecret:da67a73072d521a8272c69023573012ddf9b46bff65b3900 -Ctrl.hexinfo = hexinfo:727997aed53e78f74b1d66743a4ea4d2 -Output = dfc3126c5eebf9a58d89730e8d8ff7cc772592f28c10b349b437d9d068698a22e532eae975dfaf9c5c6a9f2935eafb05353013c253444e61f07bc9ddd15948e614bdc7e445ba3b1893f42f87f18fb352d49956009a642c362d45410b43a9ab376e9261210739174759511d1f9e52f6ec73dfed446dbafaf7fd1a57113abc2e8d - -KDF = X963KDF -Ctrl.digest = digest:SHA256 -Ctrl.hexsecret = hexsecret:22518b10e70f2a3f243810ae3254139efbee04aa57c7af7d -Ctrl.hexinfo = hexinfo:75eef81aa3041e33b80971203d2c0c52 -Output = c498af77161cc59f2962b9a713e2b215152d139766ce34a776df11866a69bf2e52a13d9c7c6fc878c50c5ea0bc7b00e0da2447cfd874f6cf92f30d0097111485500c90c3af8b487872d04685d14c8d1dc8d7fa08beb0ce0ababc11f0bd496269142d43525a78e5bc79a17f59676a5706dc54d54d4d1f0bd7e386128ec26afc21 - -KDF = X963KDF -Ctrl.digest = digest:SHA384 -Ctrl.hexsecret = hexsecret:d8554db1b392cd55c3fe957bed76af09c13ac2a9392f88f6 -Output = 671a46aada145162f8ddf1ca586a1cda - -KDF = X963KDF -Ctrl.digest = digest:SHA384 -Ctrl.hexsecret = hexsecret:c051fd22539c9de791d6c43a854b8f80a6bf70190050854a -Ctrl.hexinfo = hexinfo:1317504aa34759bb4c931e3b78201945 -Output = cf6a84434734ac6949e1d7976743277be789906908ad3ca3a8923da7f476abbeb574306d7243031a85566914bfd247d2519c479953d9d55b6b831e56260806c39af21b74e3ecf470e3bd8332791c8a23c13352514fdef00c2d1a408ba31b2d3f9fdcb373895484649a645d1845eec91b5bfdc5ad28c7824984482002dd4a8677 - -KDF = X963KDF -Ctrl.digest = digest:SHA512 -Ctrl.hexsecret = hexsecret:87fc0d8c4477485bb574f5fcea264b30885dc8d90ad82782 -Output = 947665fbb9152153ef460238506a0245 - -KDF = X963KDF -Ctrl.digest = digest:SHA512 -Ctrl.hexsecret = hexsecret:00aa5bb79b33e389fa58ceadc047197f14e73712f452caa9fc4c9adb369348b81507392f1a86ddfdb7c4ff8231c4bd0f44e44a1b55b1404747a9e2e753f55ef05a2d -Ctrl.hexinfo = hexinfo:e3b5b4c1b0d5cf1d2b3a2f9937895d31 -Output = 4463f869f3cc18769b52264b0112b5858f7ad32a5a2d96d8cffabf7fa733633d6e4dd2a599acceb3ea54a6217ce0b50eef4f6b40a5c30250a5a8eeee208002267089dbf351f3f5022aa9638bf1ee419dea9c4ff745a25ac27bda33ca08bd56dd1a59b4106cf2dbbc0ab2aa8e2efa7b17902d34276951ceccab87f9661c3e8816 - -KDF = X963KDF -Ctrl.digest = digest:SHA512 -Ctrl.hexsecret = hexsecret:009dcd6ba5c8c803ca21f9996ca5dd86047d4ddc150fddace1b1ebe996c2007e3ee907c8ff03b9ef766e8ceb4dedf7489e5162e2278c0185e4be381bec17dd992cf8 -Ctrl.hexinfo = hexinfo:1e60e51c11a538b0ea8990d69a4c6358 -Output = 4e55036a32f32fc965046fdfbf686c108e43a69f8fc1a64ff1bd77763f2eedc8bf277d78b4ce31243e1adbe2c2d5dd59b47503b5b90b54f9d7a9a5aea49c7f0283cb64c3849a1d157000fd41ef6c1d1a5b62734e7c9a20dcfb57f2da974933f57ee619d72898d0e93d9a4254aaddf73941d6269298b4d49c0ac64a33802fe8f2 - -KDF = X963KDF -Ctrl.digest = digest:SHA512 -Ctrl.hexsecret = hexsecret:01bbc44314f24db4d67a2a7fb5ca3f7a5022790f5875895d448050eda5611a2f39de48e394c5a3df26208eb01f804d0a1d68eece6b6fa96d6db895e133e129094f78 -Ctrl.hexinfo = hexinfo:433e3ee77d00e4a9634efd677e2ff21b -Output = f1255002293d5fbcf35ad0e532ae872171d11014616a2c52d7e5cb861b0251b9e505a77161c777bafc052b6525a6ecf34590605de72f13a1aff0a61a8a4a3364ebbe2f99224c13e043e497af8a26de749cd257e475b2f0e60e3b594901320a692a4af422f9636e4814b33f67d181a086265013b0d4efd9e1a94ea8a576afde66 - -KDF = X963KDF -Ctrl.digest = digest:SHA512 -Ctrl.hexsecret = hexsecret:01a33032a2bf6f8e9d6972dd339536c9e248ae9881844ff1bd04af48085be4ca1834f2a94ce1019dd9620d1e3a68203a5b291f40b5f8e3238a2a036312b89061cc60 -Ctrl.hexinfo = hexinfo:d3297ad6b9757d1f5a9d5b0e72176d74 -Output = 63565d1d3443620fba4218c97887ff40d6d68bf56b429c22018be5d91c318187ebe8a9399c5cc6c4a849288ab784d4340714ae3fdb426c4a83db9ce2ba8aea80d448e50ad543749b47bcaae519f7f00badd8d48296e81069104dcd293c605b08159ef2ef14c7833739d0414274136ae4db05ba4fa31b29c59de46d9be539525f - -KDF = X963KDF -Ctrl.digest = digest:SHA512 -Ctrl.hexsecret = hexsecret:004b20a501776ea54cbdabffec2a664b7a93f8d67b17405a82bd9cbf3685a4659beb2deff1b6ecaa7ab187b6d4fd407f10db6992c65308410deb133be31a0de0c1c9 -Ctrl.hexinfo = hexinfo:fd5462cb37aa298e95f8e34bb49d85ca -Output = cafcbc117317661bf15277c2881e05e345c1720b0c1c4040c33fe4a3ecf8032802642d29828a077ca91b6fac216b7a06517740c7d633c279dd2115eb7a34fd337376247219f53da32df57070f47c2e0816710080d6492e1c3e8cac818c3cfca2a3ce5cf1515f066b1815d2d2f69fa3111a9e81570963b90a536da0376c12265b - -KDF = X963KDF -Ctrl.digest = digest:SHA512 -Ctrl.hexsecret = hexsecret:01fb44335b437771777f14d44e5b634c18c7f570b935228fd3073e3cbde299dfb9f4d64ad720d30e875e8c6bbe181027459c9d3f92a276a38e22faf25f208576a63f -Ctrl.hexinfo = hexinfo:2359d18657243d61963ceca3fa93587d -Output = 1544e54cd293e533959bdd893337f01ef0c7685a4d8d403d438b0223a7e18330c312a0f16bd819f4359fdd74ae85cc603d35e3d9cba896177452c8dee5214066fca420c3ab522a245af215beb7de52ebb0bdd15d0596b8b763cf7e25610a53efa726b899a1d9727b25ec673ee91ff2111f03cf761a7880d69625e784becfd4e0 - -KDF = X963KDF -Ctrl.digest = digest:SHA512 -Ctrl.hexsecret = hexsecret:0109afa3904193690d3f2c49e42d08c8c5cd2ea907a0d699c876e418e303b485374c8d6cf5a32af1491b3ea8a3503692b4a0fd78f9b4082e2a6e72345db4532d749f -Ctrl.hexinfo = hexinfo:7c19631d3cd65915fa4789cf7b1c0979 -Output = fb60175568a66ef4202e110396663085fe2a9d6d2071e55d03c30ea499fee850c99c4e42a7227cca2eaf4d75e37dde205ae07260e84aeee6ef0819d98bd00d0ff5ba55994e7bf2a578baf2ee9aa862d94bf431fa14429010ebc30d7e602de726cdffacaeabc8541237fbc0c975abbf203c018c688ee354d07978654b90de9569 - -KDF = X963KDF -Ctrl.digest = digest:SHA512 -Ctrl.hexsecret = hexsecret:00632e165775f3c5b6e81d4042f809e904b8167687747638874b39ffce1993f46e8fc44e2a1c3df59563003bad3e25c85b61819e9addc0fdbe173dd4115c38f62ef6 -Ctrl.hexinfo = hexinfo:2bf0f18b7f21c4ec9c20b84c75f66b7c -Output = c324fed01b75c37fc96703031403d5cc6857dc7ffa48192d9a10d5c69dd6274ecd0eb9a278f9e6b616c27bbf2e3e016635b311940390c52c61a4f4b3383ca6046961dbd2455ff6a982e8269864edd3cc1b1053da7daf9699c61b05f1acca7b79e68db655fd526fdc392bd36dcaf1c5b2fafb8975e318070d4bb948829ac41bb6 - -KDF = X963KDF -Ctrl.digest = digest:SHA512 -Ctrl.hexsecret = hexsecret:0096172bf47d06d544ae98471490cf9e52ee59ea7a2208b33b26c52d4952bb8f41b2211d3f9ff32e77ca8cc906ba8d246ff266ddf1df8f53824ccb15b8fb39724703 -Ctrl.hexinfo = hexinfo:cf3a74ba86af42f1ae85477ead645583 -Output = 995d1ab8557dfeafcb347f8182583fa0ac5e6cb3912393592590989f38a0214f6cf7d6fbe23917b0966c6a870876de2a2c13a45fa7aa1715be137ed332e1ffc204ce4dcce33ece6dec7f3da61fa049780040e44142cc8a1e5121cf56b386f65b7c261a192f05e5fefae4221a602bc51c41ef175dc45fb7eab8642421b4f7e3e7 - -KDF = X963KDF -Ctrl.digest = digest:SHA512 -Ctrl.hexsecret = hexsecret:0037cd001a0ad87f35ddf58ab355d6144ba2ed0749a7435dab548ba0bfbe723c047e2396b4eef99653412a92c8db74bb5c03063f2eb0525ae87356750ae3676faa86 -Ctrl.hexinfo = hexinfo:eb17da8851c41c7ac6710b1c49f324f8 -Output = 829a28b81f9e95b5f306604067499c07d5944ca034ed130d513951f7143e4e162bad8adb2833e53b8235c293cd2a809659ac7f7e392cba6a543660e5d95070c0c9e6a9cdc38123e22da61bb4cbb6ad6d1a58a069e934fc231bd9fe39a24afcbf322ccea385f0418f3b01c1edd6e7124593a1cefe3e48fcd95daaf72cfd973c59 - -Title = X9.42 KDF tests (from RFC2631 test vectors) - -KDF = X942KDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:000102030405060708090a0b0c0d0e0f10111213 -Ctrl.cekalg = cekalg:id-smime-alg-CMS3DESwrap -Output = a09661392376f7044d9052a397883246b67f5f1ef63eb5fb - -Title = X9.42 KDF tests (RFC3565 2.3.2 Examples) - -KDF = X942KDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:000102030405060708090a0b0c0d0e0f10111213 -Ctrl.cekalg = cekalg:id-aes128-wrap -Output = d6d6b094c1027a7de6e3117294a35364 - -KDF = X942KDF -Ctrl.digest = digest:SHA1 -Ctrl.hexsecret = hexsecret:000102030405060708090a0b0c0d0e0f10111213 -Ctrl.cekalg = cekalg:id-aes256-wrap -Ctrl.hexukm = hexukm:0123456789abcdeffedcba98765432010123456789abcdeffedcba98765432010123456789abcdeffedcba98765432010123456789abcdeffedcba9876543201 -Output = 8890585C4E281A5C1167CAA530BED59B3230D893CBA8F922BD1B56A0 - -Title = KRB5KDF tests (from RFC 3961 test vectors and krb5 sources) - -#RFC3961 -KDF = KRB5KDF -Ctrl.cipher = cipher:DES-EDE3-CBC -Ctrl.hexkey = hexkey:dce06b1f64c857a11c3db57c51899b2cc1791008ce973b92 -Ctrl.hexconstant = hexconstant:0000000155 -Output = 925179d04591a79b5d3192c4a7e9c289b049c71f6ee604cd - -KDF = KRB5KDF -Ctrl.cipher = cipher:DES-EDE3-CBC -Ctrl.hexkey = hexkey:5e13d31c70ef765746578531cb51c15bf11ca82c97cee9f2 -Ctrl.hexconstant = hexconstant:00000001aa -Output = 9e58e5a146d9942a101c469845d67a20e3c4259ed913f207 - -KDF = KRB5KDF -Ctrl.cipher = cipher:DES-EDE3-CBC -Ctrl.hexkey = hexkey:98e6fd8a04a4b6859b75a176540b9752bad3ecd610a252bc -Ctrl.hexconstant = hexconstant:0000000155 -Output = 13fef80d763e94ec6d13fd2ca1d085070249dad39808eabf - -KDF = KRB5KDF -Ctrl.cipher = cipher:DES-EDE3-CBC -Ctrl.hexkey = hexkey:622aec25a2fe2cad7094680b7c64940280084c1a7cec92b5 -Ctrl.hexconstant = hexconstant:00000001aa -Output = f8dfbf04b097e6d9dc0702686bcb3489d91fd9a4516b703e - -KDF = KRB5KDF -Ctrl.cipher = cipher:DES-EDE3-CBC -Ctrl.hexkey = hexkey:d3f8298ccb166438dcb9b93ee5a7629286a491f838f802fb -Ctrl.hexconstant = hexconstant:6b65726265726f73 -Output = 2370da575d2a3da864cebfdc5204d56df779a7df43d9da43 - -KDF = KRB5KDF -Ctrl.cipher = cipher:DES-EDE3-CBC -Ctrl.hexkey = hexkey:c1081649ada74362e6a1459d01dfd30d67c2234c940704da -Ctrl.hexconstant = hexconstant:0000000155 -Output = 348057ec98fdc48016161c2a4c7a943e92ae492c989175f7 - -KDF = KRB5KDF -Ctrl.cipher = cipher:DES-EDE3-CBC -Ctrl.hexkey = hexkey:5d154af238f46713155719d55e2f1f790dd661f279a7917c -Ctrl.hexconstant = hexconstant:00000001aa -Output = a8808ac267dada3dcbe9a7c84626fbc761c294b01315e5c1 - -KDF = KRB5KDF -Ctrl.cipher = cipher:DES-EDE3-CBC -Ctrl.hexkey = hexkey:798562e049852f57dc8c343ba17f2ca1d97394efc8adc443 -Ctrl.hexconstant = hexconstant:0000000155 -Output = c813f88a3be3b334f75425ce9175fbe3c8493b89c8703b49 - -KDF = KRB5KDF -Ctrl.cipher = cipher:DES-EDE3-CBC -Ctrl.hexkey = hexkey:26dce334b545292f2feab9a8701a89a4b99eb9942cecd016 -Ctrl.hexconstant = hexconstant:00000001aa -Output = f48ffd6e83f83e7354e694fd252cf83bfe58f7d5ba37ec5d - -#Krb5 sources -KDF = KRB5KDF -Ctrl.cipher = cipher:DES-EDE3-CBC -Ctrl.hexkey = hexkey:850BB51358548CD05E86768C313E3BFEF7511937DCF72C3E -Ctrl.hexconstant = hexconstant:0000000299 -Output = F78C496D16E6C2DAE0E0B6C24057A84C0426AEEF26FD6DCE - -KDF = KRB5KDF -Ctrl.cipher = cipher:DES-EDE3-CBC -Ctrl.hexkey = hexkey:850BB51358548CD05E86768C313E3BFEF7511937DCF72C3E -Ctrl.hexconstant = hexconstant:00000002AA -Output = 5B5723D0B634CB684C3EBA5264E9A70D52E683231AD3C4CE - -KDF = KRB5KDF -Ctrl.cipher = cipher:DES-EDE3-CBC -Ctrl.hexkey = hexkey:850BB51358548CD05E86768C313E3BFEF7511937DCF72C3E -Ctrl.hexconstant = hexconstant:0000000255 -Output = A77C94980E9B7345A81525C423A737CE67F4CD91B6B3DA45 - -KDF = KRB5KDF -Ctrl.cipher = cipher:AES-128-CBC -Ctrl.hexkey = hexkey:42263C6E89F4FC28B8DF68EE09799F15 -Ctrl.hexconstant = hexconstant:0000000299 -Output = 34280A382BC92769B2DA2F9EF066854B - -KDF = KRB5KDF -Ctrl.cipher = cipher:AES-128-CBC -Ctrl.hexkey = hexkey:42263C6E89F4FC28B8DF68EE09799F15 -Ctrl.hexconstant = hexconstant:00000002AA -Output = 5B14FC4E250E14DDF9DCCF1AF6674F53 - -KDF = KRB5KDF -Ctrl.cipher = cipher:AES-128-CBC -Ctrl.hexkey = hexkey:42263C6E89F4FC28B8DF68EE09799F15 -Ctrl.hexconstant = hexconstant:0000000255 -Output = 4ED31063621684F09AE8D89991AF3E8F - -KDF = KRB5KDF -Ctrl.cipher = cipher:AES-256-CBC -Ctrl.hexkey = hexkey:FE697B52BC0D3CE14432BA036A92E65BBB52280990A2FA27883998D72AF30161 -Ctrl.hexconstant = hexconstant:0000000299 -Output = BFAB388BDCB238E9F9C98D6A878304F04D30C82556375AC507A7A852790F4674 - -KDF = KRB5KDF -Ctrl.cipher = cipher:AES-256-CBC -Ctrl.hexkey = hexkey:FE697B52BC0D3CE14432BA036A92E65BBB52280990A2FA27883998D72AF30161 -Ctrl.hexconstant = hexconstant:00000002AA -Output = C7CFD9CD75FE793A586A542D87E0D1396F1134A104BB1A9190B8C90ADA3DDF37 - -KDF = KRB5KDF -Ctrl.cipher = cipher:AES-256-CBC -Ctrl.hexkey = hexkey:FE697B52BC0D3CE14432BA036A92E65BBB52280990A2FA27883998D72AF30161 -Ctrl.hexconstant = hexconstant:0000000255 -Output = 97151B4C76945063E2EB0529DC067D97D7BBA90776D8126D91F34F3101AEA8BA - -#Same as the first but with no "fixup" -KDF = KRB5KDF -Ctrl.cipher = cipher:DES-EDE3-CBC -Ctrl.hexkey = hexkey:dce06b1f64c857a11c3db57c51899b2cc1791008ce973b92 -Ctrl.hexconstant = hexconstant:0000000155 -Output = 935079d14490a75c3093c4a6e8c3b049c71e6ee705 - diff --git a/test/recipes/30-test_evp_data/evpkdf_tls11_prf.txt b/test/recipes/30-test_evp_data/evpkdf_tls11_prf.txt new file mode 100644 index 0000000000..6431f53b7a --- /dev/null +++ b/test/recipes/30-test_evp_data/evpkdf_tls11_prf.txt @@ -0,0 +1,37 @@ +# +# Copyright 2001-2020 The OpenSSL Project Authors. All Rights Reserved. +# +# Licensed under the Apache License 2.0 (the "License"). You may not use +# this file except in compliance with the License. You can obtain a copy +# in the file LICENSE in the source distribution or at +# https://www.openssl.org/source/license.html + +# Tests start with one of these keywords +# Cipher Decrypt Derive Digest Encoding KDF MAC PBE +# PrivPubKeyPair Sign Verify VerifyRecover +# and continue until a blank line. Lines starting with a pound sign are ignored. + +Title = TLS1 PRF tests (from NIST test vectors) + +KDF = TLS1-PRF +Ctrl.digest = digest:MD5-SHA1 +Ctrl.Secret = hexsecret:bded7fa5c1699c010be23dd06ada3a48349f21e5f86263d512c0c5cc379f0e780ec55d9844b2f1db02a96453513568d0 +Ctrl.label = seed:master secret +Ctrl.client_random = hexseed:e5acaf549cd25c22d964c0d930fa4b5261d2507fad84c33715b7b9a864020693 +Ctrl.server_random = hexseed:135e4d557fdf3aa6406d82975d5c606a9734c9334b42136e96990fbd5358cdb2 +Output = 2f6962dfbc744c4b2138bb6b3d33054c5ecc14f24851d9896395a44ab3964efc2090c5bf51a0891209f46c1e1e998f62 + +KDF = TLS1-PRF +Ctrl.digest = digest:MD5-SHA1 +Ctrl.Secret = hexsecret:2f6962dfbc744c4b2138bb6b3d33054c5ecc14f24851d9896395a44ab3964efc2090c5bf51a0891209f46c1e1e998f62 +Ctrl.label = seed:key expansion +Ctrl.server_random = hexseed:67267e650eb32444119d222a368c191af3082888dc35afe8368e638c828874be +Ctrl.client_random = hexseed:d58a7b1cd4fedaa232159df652ce188f9d997e061b9bf48e83b62990440931f6 +Output = 3088825988e77fce68d19f756e18e43eb7fe672433504feaf99b3c503d9091b164f166db301d70c9fc0870b4a94563907bee1a61fb786cb717576890bcc51cb9ead97e01d0a2fea99c953377b195205ff07b369589178796edc963fd80fdbe518a2fc1c35c18ae8d + +# Missing secret. +KDF = TLS1-PRF +Ctrl.digest = digest:MD5-SHA1 +Ctrl.Seed = hexseed:02 +Output = 03 +Result = KDF_DERIVE_ERROR diff --git a/test/recipes/30-test_evp_data/evpkdf_tls12_prf.txt b/test/recipes/30-test_evp_data/evpkdf_tls12_prf.txt new file mode 100644 index 0000000000..3ff4b536e4 --- /dev/null +++ b/test/recipes/30-test_evp_data/evpkdf_tls12_prf.txt @@ -0,0 +1,46 @@ +# +# Copyright 2001-2020 The OpenSSL Project Authors. All Rights Reserved. +# +# Licensed under the Apache License 2.0 (the "License"). You may not use +# this file except in compliance with the License. You can obtain a copy +# in the file LICENSE in the source distribution or at +# https://www.openssl.org/source/license.html + +# Tests start with one of these keywords +# Cipher Decrypt Derive Digest Encoding KDF MAC PBE +# PrivPubKeyPair Sign Verify VerifyRecover +# and continue until a blank line. Lines starting with a pound sign are ignored. + +Title = TLS12 PRF tests (from NIST test vectors) + +KDF = TLS1-PRF +Ctrl.digest = digest:SHA256 +Ctrl.Secret = hexsecret:f8938ecc9edebc5030c0c6a441e213cd24e6f770a50dda07876f8d55da062bcadb386b411fd4fe4313a604fce6c17fbc +Ctrl.label = seed:master secret +Ctrl.client_random = hexseed:36c129d01a3200894b9179faac589d9835d58775f9b5ea3587cb8fd0364cae8c +Ctrl.server_random = hexseed:f6c9575ed7ddd73e1f7d16eca115415812a43c2b747daaaae043abfb50053fce +Output = 202c88c00f84a17a20027079604787461176455539e705be730890602c289a5001e34eeb3a043e5d52a65e66125188bf + +KDF = TLS1-PRF +Ctrl.digest = digest:SHA256 +Ctrl.Secret = hexsecret:202c88c00f84a17a20027079604787461176455539e705be730890602c289a5001e34eeb3a043e5d52a65e66125188bf +Ctrl.label = seed:key expansion +Ctrl.server_random = hexseed:ae6c806f8ad4d80784549dff28a4b58fd837681a51d928c3e30ee5ff14f39868 +Ctrl.client_random = hexseed:62e1fd91f23f558a605f28478c58cf72637b89784d959df7e946d3f07bd1b616 +Output = d06139889fffac1e3a71865f504aa5d0d2a2e89506c6f2279b670c3e1b74f531016a2530c51a3a0f7e1d6590d0f0566b2f387f8d11fd4f731cdd572d2eae927f6f2f81410b25e6960be68985add6c38445ad9f8c64bf8068bf9a6679485d966f1ad6f68b43495b10a683755ea2b858d70ccac7ec8b053c6bd41ca299d4e51928 + +# As above but use long name for KDF +KDF = tls1-prf +Ctrl.digest = digest:SHA256 +Ctrl.Secret = hexsecret:202c88c00f84a17a20027079604787461176455539e705be730890602c289a5001e34eeb3a043e5d52a65e66125188bf +Ctrl.label = seed:key expansion +Ctrl.server_random = hexseed:ae6c806f8ad4d80784549dff28a4b58fd837681a51d928c3e30ee5ff14f39868 +Ctrl.client_random = hexseed:62e1fd91f23f558a605f28478c58cf72637b89784d959df7e946d3f07bd1b616 +Output = d06139889fffac1e3a71865f504aa5d0d2a2e89506c6f2279b670c3e1b74f531016a2530c51a3a0f7e1d6590d0f0566b2f387f8d11fd4f731cdd572d2eae927f6f2f81410b25e6960be68985add6c38445ad9f8c64bf8068bf9a6679485d966f1ad6f68b43495b10a683755ea2b858d70ccac7ec8b053c6bd41ca299d4e51928 + +# Missing digest. +KDF = TLS1-PRF +Ctrl.Secret = hexsecret:01 +Ctrl.Seed = hexseed:02 +Output = 03 +Result = KDF_DERIVE_ERROR diff --git a/test/recipes/30-test_evp_data/evpkdf_x942.txt b/test/recipes/30-test_evp_data/evpkdf_x942.txt new file mode 100644 index 0000000000..104fa83026 --- /dev/null +++ b/test/recipes/30-test_evp_data/evpkdf_x942.txt @@ -0,0 +1,35 @@ +# +# Copyright 2001-2020 The OpenSSL Project Authors. All Rights Reserved. +# +# Licensed under the Apache License 2.0 (the "License"). You may not use +# this file except in compliance with the License. You can obtain a copy +# in the file LICENSE in the source distribution or at +# https://www.openssl.org/source/license.html + +# Tests start with one of these keywords +# Cipher Decrypt Derive Digest Encoding KDF MAC PBE +# PrivPubKeyPair Sign Verify VerifyRecover +# and continue until a blank line. Lines starting with a pound sign are ignored. + +Title = X9.42 KDF tests (from RFC2631 test vectors) + +KDF = X942KDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:000102030405060708090a0b0c0d0e0f10111213 +Ctrl.cekalg = cekalg:id-smime-alg-CMS3DESwrap +Output = a09661392376f7044d9052a397883246b67f5f1ef63eb5fb + +Title = X9.42 KDF tests (RFC3565 2.3.2 Examples) + +KDF = X942KDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:000102030405060708090a0b0c0d0e0f10111213 +Ctrl.cekalg = cekalg:id-aes128-wrap +Output = d6d6b094c1027a7de6e3117294a35364 + +KDF = X942KDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:000102030405060708090a0b0c0d0e0f10111213 +Ctrl.cekalg = cekalg:id-aes256-wrap +Ctrl.hexukm = hexukm:0123456789abcdeffedcba98765432010123456789abcdeffedcba98765432010123456789abcdeffedcba98765432010123456789abcdeffedcba9876543201 +Output = 8890585C4E281A5C1167CAA530BED59B3230D893CBA8F922BD1B56A0 diff --git a/test/recipes/30-test_evp_data/evpkdf_x963.txt b/test/recipes/30-test_evp_data/evpkdf_x963.txt new file mode 100644 index 0000000000..0f8920c90f --- /dev/null +++ b/test/recipes/30-test_evp_data/evpkdf_x963.txt @@ -0,0 +1,112 @@ +# +# Copyright 2001-2020 The OpenSSL Project Authors. All Rights Reserved. +# +# Licensed under the Apache License 2.0 (the "License"). You may not use +# this file except in compliance with the License. You can obtain a copy +# in the file LICENSE in the source distribution or at +# https://www.openssl.org/source/license.html + +# Tests start with one of these keywords +# Cipher Decrypt Derive Digest Encoding KDF MAC PBE +# PrivPubKeyPair Sign Verify VerifyRecover +# and continue until a blank line. Lines starting with a pound sign are ignored. + + +# Test vectors extracted from +# https://csrc.nist.gov/CSRC/media/Projects/Cryptographic-Algorithm-Validation-Program/documents/components/800-135testvectors/ansx963_2001.zip + +Title = X963 KDF tests (from NIST test vectors) + +KDF = X963KDF +Ctrl.digest = digest:SHA1 +Ctrl.hexsecret = hexsecret:fd17198b89ab39c4ab5d7cca363b82f9fd7e23c3984dc8a2 +Ctrl.hexinfo = hexinfo:856a53f3e36a26bbc5792879f307cce2 +Output = 6e5fad865cb4a51c95209b16df0cc490bc2c9064405c5bccd4ee4832a531fbe7f10cb79e2eab6ab1149fbd5a23cfdabc41242269c9df22f628c4424333855b64e95e2d4fb8469c669f17176c07d103376b10b384ec5763d8b8c610409f19aca8eb31f9d85cc61a8d6d4a03d03e5a506b78d6847e93d295ee548c65afedd2efec + +KDF = X963KDF +Ctrl.digest = digest:SHA224 +Ctrl.hexsecret = hexsecret:da67a73072d521a8272c69023573012ddf9b46bff65b3900 +Ctrl.hexinfo = hexinfo:727997aed53e78f74b1d66743a4ea4d2 +Output = dfc3126c5eebf9a58d89730e8d8ff7cc772592f28c10b349b437d9d068698a22e532eae975dfaf9c5c6a9f2935eafb05353013c253444e61f07bc9ddd15948e614bdc7e445ba3b1893f42f87f18fb352d49956009a642c362d45410b43a9ab376e9261210739174759511d1f9e52f6ec73dfed446dbafaf7fd1a57113abc2e8d + +KDF = X963KDF +Ctrl.digest = digest:SHA256 +Ctrl.hexsecret = hexsecret:22518b10e70f2a3f243810ae3254139efbee04aa57c7af7d +Ctrl.hexinfo = hexinfo:75eef81aa3041e33b80971203d2c0c52 +Output = c498af77161cc59f2962b9a713e2b215152d139766ce34a776df11866a69bf2e52a13d9c7c6fc878c50c5ea0bc7b00e0da2447cfd874f6cf92f30d0097111485500c90c3af8b487872d04685d14c8d1dc8d7fa08beb0ce0ababc11f0bd496269142d43525a78e5bc79a17f59676a5706dc54d54d4d1f0bd7e386128ec26afc21 + +KDF = X963KDF +Ctrl.digest = digest:SHA384 +Ctrl.hexsecret = hexsecret:d8554db1b392cd55c3fe957bed76af09c13ac2a9392f88f6 +Output = 671a46aada145162f8ddf1ca586a1cda + +KDF = X963KDF +Ctrl.digest = digest:SHA384 +Ctrl.hexsecret = hexsecret:c051fd22539c9de791d6c43a854b8f80a6bf70190050854a +Ctrl.hexinfo = hexinfo:1317504aa34759bb4c931e3b78201945 +Output = cf6a84434734ac6949e1d7976743277be789906908ad3ca3a8923da7f476abbeb574306d7243031a85566914bfd247d2519c479953d9d55b6b831e56260806c39af21b74e3ecf470e3bd8332791c8a23c13352514fdef00c2d1a408ba31b2d3f9fdcb373895484649a645d1845eec91b5bfdc5ad28c7824984482002dd4a8677 + +KDF = X963KDF +Ctrl.digest = digest:SHA512 +Ctrl.hexsecret = hexsecret:87fc0d8c4477485bb574f5fcea264b30885dc8d90ad82782 +Output = 947665fbb9152153ef460238506a0245 + +KDF = X963KDF +Ctrl.digest = digest:SHA512 +Ctrl.hexsecret = hexsecret:00aa5bb79b33e389fa58ceadc047197f14e73712f452caa9fc4c9adb369348b81507392f1a86ddfdb7c4ff8231c4bd0f44e44a1b55b1404747a9e2e753f55ef05a2d +Ctrl.hexinfo = hexinfo:e3b5b4c1b0d5cf1d2b3a2f9937895d31 +Output = 4463f869f3cc18769b52264b0112b5858f7ad32a5a2d96d8cffabf7fa733633d6e4dd2a599acceb3ea54a6217ce0b50eef4f6b40a5c30250a5a8eeee208002267089dbf351f3f5022aa9638bf1ee419dea9c4ff745a25ac27bda33ca08bd56dd1a59b4106cf2dbbc0ab2aa8e2efa7b17902d34276951ceccab87f9661c3e8816 + +KDF = X963KDF +Ctrl.digest = digest:SHA512 +Ctrl.hexsecret = hexsecret:009dcd6ba5c8c803ca21f9996ca5dd86047d4ddc150fddace1b1ebe996c2007e3ee907c8ff03b9ef766e8ceb4dedf7489e5162e2278c0185e4be381bec17dd992cf8 +Ctrl.hexinfo = hexinfo:1e60e51c11a538b0ea8990d69a4c6358 +Output = 4e55036a32f32fc965046fdfbf686c108e43a69f8fc1a64ff1bd77763f2eedc8bf277d78b4ce31243e1adbe2c2d5dd59b47503b5b90b54f9d7a9a5aea49c7f0283cb64c3849a1d157000fd41ef6c1d1a5b62734e7c9a20dcfb57f2da974933f57ee619d72898d0e93d9a4254aaddf73941d6269298b4d49c0ac64a33802fe8f2 + +KDF = X963KDF +Ctrl.digest = digest:SHA512 +Ctrl.hexsecret = hexsecret:01bbc44314f24db4d67a2a7fb5ca3f7a5022790f5875895d448050eda5611a2f39de48e394c5a3df26208eb01f804d0a1d68eece6b6fa96d6db895e133e129094f78 +Ctrl.hexinfo = hexinfo:433e3ee77d00e4a9634efd677e2ff21b +Output = f1255002293d5fbcf35ad0e532ae872171d11014616a2c52d7e5cb861b0251b9e505a77161c777bafc052b6525a6ecf34590605de72f13a1aff0a61a8a4a3364ebbe2f99224c13e043e497af8a26de749cd257e475b2f0e60e3b594901320a692a4af422f9636e4814b33f67d181a086265013b0d4efd9e1a94ea8a576afde66 + +KDF = X963KDF +Ctrl.digest = digest:SHA512 +Ctrl.hexsecret = hexsecret:01a33032a2bf6f8e9d6972dd339536c9e248ae9881844ff1bd04af48085be4ca1834f2a94ce1019dd9620d1e3a68203a5b291f40b5f8e3238a2a036312b89061cc60 +Ctrl.hexinfo = hexinfo:d3297ad6b9757d1f5a9d5b0e72176d74 +Output = 63565d1d3443620fba4218c97887ff40d6d68bf56b429c22018be5d91c318187ebe8a9399c5cc6c4a849288ab784d4340714ae3fdb426c4a83db9ce2ba8aea80d448e50ad543749b47bcaae519f7f00badd8d48296e81069104dcd293c605b08159ef2ef14c7833739d0414274136ae4db05ba4fa31b29c59de46d9be539525f + +KDF = X963KDF +Ctrl.digest = digest:SHA512 +Ctrl.hexsecret = hexsecret:004b20a501776ea54cbdabffec2a664b7a93f8d67b17405a82bd9cbf3685a4659beb2deff1b6ecaa7ab187b6d4fd407f10db6992c65308410deb133be31a0de0c1c9 +Ctrl.hexinfo = hexinfo:fd5462cb37aa298e95f8e34bb49d85ca +Output = cafcbc117317661bf15277c2881e05e345c1720b0c1c4040c33fe4a3ecf8032802642d29828a077ca91b6fac216b7a06517740c7d633c279dd2115eb7a34fd337376247219f53da32df57070f47c2e0816710080d6492e1c3e8cac818c3cfca2a3ce5cf1515f066b1815d2d2f69fa3111a9e81570963b90a536da0376c12265b + +KDF = X963KDF +Ctrl.digest = digest:SHA512 +Ctrl.hexsecret = hexsecret:01fb44335b437771777f14d44e5b634c18c7f570b935228fd3073e3cbde299dfb9f4d64ad720d30e875e8c6bbe181027459c9d3f92a276a38e22faf25f208576a63f +Ctrl.hexinfo = hexinfo:2359d18657243d61963ceca3fa93587d +Output = 1544e54cd293e533959bdd893337f01ef0c7685a4d8d403d438b0223a7e18330c312a0f16bd819f4359fdd74ae85cc603d35e3d9cba896177452c8dee5214066fca420c3ab522a245af215beb7de52ebb0bdd15d0596b8b763cf7e25610a53efa726b899a1d9727b25ec673ee91ff2111f03cf761a7880d69625e784becfd4e0 + +KDF = X963KDF +Ctrl.digest = digest:SHA512 +Ctrl.hexsecret = hexsecret:0109afa3904193690d3f2c49e42d08c8c5cd2ea907a0d699c876e418e303b485374c8d6cf5a32af1491b3ea8a3503692b4a0fd78f9b4082e2a6e72345db4532d749f +Ctrl.hexinfo = hexinfo:7c19631d3cd65915fa4789cf7b1c0979 +Output = fb60175568a66ef4202e110396663085fe2a9d6d2071e55d03c30ea499fee850c99c4e42a7227cca2eaf4d75e37dde205ae07260e84aeee6ef0819d98bd00d0ff5ba55994e7bf2a578baf2ee9aa862d94bf431fa14429010ebc30d7e602de726cdffacaeabc8541237fbc0c975abbf203c018c688ee354d07978654b90de9569 + +KDF = X963KDF +Ctrl.digest = digest:SHA512 +Ctrl.hexsecret = hexsecret:00632e165775f3c5b6e81d4042f809e904b8167687747638874b39ffce1993f46e8fc44e2a1c3df59563003bad3e25c85b61819e9addc0fdbe173dd4115c38f62ef6 +Ctrl.hexinfo = hexinfo:2bf0f18b7f21c4ec9c20b84c75f66b7c +Output = c324fed01b75c37fc96703031403d5cc6857dc7ffa48192d9a10d5c69dd6274ecd0eb9a278f9e6b616c27bbf2e3e016635b311940390c52c61a4f4b3383ca6046961dbd2455ff6a982e8269864edd3cc1b1053da7daf9699c61b05f1acca7b79e68db655fd526fdc392bd36dcaf1c5b2fafb8975e318070d4bb948829ac41bb6 + +KDF = X963KDF +Ctrl.digest = digest:SHA512 +Ctrl.hexsecret = hexsecret:0096172bf47d06d544ae98471490cf9e52ee59ea7a2208b33b26c52d4952bb8f41b2211d3f9ff32e77ca8cc906ba8d246ff266ddf1df8f53824ccb15b8fb39724703 +Ctrl.hexinfo = hexinfo:cf3a74ba86af42f1ae85477ead645583 +Output = 995d1ab8557dfeafcb347f8182583fa0ac5e6cb3912393592590989f38a0214f6cf7d6fbe23917b0966c6a870876de2a2c13a45fa7aa1715be137ed332e1ffc204ce4dcce33ece6dec7f3da61fa049780040e44142cc8a1e5121cf56b386f65b7c261a192f05e5fefae4221a602bc51c41ef175dc45fb7eab8642421b4f7e3e7 + +KDF = X963KDF +Ctrl.digest = digest:SHA512 +Ctrl.hexsecret = hexsecret:0037cd001a0ad87f35ddf58ab355d6144ba2ed0749a7435dab548ba0bfbe723c047e2396b4eef99653412a92c8db74bb5c03063f2eb0525ae87356750ae3676faa86 +Ctrl.hexinfo = hexinfo:eb17da8851c41c7ac6710b1c49f324f8 +Output = 829a28b81f9e95b5f306604067499c07d5944ca034ed130d513951f7143e4e162bad8adb2833e53b8235c293cd2a809659ac7f7e392cba6a543660e5d95070c0c9e6a9cdc38123e22da61bb4cbb6ad6d1a58a069e934fc231bd9fe39a24afcbf322ccea385f0418f3b01c1edd6e7124593a1cefe3e48fcd95daaf72cfd973c59 diff --git a/test/recipes/30-test_evp_data/evpmac.txt b/test/recipes/30-test_evp_data/evpmac.txt deleted file mode 100644 index b6dc5b86e2..0000000000 --- a/test/recipes/30-test_evp_data/evpmac.txt +++ /dev/null @@ -1,1061 +0,0 @@ -# -# Copyright 2001-2020 The OpenSSL Project Authors. All Rights Reserved. -# -# Licensed under the Apache License 2.0 (the "License"). You may not use -# this file except in compliance with the License. You can obtain a copy -# in the file LICENSE in the source distribution or at -# https://www.openssl.org/source/license.html - -# Tests start with one of these keywords -# Cipher Decrypt Derive Digest Encoding KDF MAC PBE -# PrivPubKeyPair Sign Verify VerifyRecover -# and continue until a blank line. Lines starting with a pound sign, -# like this prolog, are ignored. - -# SIPHASH tests - default values: 2,4 rounds, 16-byte mac -# There are no official test vectors, they are simple vectors 1, 2, 3, etc - -Title = SIPHASH tests - -MAC = SipHash -Key = 000102030405060708090A0B0C0D0E0F -Input = -Output = a3817f04ba25a8e66df67214c7550293 - -MAC = SipHash -Key = 000102030405060708090A0B0C0D0E0F -Input = 00 -Output = da87c1d86b99af44347659119b22fc45 - -MAC = SipHash -Key = 000102030405060708090A0B0C0D0E0F -Input = 0001 -Output = 8177228da4a45dc7fca38bdef60affe4 - -MAC = SipHash -Key = 000102030405060708090A0B0C0D0E0F -Input = 000102 -Output = 9c70b60c5267a94e5f33b6b02985ed51 - -MAC = SipHash -Key = 000102030405060708090A0B0C0D0E0F -Input = 00010203 -Output = f88164c12d9c8faf7d0f6e7c7bcd5579 - -MAC = SipHash -Key = 000102030405060708090A0B0C0D0E0F -Input = 0001020304 -Output = 1368875980776f8854527a07690e9627 - -MAC = SipHash -Key = 000102030405060708090A0B0C0D0E0F -Input = 000102030405 -Output = 14eeca338b208613485ea0308fd7a15e - -MAC = SipHash -Key = 000102030405060708090A0B0C0D0E0F -Input = 00010203040506 -Output = a1f1ebbed8dbc153c0b84aa61ff08239 - -MAC = SipHash -Key = 000102030405060708090A0B0C0D0E0F -Input = 0001020304050607 -Output = 3b62a9ba6258f5610f83e264f31497b4 - -MAC = SipHash -Key = 000102030405060708090A0B0C0D0E0F -Input = 000102030405060708 -Output = 264499060ad9baabc47f8b02bb6d71ed - -MAC = SipHash -Key = 000102030405060708090A0B0C0D0E0F -Input = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E -Output = 5150d1772f50834a503e069a973fbd7c - - -MAC = SipHash -Key = 000102030405060708090A0B0C0D0E0F -Input = -Output = a3817f04ba25a8e66df67214c7550293 - -MAC = SipHash -Key = 000102030405060708090A0B0C0D0E0F -Input = 00 -Output = da87c1d86b99af44347659119b22fc45 - -MAC = SipHash -Key = 000102030405060708090A0B0C0D0E0F -Input = 0001 -Output = 8177228da4a45dc7fca38bdef60affe4 - -MAC = SipHash -Key = 000102030405060708090A0B0C0D0E0F -Input = 000102 -Output = 9c70b60c5267a94e5f33b6b02985ed51 - -MAC = SipHash -Key = 000102030405060708090A0B0C0D0E0F -Input = 00010203 -Output = f88164c12d9c8faf7d0f6e7c7bcd5579 - -MAC = SipHash -Key = 000102030405060708090A0B0C0D0E0F -Input = 0001020304 -Output = 1368875980776f8854527a07690e9627 - -MAC = SipHash -Key = 000102030405060708090A0B0C0D0E0F -Input = 000102030405 -Output = 14eeca338b208613485ea0308fd7a15e - -MAC = SipHash -Key = 000102030405060708090A0B0C0D0E0F -Input = 00010203040506 -Output = a1f1ebbed8dbc153c0b84aa61ff08239 - -MAC = SipHash -Key = 000102030405060708090A0B0C0D0E0F -Input = 0001020304050607 -Output = 3b62a9ba6258f5610f83e264f31497b4 - -MAC = SipHash by EVP_PKEY -Key = 000102030405060708090A0B0C0D0E0F -Input = 000102030405060708 -Output = 264499060ad9baabc47f8b02bb6d71ed - -MAC = SipHash -Key = 000102030405060708090A0B0C0D0E0F -Input = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E -Output = 5150d1772f50834a503e069a973fbd7c - -# SIPHASH - default values: 2,4 rounds, explicit 8-byte mac - -MAC = SipHash -Ctrl = size:8 -Key = 000102030405060708090A0B0C0D0E0F -Input = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E -Output = 724506EB4C328A95 - -# SIPHASH - default values: 2,4 rounds, explicit 16-byte mac - -MAC = SipHash -Ctrl = size:16 -Key = 000102030405060708090A0B0C0D0E0F -Input = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E -Output = 5150d1772f50834a503e069a973fbd7c - -# SIPHASH - default values: 2,4 rounds, explicit 16-byte mac (set as 0) - -MAC = SipHash -Ctrl = size:0 -Key = 000102030405060708090A0B0C0D0E0F -Input = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E -Output = 5150d1772f50834a503e069a973fbd7c - -# SIPHASH - default values: 2,4 rounds, explicit 13-byte mac (invalid size) - -MAC = SipHash -Ctrl = size:13 -Key = 000102030405060708090A0B0C0D0E0F -Result = MAC_BAD_PARAMS - -# SIPHASH - default values: 2,4 rounds, explicit 13-byte mac (invalid size) -# by EVP_PKEY this time - -MAC = SipHash by EVP_PKEY -Ctrl = size:13 -Key = 000102030405060708090A0B0C0D0E0F -Result = EVPPKEYCTXCTRL_ERROR - -Title = Keyed BLAKE2 tests (Test vectors from reference implementation) - -MAC = BLAKE2BMAC -Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f -Input = -Output = 10ebb67700b1868efb4417987acf4690ae9d972fb7a590c2f02871799aaa4786b5e996e8f0f4eb981fc214b005f42d2ff4233499391653df7aefcbc13fc51568 - -MAC = BLAKE2BMAC -Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f -Input = 00 -Output = 961f6dd1e4dd30f63901690c512e78e4b45e4742ed197c3c5e45c549fd25f2e4187b0bc9fe30492b16b0d0bc4ef9b0f34c7003fac09a5ef1532e69430234cebd - -MAC = BLAKE2BMAC -Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f -Input = 0001 -Output = da2cfbe2d8409a0f38026113884f84b50156371ae304c4430173d08a99d9fb1b983164a3770706d537f49e0c916d9f32b95cc37a95b99d857436f0232c88a965 - -MAC = BLAKE2BMAC -Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f -Input = 000102 -Output = 33d0825dddf7ada99b0e7e307104ad07ca9cfd9692214f1561356315e784f3e5a17e364ae9dbb14cb2036df932b77f4b292761365fb328de7afdc6d8998f5fc1 - -MAC = BLAKE2BMAC -Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f -Input = 00010203 -Output = beaa5a3d08f3807143cf621d95cd690514d0b49efff9c91d24b59241ec0eefa5f60196d407048bba8d2146828ebcb0488d8842fd56bb4f6df8e19c4b4daab8ac - -MAC = BLAKE2BMAC -Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f -Input = 0001020304 -Output = 098084b51fd13deae5f4320de94a688ee07baea2800486689a8636117b46c1f4c1f6af7f74ae7c857600456a58a3af251dc4723a64cc7c0a5ab6d9cac91c20bb - -MAC = BLAKE2BMAC -Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f -Input = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9 -Output = 1085d78307b1c4b008c57a2e7e5b234658a0a82e4ff1e4aaac72b312fda0fe27d233bc5b10e9cc17fdc7697b540c7d95eb215a19a1a0e20e1abfa126efd568c7 - -MAC = BLAKE2BMAC -Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f -Input = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fa -Output = 4e5c734c7dde011d83eac2b7347b373594f92d7091b9ca34cb9c6f39bdf5a8d2f134379e16d822f6522170ccf2ddd55c84b9e6c64fc927ac4cf8dfb2a17701f2 - -MAC = BLAKE2BMAC -Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f -Input = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafb -Output = 695d83bd990a1117b3d0ce06cc888027d12a054c2677fd82f0d4fbfc93575523e7991a5e35a3752e9b70ce62992e268a877744cdd435f5f130869c9a2074b338 - -MAC = BLAKE2BMAC -Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f -Input = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfc -Output = a6213743568e3b3158b9184301f3690847554c68457cb40fc9a4b8cfd8d4a118c301a07737aeda0f929c68913c5f51c80394f53bff1c3e83b2e40ca97eba9e15 - -MAC = BLAKE2BMAC -Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f -Input = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfd -Output = d444bfa2362a96df213d070e33fa841f51334e4e76866b8139e8af3bb3398be2dfaddcbc56b9146de9f68118dc5829e74b0c28d7711907b121f9161cb92b69a9 - -MAC = BLAKE2BMAC -Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f -Input = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfe -Output = 142709d62e28fcccd0af97fad0f8465b971e82201dc51070faa0372aa43e92484be1c1e73ba10906d5d1853db6a4106e0a7bf9800d373d6dee2d46d62ef2a461 - -MAC = BLAKE2SMAC -Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f -Input = -Output = 48a8997da407876b3d79c0d92325ad3b89cbb754d86ab71aee047ad345fd2c49 - -MAC = BLAKE2SMAC -Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f -Input = 00 -Output = 40d15fee7c328830166ac3f918650f807e7e01e177258cdc0a39b11f598066f1 - -MAC = BLAKE2SMAC -Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f -Input = 0001 -Output = 6bb71300644cd3991b26ccd4d274acd1adeab8b1d7914546c1198bbe9fc9d803 - -MAC = BLAKE2SMAC -Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f -Input = 000102 -Output = 1d220dbe2ee134661fdf6d9e74b41704710556f2f6e5a091b227697445dbea6b - -MAC = BLAKE2SMAC -Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f -Input = 00010203 -Output = f6c3fbadb4cc687a0064a5be6e791bec63b868ad62fba61b3757ef9ca52e05b2 - -MAC = BLAKE2SMAC -Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f -Input = 0001020304 -Output = 49c1f21188dfd769aea0e911dd6b41f14dab109d2b85977aa3088b5c707e8598 - -MAC = BLAKE2SMAC -Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f -Input = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9 -Output = 9fc5450109e1b779f6c7ae79d56c27635c8dd426c5a9d54e2578db989b8c3b4e - -MAC = BLAKE2SMAC -Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f -Input = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fa -Output = d12bf3732ef4af5c22fa90356af8fc50fcb40f8f2ea5c8594737a3b3d5abdbd7 - -MAC = BLAKE2SMAC -Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f -Input = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafb -Output = 11030b9289bba5af65260672ab6fee88b87420acef4a1789a2073b7ec2f2a09e - -MAC = BLAKE2SMAC -Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f -Input = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfc -Output = 69cb192b8444005c8c0ceb12c846860768188cda0aec27a9c8a55cdee2123632 - -MAC = BLAKE2SMAC -Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f -Input = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfd -Output = db444c15597b5f1a03d1f9edd16e4a9f43a667cc275175dfa2b704e3bb1a9b83 - -MAC = BLAKE2SMAC -Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f -Input = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfe -Output = 3fb735061abc519dfe979e54c1ee5bfad0a9d858b3315bad34bde999efd724dd - -Title = Custom keyed BLAKE2 tests - -MAC = BLAKE2BMAC -Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f -Custom = "email" -Input = "Sample input for keylen