From c5f070d5d583e2c95fe0107cbe3dd6dad14bb66c Mon Sep 17 00:00:00 2001 From: Ben Laurie Date: Wed, 30 Jul 2003 18:30:18 +0000 Subject: [PATCH] Whoops, forgot FIPS DES, also add EVPs for DES CFB1 and 8. --- Makefile.org | 21 +- crypto/des/cfb_enc.c | 3 +- crypto/des/des_enc.c | 4 + crypto/evp/e_aes.c | 21 +- crypto/evp/e_des.c | 38 +- crypto/evp/evp.h | 6 + crypto/evp/evp_locl.h | 9 + crypto/objects/obj_dat.h | 71 +- crypto/objects/obj_mac.h | 37 +- crypto/objects/obj_mac.num | 5 + crypto/objects/objects.txt | 18 +- fips/Makefile.ssl | 9 +- fips/aes/Makefile.ssl | 2 +- fips/des/.cvsignore | 3 + fips/des/Makefile.ssl | 96 +++ fips/des/fingerprint.sha1 | 2 + fips/des/fips_des_enc.c | 288 +++++++ fips/des/fips_des_locl.h | 428 ++++++++++ fips/des/fips_desmovs.c | 659 ++++++++++++++++ fips/fips_make_sha1 | 3 + fips/testvectors/des/req/CBCMMT.req | 109 +++ fips/testvectors/des/req/CBCMonte.req | 17 + fips/testvectors/des/req/CBCinvperm.req | 648 ++++++++++++++++ fips/testvectors/des/req/CBCpermop.req | 328 ++++++++ fips/testvectors/des/req/CBCsubtab.req | 198 +++++ fips/testvectors/des/req/CBCvarkey.req | 568 ++++++++++++++ fips/testvectors/des/req/CBCvartext.req | 648 ++++++++++++++++ fips/testvectors/des/req/CFB1MMT.req | 109 +++ fips/testvectors/des/req/CFB1Monte.req | 17 + fips/testvectors/des/req/CFB1invperm.req | 648 ++++++++++++++++ fips/testvectors/des/req/CFB1permop.req | 328 ++++++++ fips/testvectors/des/req/CFB1subtab.req | 198 +++++ fips/testvectors/des/req/CFB1varkey.req | 568 ++++++++++++++ fips/testvectors/des/req/CFB1vartext.req | 648 ++++++++++++++++ fips/testvectors/des/req/CFB64MMT.req | 109 +++ fips/testvectors/des/req/CFB64Monte.req | 17 + fips/testvectors/des/req/CFB64invperm.req | 648 ++++++++++++++++ fips/testvectors/des/req/CFB64permop.req | 328 ++++++++ fips/testvectors/des/req/CFB64subtab.req | 198 +++++ fips/testvectors/des/req/CFB64varkey.req | 568 ++++++++++++++ fips/testvectors/des/req/CFB64vartext.req | 648 ++++++++++++++++ fips/testvectors/des/req/CFB8MMT.req | 109 +++ fips/testvectors/des/req/CFB8Monte.req | 17 + fips/testvectors/des/req/CFB8invperm.req | 648 ++++++++++++++++ fips/testvectors/des/req/CFB8permop.req | 328 ++++++++ fips/testvectors/des/req/CFB8subtab.req | 198 +++++ fips/testvectors/des/req/CFB8varkey.req | 568 ++++++++++++++ fips/testvectors/des/req/CFB8vartext.req | 648 ++++++++++++++++ fips/testvectors/des/req/ECBMMT.req | 89 +++ fips/testvectors/des/req/ECBMonte.req | 15 + fips/testvectors/des/req/ECBinvperm.req | 520 +++++++++++++ fips/testvectors/des/req/ECBpermop.req | 264 +++++++ fips/testvectors/des/req/ECBsubtab.req | 160 ++++ fips/testvectors/des/req/ECBvarkey.req | 456 +++++++++++ fips/testvectors/des/req/ECBvartext.req | 520 +++++++++++++ fips/testvectors/des/req/OFBMMT.req | 109 +++ fips/testvectors/des/req/OFBMonte.req | 17 + fips/testvectors/des/req/OFBinvperm.req | 648 ++++++++++++++++ fips/testvectors/des/req/OFBpermop.req | 328 ++++++++ fips/testvectors/des/req/OFBsubtab.req | 198 +++++ fips/testvectors/des/req/OFBvarkey.req | 568 ++++++++++++++ fips/testvectors/des/req/OFBvartext.req | 648 ++++++++++++++++ fips/testvectors/des/sample/CBCMMT.sam | 46 ++ fips/testvectors/des/sample/CBCMonte.sam | 58 ++ fips/testvectors/des/sample/CBCinvperm.sam | 776 +++++++++++++++++++ fips/testvectors/des/sample/CBCpermop.sam | 392 ++++++++++ fips/testvectors/des/sample/CBCsubtab.sam | 236 ++++++ fips/testvectors/des/sample/CBCvarkey.sam | 680 ++++++++++++++++ fips/testvectors/des/sample/CBCvartext.sam | 776 +++++++++++++++++++ fips/testvectors/des/sample/CFB1MMT.sam | 46 ++ fips/testvectors/des/sample/CFB1Monte.sam | 58 ++ fips/testvectors/des/sample/CFB1invperm.sam | 776 +++++++++++++++++++ fips/testvectors/des/sample/CFB1permop.sam | 392 ++++++++++ fips/testvectors/des/sample/CFB1subtab.sam | 236 ++++++ fips/testvectors/des/sample/CFB1varkey.sam | 680 ++++++++++++++++ fips/testvectors/des/sample/CFB1vartext.sam | 776 +++++++++++++++++++ fips/testvectors/des/sample/CFB64MMT.sam | 46 ++ fips/testvectors/des/sample/CFB64Monte.sam | 58 ++ fips/testvectors/des/sample/CFB64invperm.sam | 776 +++++++++++++++++++ fips/testvectors/des/sample/CFB64permop.sam | 392 ++++++++++ fips/testvectors/des/sample/CFB64subtab.sam | 236 ++++++ fips/testvectors/des/sample/CFB64varkey.sam | 680 ++++++++++++++++ fips/testvectors/des/sample/CFB64vartext.sam | 776 +++++++++++++++++++ fips/testvectors/des/sample/CFB8MMT.sam | 46 ++ fips/testvectors/des/sample/CFB8Monte.sam | 58 ++ fips/testvectors/des/sample/CFB8invperm.sam | 776 +++++++++++++++++++ fips/testvectors/des/sample/CFB8permop.sam | 392 ++++++++++ fips/testvectors/des/sample/CFB8subtab.sam | 236 ++++++ fips/testvectors/des/sample/CFB8varkey.sam | 680 ++++++++++++++++ fips/testvectors/des/sample/CFB8vartext.sam | 776 +++++++++++++++++++ fips/testvectors/des/sample/ECBMMT.sam | 40 + fips/testvectors/des/sample/ECBMonte.sam | 50 ++ fips/testvectors/des/sample/ECBinvperm.sam | 648 ++++++++++++++++ fips/testvectors/des/sample/ECBpermop.sam | 328 ++++++++ fips/testvectors/des/sample/ECBsubtab.sam | 198 +++++ fips/testvectors/des/sample/ECBvarkey.sam | 568 ++++++++++++++ fips/testvectors/des/sample/ECBvartext.sam | 648 ++++++++++++++++ fips/testvectors/des/sample/OFBMMT.sam | 46 ++ fips/testvectors/des/sample/OFBMonte.sam | 58 ++ fips/testvectors/des/sample/OFBinvperm.sam | 776 +++++++++++++++++++ fips/testvectors/des/sample/OFBpermop.sam | 392 ++++++++++ fips/testvectors/des/sample/OFBsubtab.sam | 236 ++++++ fips/testvectors/des/sample/OFBvarkey.sam | 680 ++++++++++++++++ fips/testvectors/des/sample/OFBvartext.sam | 776 +++++++++++++++++++ 104 files changed, 33569 insertions(+), 58 deletions(-) create mode 100644 fips/des/.cvsignore create mode 100644 fips/des/Makefile.ssl create mode 100644 fips/des/fingerprint.sha1 create mode 100644 fips/des/fips_des_enc.c create mode 100644 fips/des/fips_des_locl.h create mode 100644 fips/des/fips_desmovs.c create mode 100644 fips/testvectors/des/req/CBCMMT.req create mode 100644 fips/testvectors/des/req/CBCMonte.req create mode 100644 fips/testvectors/des/req/CBCinvperm.req create mode 100644 fips/testvectors/des/req/CBCpermop.req create mode 100644 fips/testvectors/des/req/CBCsubtab.req create mode 100644 fips/testvectors/des/req/CBCvarkey.req create mode 100644 fips/testvectors/des/req/CBCvartext.req create mode 100644 fips/testvectors/des/req/CFB1MMT.req create mode 100644 fips/testvectors/des/req/CFB1Monte.req create mode 100644 fips/testvectors/des/req/CFB1invperm.req create mode 100644 fips/testvectors/des/req/CFB1permop.req create mode 100644 fips/testvectors/des/req/CFB1subtab.req create mode 100644 fips/testvectors/des/req/CFB1varkey.req create mode 100644 fips/testvectors/des/req/CFB1vartext.req create mode 100644 fips/testvectors/des/req/CFB64MMT.req create mode 100644 fips/testvectors/des/req/CFB64Monte.req create mode 100644 fips/testvectors/des/req/CFB64invperm.req create mode 100644 fips/testvectors/des/req/CFB64permop.req create mode 100644 fips/testvectors/des/req/CFB64subtab.req create mode 100644 fips/testvectors/des/req/CFB64varkey.req create mode 100644 fips/testvectors/des/req/CFB64vartext.req create mode 100644 fips/testvectors/des/req/CFB8MMT.req create mode 100644 fips/testvectors/des/req/CFB8Monte.req create mode 100644 fips/testvectors/des/req/CFB8invperm.req create mode 100644 fips/testvectors/des/req/CFB8permop.req create mode 100644 fips/testvectors/des/req/CFB8subtab.req create mode 100644 fips/testvectors/des/req/CFB8varkey.req create mode 100644 fips/testvectors/des/req/CFB8vartext.req create mode 100644 fips/testvectors/des/req/ECBMMT.req create mode 100644 fips/testvectors/des/req/ECBMonte.req create mode 100644 fips/testvectors/des/req/ECBinvperm.req create mode 100644 fips/testvectors/des/req/ECBpermop.req create mode 100644 fips/testvectors/des/req/ECBsubtab.req create mode 100644 fips/testvectors/des/req/ECBvarkey.req create mode 100644 fips/testvectors/des/req/ECBvartext.req create mode 100644 fips/testvectors/des/req/OFBMMT.req create mode 100644 fips/testvectors/des/req/OFBMonte.req create mode 100644 fips/testvectors/des/req/OFBinvperm.req create mode 100644 fips/testvectors/des/req/OFBpermop.req create mode 100644 fips/testvectors/des/req/OFBsubtab.req create mode 100644 fips/testvectors/des/req/OFBvarkey.req create mode 100644 fips/testvectors/des/req/OFBvartext.req create mode 100644 fips/testvectors/des/sample/CBCMMT.sam create mode 100644 fips/testvectors/des/sample/CBCMonte.sam create mode 100644 fips/testvectors/des/sample/CBCinvperm.sam create mode 100644 fips/testvectors/des/sample/CBCpermop.sam create mode 100644 fips/testvectors/des/sample/CBCsubtab.sam create mode 100644 fips/testvectors/des/sample/CBCvarkey.sam create mode 100644 fips/testvectors/des/sample/CBCvartext.sam create mode 100644 fips/testvectors/des/sample/CFB1MMT.sam create mode 100644 fips/testvectors/des/sample/CFB1Monte.sam create mode 100644 fips/testvectors/des/sample/CFB1invperm.sam create mode 100644 fips/testvectors/des/sample/CFB1permop.sam create mode 100644 fips/testvectors/des/sample/CFB1subtab.sam create mode 100644 fips/testvectors/des/sample/CFB1varkey.sam create mode 100644 fips/testvectors/des/sample/CFB1vartext.sam create mode 100644 fips/testvectors/des/sample/CFB64MMT.sam create mode 100644 fips/testvectors/des/sample/CFB64Monte.sam create mode 100644 fips/testvectors/des/sample/CFB64invperm.sam create mode 100644 fips/testvectors/des/sample/CFB64permop.sam create mode 100644 fips/testvectors/des/sample/CFB64subtab.sam create mode 100644 fips/testvectors/des/sample/CFB64varkey.sam create mode 100644 fips/testvectors/des/sample/CFB64vartext.sam create mode 100644 fips/testvectors/des/sample/CFB8MMT.sam create mode 100644 fips/testvectors/des/sample/CFB8Monte.sam create mode 100644 fips/testvectors/des/sample/CFB8invperm.sam create mode 100644 fips/testvectors/des/sample/CFB8permop.sam create mode 100644 fips/testvectors/des/sample/CFB8subtab.sam create mode 100644 fips/testvectors/des/sample/CFB8varkey.sam create mode 100644 fips/testvectors/des/sample/CFB8vartext.sam create mode 100644 fips/testvectors/des/sample/ECBMMT.sam create mode 100644 fips/testvectors/des/sample/ECBMonte.sam create mode 100644 fips/testvectors/des/sample/ECBinvperm.sam create mode 100644 fips/testvectors/des/sample/ECBpermop.sam create mode 100644 fips/testvectors/des/sample/ECBsubtab.sam create mode 100644 fips/testvectors/des/sample/ECBvarkey.sam create mode 100644 fips/testvectors/des/sample/ECBvartext.sam create mode 100644 fips/testvectors/des/sample/OFBMMT.sam create mode 100644 fips/testvectors/des/sample/OFBMonte.sam create mode 100644 fips/testvectors/des/sample/OFBinvperm.sam create mode 100644 fips/testvectors/des/sample/OFBpermop.sam create mode 100644 fips/testvectors/des/sample/OFBsubtab.sam create mode 100644 fips/testvectors/des/sample/OFBvarkey.sam create mode 100644 fips/testvectors/des/sample/OFBvartext.sam diff --git a/Makefile.org b/Makefile.org index ec9c4eefb8..ca75880ae2 100644 --- a/Makefile.org +++ b/Makefile.org @@ -177,11 +177,11 @@ DIRS= crypto fips ssl $(SHLIB_MARK) apps test tools SHLIBDIRS= fips crypto ssl # dirs in crypto to build -SDIRS= \ +SDIRS= objects \ md2 md4 md5 sha mdc2 hmac ripemd \ des rc2 rc4 rc5 idea bf cast \ bn ec rsa dsa dh dso engine aes \ - buffer bio stack lhash rand err objects \ + buffer bio stack lhash rand err \ evp asn1 pem x509 x509v3 conf txt_db pkcs7 pkcs12 comp ocsp ui krb5 # tests to perform. "alltests" is a special word indicating that all tests @@ -231,7 +231,18 @@ sub_all: do \ if [ -d "$$i" ]; then \ (cd $$i && echo "making all in $$i..." && \ - $(MAKE) CC='${CC}' PLATFORM='${PLATFORM}' CFLAG='${CFLAG}' AS='${AS}' ASFLAG='${ASFLAG}' SDIRS='$(SDIRS)' INSTALLTOP='${INSTALLTOP}' PEX_LIBS='${PEX_LIBS}' EX_LIBS='${EX_LIBS}' BN_ASM='${BN_ASM}' DES_ENC='${DES_ENC}' BF_ENC='${BF_ENC}' CAST_ENC='${CAST_ENC}' RC4_ENC='${RC4_ENC}' RC5_ENC='${RC5_ENC}' SHA1_ASM_OBJ='${SHA1_ASM_OBJ}' MD5_ASM_OBJ='${MD5_ASM_OBJ}' RMD160_ASM_OBJ='${RMD160_ASM_OBJ}' AR='${AR}' PROCESSOR='${PROCESSOR}' PERL='${PERL}' RANLIB='${RANLIB}' KRB5_INCLUDES='${KRB5_INCLUDES}' LIBKRB5='${LIBKRB5}' EXE_EXT='${EXE_EXT}' SHARED_LIBS='${SHARED_LIBS}' SHLIB_EXT='${SHLIB_EXT}' SHLIB_TARGET='${SHLIB_TARGET}' all ) || exit 1; \ + $(MAKE) CC='${CC}' PLATFORM='${PLATFORM}' CFLAG='${CFLAG}' AS='${AS}' ASFLAG='${ASFLAG}' SDIRS='$(SDIRS)' FDIRS='$(FDIRS)' INSTALLTOP='${INSTALLTOP}' PEX_LIBS='${PEX_LIBS}' EX_LIBS='${EX_LIBS}' BN_ASM='${BN_ASM}' DES_ENC='${DES_ENC}' BF_ENC='${BF_ENC}' CAST_ENC='${CAST_ENC}' RC4_ENC='${RC4_ENC}' RC5_ENC='${RC5_ENC}' SHA1_ASM_OBJ='${SHA1_ASM_OBJ}' MD5_ASM_OBJ='${MD5_ASM_OBJ}' RMD160_ASM_OBJ='${RMD160_ASM_OBJ}' AR='${AR}' PROCESSOR='${PROCESSOR}' PERL='${PERL}' RANLIB='${RANLIB}' KRB5_INCLUDES='${KRB5_INCLUDES}' LIBKRB5='${LIBKRB5}' EXE_EXT='${EXE_EXT}' SHARED_LIBS='${SHARED_LIBS}' SHLIB_EXT='${SHLIB_EXT}' SHLIB_TARGET='${SHLIB_TARGET}' all ) || exit 1; \ + else \ + $(MAKE) $$i; \ + fi; \ + done; + +sub_target: + @for i in $(DIRS); \ + do \ + if [ -d "$$i" ]; then \ + (cd $$i && echo "making $(TARGET) in $$i..." && \ + $(MAKE) CC='${CC}' PLATFORM='${PLATFORM}' CFLAG='${CFLAG}' AS='${AS}' ASFLAG='${ASFLAG}' SDIRS='$(SDIRS)' FDIRS='$(FDIRS)' INSTALLTOP='${INSTALLTOP}' PEX_LIBS='${PEX_LIBS}' EX_LIBS='${EX_LIBS}' BN_ASM='${BN_ASM}' DES_ENC='${DES_ENC}' BF_ENC='${BF_ENC}' CAST_ENC='${CAST_ENC}' RC4_ENC='${RC4_ENC}' RC5_ENC='${RC5_ENC}' SHA1_ASM_OBJ='${SHA1_ASM_OBJ}' MD5_ASM_OBJ='${MD5_ASM_OBJ}' RMD160_ASM_OBJ='${RMD160_ASM_OBJ}' AR='${AR}' PROCESSOR='${PROCESSOR}' PERL='${PERL}' RANLIB='${RANLIB}' KRB5_INCLUDES='${KRB5_INCLUDES}' LIBKRB5='${LIBKRB5}' EXE_EXT='${EXE_EXT}' SHARED_LIBS='${SHARED_LIBS}' SHLIB_EXT='${SHLIB_EXT}' SHLIB_TARGET='${SHLIB_TARGET}' TARGET='$(TARGET)' sub_target ) || exit 1; \ else \ $(MAKE) $$i; \ fi; \ @@ -486,7 +497,7 @@ do_hpux-shared: libs="$(LIBKRB5) $$libs"; \ fi; \ ( set -x; /usr/ccs/bin/ld ${SHARED_LDFLAGS} \ - +vnocompatwarnings \ + +vnocompatwarnings \ -b -z +s \ -o lib$$i.sl.${SHLIB_MAJOR}.${SHLIB_MINOR} \ +h lib$$i.sl.${SHLIB_MAJOR}.${SHLIB_MINOR} \ @@ -509,7 +520,7 @@ do_hpux64-shared: libs="$(LIBKRB5) $$libs"; \ fi; \ ( set -x; /usr/ccs/bin/ld ${SHARED_LDFLAGS} \ - -b -z \ + -b -z \ -o lib$$i.sl.${SHLIB_MAJOR}.${SHLIB_MINOR} \ +h lib$$i.sl.${SHLIB_MAJOR}.${SHLIB_MINOR} \ +forceload lib$$i.a -ldl -lc ) || exit 1; \ diff --git a/crypto/des/cfb_enc.c b/crypto/des/cfb_enc.c index 17bf77ca9e..185a63ea04 100644 --- a/crypto/des/cfb_enc.c +++ b/crypto/des/cfb_enc.c @@ -65,7 +65,8 @@ * byte. */ void DES_cfb_encrypt(const unsigned char *in, unsigned char *out, int numbits, - long length, DES_key_schedule *schedule, DES_cblock *ivec, int enc) + long length, DES_key_schedule *schedule, DES_cblock *ivec, + int enc) { register DES_LONG d0,d1,v0,v1,n=(numbits+7)/8; register DES_LONG mask0,mask1; diff --git a/crypto/des/des_enc.c b/crypto/des/des_enc.c index 1c37ab96d3..3ad3c9bc75 100644 --- a/crypto/des/des_enc.c +++ b/crypto/des/des_enc.c @@ -58,6 +58,8 @@ #include "des_locl.h" +#ifndef FIPS + void DES_encrypt1(DES_LONG *data, DES_key_schedule *ks, int enc) { register DES_LONG l,r,t,u; @@ -287,6 +289,8 @@ void DES_decrypt3(DES_LONG *data, DES_key_schedule *ks1, data[1]=r; } +#endif /* ndef FIPS */ + #ifndef DES_DEFAULT_OPTIONS #undef CBC_ENC_C__DONT_UPDATE_IV diff --git a/crypto/evp/e_aes.c b/crypto/evp/e_aes.c index e45b6b3268..9844d7f9bc 100644 --- a/crypto/evp/e_aes.c +++ b/crypto/evp/e_aes.c @@ -84,22 +84,15 @@ IMPLEMENT_BLOCK_CIPHER(aes_256, ks, AES, EVP_AES_KEY, EVP_CIPHER_get_asn1_iv, NULL) -#define IMPLEMENT_CFBR(keysize,cbits) \ - BLOCK_CIPHER_func_cfb(aes_##keysize,AES,cbits,EVP_AES_KEY,ks) \ - BLOCK_CIPHER_def_cfb(aes_##keysize,EVP_AES_KEY, \ - NID_aes_##keysize, keysize/8, 16, cbits, \ - 0, aes_init_key, NULL, \ - EVP_CIPHER_set_asn1_iv, \ - EVP_CIPHER_get_asn1_iv, \ - NULL) +#define IMPLEMENT_AES_CFBR(ksize,cbits) IMPLEMENT_CFBR(aes,AES,EVP_AES_KEY,ks,ksize,cbits,16) -IMPLEMENT_CFBR(128,1) -IMPLEMENT_CFBR(192,1) -IMPLEMENT_CFBR(256,1) +IMPLEMENT_AES_CFBR(128,1) +IMPLEMENT_AES_CFBR(192,1) +IMPLEMENT_AES_CFBR(256,1) -IMPLEMENT_CFBR(128,8) -IMPLEMENT_CFBR(192,8) -IMPLEMENT_CFBR(256,8) +IMPLEMENT_AES_CFBR(128,8) +IMPLEMENT_AES_CFBR(192,8) +IMPLEMENT_AES_CFBR(256,8) static int aes_init_key(EVP_CIPHER_CTX *ctx, const unsigned char *key, const unsigned char *iv, int enc) diff --git a/crypto/evp/e_des.c b/crypto/evp/e_des.c index f7d4d619bc..0b05c11611 100644 --- a/crypto/evp/e_des.c +++ b/crypto/evp/e_des.c @@ -93,19 +93,55 @@ static int des_cbc_cipher(EVP_CIPHER_CTX *ctx, unsigned char *out, } static int des_cfb64_cipher(EVP_CIPHER_CTX *ctx, unsigned char *out, - const unsigned char *in, unsigned int inl) + const unsigned char *in, unsigned int inl) { DES_cfb64_encrypt(in, out, (long)inl, ctx->cipher_data, (DES_cblock *)ctx->iv, &ctx->num, ctx->encrypt); return 1; } +/* Although we have a CFB-r implementation for DES, it doesn't pack the right + way, so wrap it here */ +static int des_cfb1_cipher(EVP_CIPHER_CTX *ctx, unsigned char *out, + const unsigned char *in, unsigned int inl) + { + unsigned int n; + unsigned char c[1],d[1]; + + memset(out,0,(inl+7)/8); + for(n=0 ; n < inl ; ++n) + { + c[0]=(in[n/8]&(1 << (7-n%8))) ? 0x80 : 0; + DES_cfb_encrypt(c,d,1,1,ctx->cipher_data,(DES_cblock *)ctx->iv, + ctx->encrypt); + out[n/8]=(out[n/8]&~(1 << (7-n%8)))|((d[0]&0x80) >> (n%8)); + } + + return 1; + } + +static int des_cfb8_cipher(EVP_CIPHER_CTX *ctx, unsigned char *out, + const unsigned char *in, unsigned int inl) + { + DES_cfb_encrypt(in,out,8,inl,ctx->cipher_data,(DES_cblock *)ctx->iv, + ctx->encrypt); + + return 1; + } + BLOCK_CIPHER_defs(des, DES_key_schedule, NID_des, 8, 8, 8, 64, 0, des_init_key, NULL, EVP_CIPHER_set_asn1_iv, EVP_CIPHER_get_asn1_iv, NULL) +BLOCK_CIPHER_def_cfb(des,DES_key_schedule,NID_des,8,8,1,0,des_init_key,NULL, + EVP_CIPHER_set_asn1_iv, + EVP_CIPHER_get_asn1_iv,NULL) + +BLOCK_CIPHER_def_cfb(des,DES_key_schedule,NID_des,8,8,8,0,des_init_key,NULL, + EVP_CIPHER_set_asn1_iv, + EVP_CIPHER_get_asn1_iv,NULL) static int des_init_key(EVP_CIPHER_CTX *ctx, const unsigned char *key, const unsigned char *iv, int enc) diff --git a/crypto/evp/evp.h b/crypto/evp/evp.h index 2f482a4e30..10e68f010f 100644 --- a/crypto/evp/evp.h +++ b/crypto/evp/evp.h @@ -640,10 +640,16 @@ const EVP_CIPHER *EVP_des_ede_ecb(void); const EVP_CIPHER *EVP_des_ede3_ecb(void); const EVP_CIPHER *EVP_des_cfb64(void); # define EVP_des_cfb EVP_des_cfb64 +const EVP_CIPHER *EVP_des_cfb1(void); +const EVP_CIPHER *EVP_des_cfb8(void); const EVP_CIPHER *EVP_des_ede_cfb64(void); # define EVP_des_ede_cfb EVP_des_ede_cfb64 +const EVP_CIPHER *EVP_des_ede_cfb1(void); +const EVP_CIPHER *EVP_des_ede_cfb8(void); const EVP_CIPHER *EVP_des_ede3_cfb64(void); # define EVP_des_ede3_cfb EVP_des_ede3_cfb64 +const EVP_CIPHER *EVP_des_ede3_cfb1(void); +const EVP_CIPHER *EVP_des_ede3_cfb8(void); const EVP_CIPHER *EVP_des_ofb(void); const EVP_CIPHER *EVP_des_ede_ofb(void); const EVP_CIPHER *EVP_des_ede3_ofb(void); diff --git a/crypto/evp/evp_locl.h b/crypto/evp/evp_locl.h index e4981d401b..2204e345ad 100644 --- a/crypto/evp/evp_locl.h +++ b/crypto/evp/evp_locl.h @@ -225,3 +225,12 @@ const EVP_CIPHER *EVP_##cname##_ecb(void) { return &cname##_ecb; } get_asn1, ctrl) #define EVP_C_DATA(kstruct, ctx) ((kstruct *)(ctx)->cipher_data) + +#define IMPLEMENT_CFBR(cipher,cprefix,kstruct,ksched,keysize,cbits,iv_len) \ + BLOCK_CIPHER_func_cfb(cipher##_##keysize,cprefix,cbits,kstruct,ksched) \ + BLOCK_CIPHER_def_cfb(cipher##_##keysize,kstruct, \ + NID_##cipher##_##keysize, keysize/8, iv_len, cbits, \ + 0, cipher##_init_key, NULL, \ + EVP_CIPHER_set_asn1_iv, \ + EVP_CIPHER_get_asn1_iv, \ + NULL) diff --git a/crypto/objects/obj_dat.h b/crypto/objects/obj_dat.h index 91f59da366..d85c2fe779 100644 --- a/crypto/objects/obj_dat.h +++ b/crypto/objects/obj_dat.h @@ -62,12 +62,12 @@ * [including the GNU Public Licence.] */ -#define NUM_NID 656 -#define NUM_SN 649 -#define NUM_LN 649 -#define NUM_OBJ 623 +#define NUM_NID 661 +#define NUM_SN 654 +#define NUM_LN 654 +#define NUM_OBJ 628 -static unsigned char lvalues[4491]={ +static unsigned char lvalues[4559]={ 0x00, /* [ 0] OBJ_undef */ 0x2A,0x86,0x48,0x86,0xF7,0x0D, /* [ 1] OBJ_rsadsi */ 0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01, /* [ 7] OBJ_pkcs */ @@ -685,12 +685,17 @@ static unsigned char lvalues[4491]={ 0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x01,0x06,/* [4425] OBJ_rsaOAEPEncryptionSET */ 0x2B,0x06,0x01,0x04,0x01,0x82,0x37,0x14,0x02,0x02,/* [4434] OBJ_ms_smartcard_login */ 0x2B,0x06,0x01,0x04,0x01,0x82,0x37,0x14,0x02,0x03,/* [4444] OBJ_ms_upn */ -0x29,0x01,0x01,0x85,0x1A,0x03, /* [4454] OBJ_aes_128_cfb1 */ -0x29,0x01,0x01,0x85,0x1A,0x04, /* [4460] OBJ_aes_192_cfb1 */ -0x29,0x01,0x01,0x85,0x1A,0x05, /* [4466] OBJ_aes_256_cfb1 */ -0x29,0x01,0x01,0x85,0x1A,0x06, /* [4472] OBJ_aes_128_cfb8 */ -0x29,0x01,0x01,0x85,0x1A,0x07, /* [4478] OBJ_aes_192_cfb8 */ -0x29,0x01,0x01,0x85,0x1A,0x08, /* [4484] OBJ_aes_256_cfb8 */ +0x2B,0x06,0x01,0x04,0x01,0xEF,0x17,0x01,0x01,0x01,/* [4454] OBJ_aes_128_cfb1 */ +0x2B,0x06,0x01,0x04,0x01,0xEF,0x17,0x01,0x01,0x02,/* [4464] OBJ_aes_192_cfb1 */ +0x2B,0x06,0x01,0x04,0x01,0xEF,0x17,0x01,0x01,0x03,/* [4474] OBJ_aes_256_cfb1 */ +0x2B,0x06,0x01,0x04,0x01,0xEF,0x17,0x01,0x01,0x04,/* [4484] OBJ_aes_128_cfb8 */ +0x2B,0x06,0x01,0x04,0x01,0xEF,0x17,0x01,0x01,0x05,/* [4494] OBJ_aes_192_cfb8 */ +0x2B,0x06,0x01,0x04,0x01,0xEF,0x17,0x01,0x01,0x06,/* [4504] OBJ_aes_256_cfb8 */ +0x2B,0x06,0x01,0x04,0x01,0xEF,0x17,0x01,0x01,0x07,/* [4514] OBJ_des_cfb1 */ +0x2B,0x06,0x01,0x04,0x01,0xEF,0x17, /* [4524] OBJ_shmoo */ +0x2B,0x06,0x01,0x04,0x01,0xEF,0x17,0x01, /* [4531] OBJ_ben */ +0x2B,0x06,0x01,0x04,0x01,0xEF,0x17,0x01,0x01,/* [4539] OBJ_openssl */ +0x2B,0x06,0x01,0x04,0x01,0xEF,0x17,0x01,0x01,0x08,/* [4548] OBJ_des_cfb8 */ }; static ASN1_OBJECT nid_objs[NUM_NID]={ @@ -1734,12 +1739,17 @@ static ASN1_OBJECT nid_objs[NUM_NID]={ 10,&(lvalues[4434]),0}, {"msUPN","Microsoft Universal Principal Name",NID_ms_upn,10, &(lvalues[4444]),0}, -{"AES-128-CFB1","aes-128-cfb1",NID_aes_128_cfb1,6,&(lvalues[4454]),0}, -{"AES-192-CFB1","aes-192-cfb1",NID_aes_192_cfb1,6,&(lvalues[4460]),0}, -{"AES-256-CFB1","aes-256-cfb1",NID_aes_256_cfb1,6,&(lvalues[4466]),0}, -{"AES-128-CFB8","aes-128-cfb8",NID_aes_128_cfb8,6,&(lvalues[4472]),0}, -{"AES-192-CFB8","aes-192-cfb8",NID_aes_192_cfb8,6,&(lvalues[4478]),0}, -{"AES-256-CFB8","aes-256-cfb8",NID_aes_256_cfb8,6,&(lvalues[4484]),0}, +{"AES-128-CFB1","aes-128-cfb1",NID_aes_128_cfb1,10,&(lvalues[4454]),0}, +{"AES-192-CFB1","aes-192-cfb1",NID_aes_192_cfb1,10,&(lvalues[4464]),0}, +{"AES-256-CFB1","aes-256-cfb1",NID_aes_256_cfb1,10,&(lvalues[4474]),0}, +{"AES-128-CFB8","aes-128-cfb8",NID_aes_128_cfb8,10,&(lvalues[4484]),0}, +{"AES-192-CFB8","aes-192-cfb8",NID_aes_192_cfb8,10,&(lvalues[4494]),0}, +{"AES-256-CFB8","aes-256-cfb8",NID_aes_256_cfb8,10,&(lvalues[4504]),0}, +{"DES-CFB1","des-cfb1",NID_des_cfb1,10,&(lvalues[4514]),0}, +{"SHMOO","shmoo",NID_shmoo,7,&(lvalues[4524]),0}, +{"BEN","ben",NID_ben,8,&(lvalues[4531]),0}, +{"OpenSSL","openssl",NID_openssl,9,&(lvalues[4539]),0}, +{"DES-CFB8","des-cfb8",NID_des_cfb8,10,&(lvalues[4548]),0}, }; static ASN1_OBJECT *sn_objs[NUM_SN]={ @@ -1762,6 +1772,7 @@ static ASN1_OBJECT *sn_objs[NUM_SN]={ &(nid_objs[655]),/* "AES-256-CFB8" */ &(nid_objs[426]),/* "AES-256-ECB" */ &(nid_objs[428]),/* "AES-256-OFB" */ +&(nid_objs[658]),/* "BEN" */ &(nid_objs[91]),/* "BF-CBC" */ &(nid_objs[93]),/* "BF-CFB" */ &(nid_objs[92]),/* "BF-ECB" */ @@ -1780,6 +1791,8 @@ static ASN1_OBJECT *sn_objs[NUM_SN]={ &(nid_objs[31]),/* "DES-CBC" */ &(nid_objs[643]),/* "DES-CDMF" */ &(nid_objs[30]),/* "DES-CFB" */ +&(nid_objs[656]),/* "DES-CFB1" */ +&(nid_objs[660]),/* "DES-CFB8" */ &(nid_objs[29]),/* "DES-ECB" */ &(nid_objs[32]),/* "DES-EDE" */ &(nid_objs[43]),/* "DES-EDE-CBC" */ @@ -1821,6 +1834,7 @@ static ASN1_OBJECT *sn_objs[NUM_SN]={ &(nid_objs[180]),/* "OCSPSigning" */ &(nid_objs[379]),/* "ORG" */ &(nid_objs[18]),/* "OU" */ +&(nid_objs[659]),/* "OpenSSL" */ &(nid_objs[ 9]),/* "PBE-MD2-DES" */ &(nid_objs[168]),/* "PBE-MD2-RC2-64" */ &(nid_objs[10]),/* "PBE-MD5-DES" */ @@ -1863,6 +1877,7 @@ static ASN1_OBJECT *sn_objs[NUM_SN]={ &(nid_objs[115]),/* "RSA-SHA1-2" */ &(nid_objs[41]),/* "SHA" */ &(nid_objs[64]),/* "SHA1" */ +&(nid_objs[657]),/* "SHMOO" */ &(nid_objs[188]),/* "SMIME" */ &(nid_objs[167]),/* "SMIME-CAPS" */ &(nid_objs[100]),/* "SN" */ @@ -2523,6 +2538,7 @@ static ASN1_OBJECT *ln_objs[NUM_LN]={ &(nid_objs[484]),/* "associatedDomain" */ &(nid_objs[485]),/* "associatedName" */ &(nid_objs[501]),/* "audio" */ +&(nid_objs[658]),/* "ben" */ &(nid_objs[91]),/* "bf-cbc" */ &(nid_objs[93]),/* "bf-cfb" */ &(nid_objs[92]),/* "bf-ecb" */ @@ -2555,6 +2571,8 @@ static ASN1_OBJECT *ln_objs[NUM_LN]={ &(nid_objs[31]),/* "des-cbc" */ &(nid_objs[643]),/* "des-cdmf" */ &(nid_objs[30]),/* "des-cfb" */ +&(nid_objs[656]),/* "des-cfb1" */ +&(nid_objs[660]),/* "des-cfb8" */ &(nid_objs[29]),/* "des-ecb" */ &(nid_objs[32]),/* "des-ede" */ &(nid_objs[43]),/* "des-ede-cbc" */ @@ -2809,6 +2827,7 @@ static ASN1_OBJECT *ln_objs[NUM_LN]={ &(nid_objs[488]),/* "mobileTelephoneNumber" */ &(nid_objs[481]),/* "nSRecord" */ &(nid_objs[173]),/* "name" */ +&(nid_objs[659]),/* "openssl" */ &(nid_objs[379]),/* "org" */ &(nid_objs[17]),/* "organizationName" */ &(nid_objs[491]),/* "organizationalStatus" */ @@ -3023,6 +3042,7 @@ static ASN1_OBJECT *ln_objs[NUM_LN]={ &(nid_objs[115]),/* "sha1WithRSA" */ &(nid_objs[65]),/* "sha1WithRSAEncryption" */ &(nid_objs[42]),/* "shaWithRSAEncryption" */ +&(nid_objs[657]),/* "shmoo" */ &(nid_objs[52]),/* "signingTime" */ &(nid_objs[454]),/* "simpleSecurityObject" */ &(nid_objs[496]),/* "singleLevelQuality" */ @@ -3259,12 +3279,6 @@ static ASN1_OBJECT *obj_objs[NUM_OBJ]={ &(nid_objs[642]),/* OBJ_set_brand_Novus 2 23 42 8 6011 */ &(nid_objs[124]),/* OBJ_rle_compression 1 1 1 1 666 1 */ &(nid_objs[125]),/* OBJ_zlib_compression 1 1 1 1 666 2 */ -&(nid_objs[650]),/* OBJ_aes_128_cfb1 1 1 1 1 666 3 */ -&(nid_objs[651]),/* OBJ_aes_192_cfb1 1 1 1 1 666 4 */ -&(nid_objs[652]),/* OBJ_aes_256_cfb1 1 1 1 1 666 5 */ -&(nid_objs[653]),/* OBJ_aes_128_cfb8 1 1 1 1 666 6 */ -&(nid_objs[654]),/* OBJ_aes_192_cfb8 1 1 1 1 666 7 */ -&(nid_objs[655]),/* OBJ_aes_256_cfb8 1 1 1 1 666 8 */ &(nid_objs[ 1]),/* OBJ_rsadsi 1 2 840 113549 */ &(nid_objs[185]),/* OBJ_X9cm 1 2 840 10040 4 */ &(nid_objs[127]),/* OBJ_id_pkix 1 3 6 1 5 5 7 */ @@ -3287,6 +3301,7 @@ static ASN1_OBJECT *obj_objs[NUM_OBJ]={ &(nid_objs[407]),/* OBJ_X9_62_characteristic_two_field 1 2 840 10045 1 2 */ &(nid_objs[408]),/* OBJ_X9_62_id_ecPublicKey 1 2 840 10045 2 1 */ &(nid_objs[416]),/* OBJ_ecdsa_with_SHA1 1 2 840 10045 4 1 */ +&(nid_objs[657]),/* OBJ_shmoo 1 3 6 1 4 1 14231 */ &(nid_objs[258]),/* OBJ_id_pkix_mod 1 3 6 1 5 5 7 0 */ &(nid_objs[175]),/* OBJ_id_pe 1 3 6 1 5 5 7 1 */ &(nid_objs[259]),/* OBJ_id_qt 1 3 6 1 5 5 7 2 */ @@ -3326,6 +3341,7 @@ static ASN1_OBJECT *obj_objs[NUM_OBJ]={ &(nid_objs[413]),/* OBJ_X9_62_prime239v2 1 2 840 10045 3 1 5 */ &(nid_objs[414]),/* OBJ_X9_62_prime239v3 1 2 840 10045 3 1 6 */ &(nid_objs[415]),/* OBJ_X9_62_prime256v1 1 2 840 10045 3 1 7 */ +&(nid_objs[658]),/* OBJ_ben 1 3 6 1 4 1 14231 1 */ &(nid_objs[269]),/* OBJ_id_pkix1_explicit_88 1 3 6 1 5 5 7 0 1 */ &(nid_objs[270]),/* OBJ_id_pkix1_implicit_88 1 3 6 1 5 5 7 0 2 */ &(nid_objs[271]),/* OBJ_id_pkix1_explicit_93 1 3 6 1 5 5 7 0 3 */ @@ -3474,6 +3490,7 @@ static ASN1_OBJECT *obj_objs[NUM_OBJ]={ &(nid_objs[417]),/* OBJ_ms_csp_name 1 3 6 1 4 1 311 17 1 */ &(nid_objs[390]),/* OBJ_dcObject 1 3 6 1 4 1 1466 344 */ &(nid_objs[91]),/* OBJ_bf_cbc 1 3 6 1 4 1 3029 1 2 */ +&(nid_objs[659]),/* OBJ_openssl 1 3 6 1 4 1 14231 1 1 */ &(nid_objs[315]),/* OBJ_id_regCtrl_regToken 1 3 6 1 5 5 7 5 1 1 */ &(nid_objs[316]),/* OBJ_id_regCtrl_authenticator 1 3 6 1 5 5 7 5 1 2 */ &(nid_objs[317]),/* OBJ_id_regCtrl_pkiPublicationInfo 1 3 6 1 5 5 7 5 1 3 */ @@ -3602,6 +3619,14 @@ static ASN1_OBJECT *obj_objs[NUM_OBJ]={ &(nid_objs[138]),/* OBJ_ms_efs 1 3 6 1 4 1 311 10 3 4 */ &(nid_objs[648]),/* OBJ_ms_smartcard_login 1 3 6 1 4 1 311 20 2 2 */ &(nid_objs[649]),/* OBJ_ms_upn 1 3 6 1 4 1 311 20 2 3 */ +&(nid_objs[650]),/* OBJ_aes_128_cfb1 1 3 6 1 4 1 14231 1 1 1 */ +&(nid_objs[651]),/* OBJ_aes_192_cfb1 1 3 6 1 4 1 14231 1 1 2 */ +&(nid_objs[652]),/* OBJ_aes_256_cfb1 1 3 6 1 4 1 14231 1 1 3 */ +&(nid_objs[653]),/* OBJ_aes_128_cfb8 1 3 6 1 4 1 14231 1 1 4 */ +&(nid_objs[654]),/* OBJ_aes_192_cfb8 1 3 6 1 4 1 14231 1 1 5 */ +&(nid_objs[655]),/* OBJ_aes_256_cfb8 1 3 6 1 4 1 14231 1 1 6 */ +&(nid_objs[656]),/* OBJ_des_cfb1 1 3 6 1 4 1 14231 1 1 7 */ +&(nid_objs[660]),/* OBJ_des_cfb8 1 3 6 1 4 1 14231 1 1 8 */ &(nid_objs[196]),/* OBJ_id_smime_mod_cms 1 2 840 113549 1 9 16 0 1 */ &(nid_objs[197]),/* OBJ_id_smime_mod_ess 1 2 840 113549 1 9 16 0 2 */ &(nid_objs[198]),/* OBJ_id_smime_mod_oid 1 2 840 113549 1 9 16 0 3 */ diff --git a/crypto/objects/obj_mac.h b/crypto/objects/obj_mac.h index 0dc69f910e..84b4fb196b 100644 --- a/crypto/objects/obj_mac.h +++ b/crypto/objects/obj_mac.h @@ -2009,35 +2009,60 @@ #define NID_aes_256_cfb128 429 #define OBJ_aes_256_cfb128 OBJ_aes,44L +#define SN_shmoo "SHMOO" +#define LN_shmoo "shmoo" +#define NID_shmoo 657 +#define OBJ_shmoo 1L,3L,6L,1L,4L,1L,14231L + +#define SN_ben "BEN" +#define LN_ben "ben" +#define NID_ben 658 +#define OBJ_ben OBJ_shmoo,1L + +#define SN_openssl "OpenSSL" +#define LN_openssl "openssl" +#define NID_openssl 659 +#define OBJ_openssl OBJ_ben,1L + #define SN_aes_128_cfb1 "AES-128-CFB1" #define LN_aes_128_cfb1 "aes-128-cfb1" #define NID_aes_128_cfb1 650 -#define OBJ_aes_128_cfb1 1L,1L,1L,1L,666L,3L +#define OBJ_aes_128_cfb1 OBJ_openssl,1L #define SN_aes_192_cfb1 "AES-192-CFB1" #define LN_aes_192_cfb1 "aes-192-cfb1" #define NID_aes_192_cfb1 651 -#define OBJ_aes_192_cfb1 1L,1L,1L,1L,666L,4L +#define OBJ_aes_192_cfb1 OBJ_openssl,2L #define SN_aes_256_cfb1 "AES-256-CFB1" #define LN_aes_256_cfb1 "aes-256-cfb1" #define NID_aes_256_cfb1 652 -#define OBJ_aes_256_cfb1 1L,1L,1L,1L,666L,5L +#define OBJ_aes_256_cfb1 OBJ_openssl,3L #define SN_aes_128_cfb8 "AES-128-CFB8" #define LN_aes_128_cfb8 "aes-128-cfb8" #define NID_aes_128_cfb8 653 -#define OBJ_aes_128_cfb8 1L,1L,1L,1L,666L,6L +#define OBJ_aes_128_cfb8 OBJ_openssl,4L #define SN_aes_192_cfb8 "AES-192-CFB8" #define LN_aes_192_cfb8 "aes-192-cfb8" #define NID_aes_192_cfb8 654 -#define OBJ_aes_192_cfb8 1L,1L,1L,1L,666L,7L +#define OBJ_aes_192_cfb8 OBJ_openssl,5L #define SN_aes_256_cfb8 "AES-256-CFB8" #define LN_aes_256_cfb8 "aes-256-cfb8" #define NID_aes_256_cfb8 655 -#define OBJ_aes_256_cfb8 1L,1L,1L,1L,666L,8L +#define OBJ_aes_256_cfb8 OBJ_openssl,6L + +#define SN_des_cfb1 "DES-CFB1" +#define LN_des_cfb1 "des-cfb1" +#define NID_des_cfb1 656 +#define OBJ_des_cfb1 OBJ_openssl,7L + +#define SN_des_cfb8 "DES-CFB8" +#define LN_des_cfb8 "des-cfb8" +#define NID_des_cfb8 660 +#define OBJ_des_cfb8 OBJ_openssl,8L #define SN_hold_instruction_code "holdInstructionCode" #define LN_hold_instruction_code "Hold Instruction Code" diff --git a/crypto/objects/obj_mac.num b/crypto/objects/obj_mac.num index c675abaa60..82d261d1b3 100644 --- a/crypto/objects/obj_mac.num +++ b/crypto/objects/obj_mac.num @@ -653,3 +653,8 @@ aes_256_cfb1 652 aes_128_cfb8 653 aes_192_cfb8 654 aes_256_cfb8 655 +des_cfb1 656 +shmoo 657 +ben 658 +openssl 659 +des_cfb8 660 diff --git a/crypto/objects/objects.txt b/crypto/objects/objects.txt index 44ceace090..b981ba7b11 100644 --- a/crypto/objects/objects.txt +++ b/crypto/objects/objects.txt @@ -681,14 +681,20 @@ aes 43 : AES-256-OFB : aes-256-ofb !Cname aes-256-cfb128 aes 44 : AES-256-CFB : aes-256-cfb +1 3 6 1 4 1 14231 : SHMOO : shmoo +shmoo 1 : BEN : ben +ben 1 : OpenSSL : openssl + # There are no OIDs for these modes... -1 1 1 1 666 3 : AES-128-CFB1 : aes-128-cfb1 -1 1 1 1 666 4 : AES-192-CFB1 : aes-192-cfb1 -1 1 1 1 666 5 : AES-256-CFB1 : aes-256-cfb1 -1 1 1 1 666 6 : AES-128-CFB8 : aes-128-cfb8 -1 1 1 1 666 7 : AES-192-CFB8 : aes-192-cfb8 -1 1 1 1 666 8 : AES-256-CFB8 : aes-256-cfb8 +openssl 1 : AES-128-CFB1 : aes-128-cfb1 +openssl 2 : AES-192-CFB1 : aes-192-cfb1 +openssl 3 : AES-256-CFB1 : aes-256-cfb1 +openssl 4 : AES-128-CFB8 : aes-128-cfb8 +openssl 5 : AES-192-CFB8 : aes-192-cfb8 +openssl 6 : AES-256-CFB8 : aes-256-cfb8 +openssl 7 : DES-CFB1 : des-cfb1 +openssl 8 : DES-CFB8 : des-cfb8 # Hold instruction CRL entry extension !Cname hold-instruction-code diff --git a/fips/Makefile.ssl b/fips/Makefile.ssl index 6964b29f69..6f05f0fe5f 100644 --- a/fips/Makefile.ssl +++ b/fips/Makefile.ssl @@ -26,7 +26,7 @@ CFLAGS= $(INCLUDE) $(CFLAG) LIBS= -FDIRS=rand sha1 aes dsa +FDIRS=rand sha1 des aes dsa GENERAL=Makefile README fips-lib.com install.com @@ -57,6 +57,13 @@ subdirs: $(MAKE) CC='$(CC)' INCLUDES='${INCLUDES}' CFLAG='${CFLAG}' INSTALLTOP='${INSTALLTOP}' PEX_LIBS='${PEX_LIBS}' EX_LIBS='${EX_LIBS}' BN_ASM='${BN_ASM}' DES_ENC='${DES_ENC}' SHA1_ASM_OBJ='${SHA1_ASM_OBJ}' MD5_ASM_OBJ='${MD5_ASM_OBJ}' RMD160_ASM_OBJ='${RMD160_ASM_OBJ}' BF_ENC='${BF_ENC}' CAST_ENC='${CAST_ENC}' RC4_ENC='${RC4_ENC}' RC5_ENC='${RC5_ENC}' AR='${AR}' PROCESSOR='${PROCESSOR}' PERL='${PERL}' RANLIB='${RANLIB}' all ) || exit 1; \ done; +sub_target: + @for i in $(FDIRS) ;\ + do \ + (cd $$i && echo "making $(TARGET) in fips/$$i..." && \ + $(MAKE) CC='$(CC)' INCLUDES='${INCLUDES}' CFLAG='${CFLAG}' INSTALLTOP='${INSTALLTOP}' PEX_LIBS='${PEX_LIBS}' EX_LIBS='${EX_LIBS}' BN_ASM='${BN_ASM}' DES_ENC='${DES_ENC}' SHA1_ASM_OBJ='${SHA1_ASM_OBJ}' MD5_ASM_OBJ='${MD5_ASM_OBJ}' RMD160_ASM_OBJ='${RMD160_ASM_OBJ}' BF_ENC='${BF_ENC}' CAST_ENC='${CAST_ENC}' RC4_ENC='${RC4_ENC}' RC5_ENC='${RC5_ENC}' AR='${AR}' PROCESSOR='${PROCESSOR}' PERL='${PERL}' RANLIB='${RANLIB}' $(TARGET) ) || exit 1; \ + done; + files: $(PERL) $(TOP)/util/files.pl Makefile.ssl >> $(TOP)/MINFO @for i in $(FDIRS) ;\ diff --git a/fips/aes/Makefile.ssl b/fips/aes/Makefile.ssl index f96ee99c17..c6ad52ff77 100644 --- a/fips/aes/Makefile.ssl +++ b/fips/aes/Makefile.ssl @@ -1,5 +1,5 @@ # -# SSLeay/fips/sha1/Makefile +# SSLeay/fips/aes/Makefile # DIR= aes diff --git a/fips/des/.cvsignore b/fips/des/.cvsignore new file mode 100644 index 0000000000..8e3401a5b4 --- /dev/null +++ b/fips/des/.cvsignore @@ -0,0 +1,3 @@ +lib +fips_desmovs +testlist diff --git a/fips/des/Makefile.ssl b/fips/des/Makefile.ssl new file mode 100644 index 0000000000..5191dadcf3 --- /dev/null +++ b/fips/des/Makefile.ssl @@ -0,0 +1,96 @@ +# +# SSLeay/fips/des/Makefile +# + +DIR= des +TOP= ../.. +CC= cc +INCLUDES= +CFLAG=-g +INSTALL_PREFIX= +OPENSSLDIR= /usr/local/ssl +INSTALLTOP=/usr/local/ssl +MAKE= make -f Makefile.ssl +MAKEDEPPROG= makedepend +MAKEDEPEND= $(TOP)/util/domd $(TOP) -MD $(MAKEDEPPROG) +MAKEFILE= Makefile.ssl +AR= ar r + +CFLAGS= $(INCLUDES) $(CFLAG) -g + +GENERAL=Makefile +TEST= +APPS= + +LIB=$(TOP)/libcrypto.a +LIBSRC=fips_des_enc.c +LIBOBJ=fips_des_enc.o + +SRC= $(LIBSRC) + +EXHEADER= +HEADER= $(EXHEADER) fips_des_locl.h + +ALL= $(GENERAL) $(SRC) $(HEADER) + +top: + (cd ../..; $(MAKE) DIRS=fips FDIRS=$(DIR) sub_all) + +all: check lib + +check: + TOP=`pwd`/$(TOP) ../fips_check_sha1 fingerprint.sha1 $(SRC) $(HEADER) + +lib: $(LIBOBJ) + $(AR) $(LIB) $(LIBOBJ) + $(RANLIB) $(LIB) || echo Never mind. + @touch lib + +files: + $(PERL) $(TOP)/util/files.pl Makefile.ssl >> $(TOP)/MINFO + +links: + @$(TOP)/util/point.sh Makefile.ssl Makefile + @$(PERL) $(TOP)/util/mklink.pl ../../include/openssl $(EXHEADER) + @$(PERL) $(TOP)/util/mklink.pl ../../test $(TEST) + @$(PERL) $(TOP)/util/mklink.pl ../../apps $(APPS) + +install: + @for i in $(EXHEADER) ; \ + do \ + (cp $$i $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl/$$i; \ + chmod 644 $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl/$$i ); \ + done; + +tags: + ctags $(SRC) + +tests: + +top_fips_desmovs: + (cd ../..; $(MAKE) DIRS=fips FDIRS=$(DIR) TARGET=fips_desmovs sub_target) + + +fips_desmovs: fips_desmovs.o ../../libcrypto.a + $(CC) $(CFLAGS) -o fips_desmovs fips_desmovs.o ../../libcrypto.a + +fips_test: top_fips_desmovs + find ../testvectors/des/req -name '*.req' > testlist + -rm -rf ../testvectors/des/rsp + mkdir ../testvectors/des/rsp + ./fips_desmovs -d testlist + +lint: + lint -DLINT $(INCLUDES) $(SRC)>fluff + +depend: + $(MAKEDEPEND) -- $(CFLAG) $(INCLUDES) $(DEPFLAG) -- $(PROGS) \ + $(LIBSRC) fips_aesavs.c + +dclean: + $(PERL) -pe 'if (/^# DO NOT DELETE THIS LINE/) {print; exit(0);}' $(MAKEFILE) >Makefile.new + mv -f Makefile.new $(MAKEFILE) + +clean: + rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff +# DO NOT DELETE THIS LINE -- make depend depends on it. diff --git a/fips/des/fingerprint.sha1 b/fips/des/fingerprint.sha1 new file mode 100644 index 0000000000..3098ee217b --- /dev/null +++ b/fips/des/fingerprint.sha1 @@ -0,0 +1,2 @@ +SHA1(fips_des_enc.c)= 1661dde9506404376f9565d8c6f49c205a468995 +SHA1(fips_des_locl.h)= 5e5128f074485e72d6fdee00d22d46a694bd5abe diff --git a/fips/des/fips_des_enc.c b/fips/des/fips_des_enc.c new file mode 100644 index 0000000000..9bb3e1cb0e --- /dev/null +++ b/fips/des/fips_des_enc.c @@ -0,0 +1,288 @@ +/* crypto/des/des_enc.c */ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] + */ + +#include "fips_des_locl.h" + +void DES_encrypt1(DES_LONG *data, DES_key_schedule *ks, int enc) + { + register DES_LONG l,r,t,u; +#ifdef DES_PTR + register const unsigned char *des_SP=(const unsigned char *)DES_SPtrans; +#endif +#ifndef DES_UNROLL + register int i; +#endif + register DES_LONG *s; + + r=data[0]; + l=data[1]; + + IP(r,l); + /* Things have been modified so that the initial rotate is + * done outside the loop. This required the + * DES_SPtrans values in sp.h to be rotated 1 bit to the right. + * One perl script later and things have a 5% speed up on a sparc2. + * Thanks to Richard Outerbridge <71755.204@CompuServe.COM> + * for pointing this out. */ + /* clear the top bits on machines with 8byte longs */ + /* shift left by 2 */ + r=ROTATE(r,29)&0xffffffffL; + l=ROTATE(l,29)&0xffffffffL; + + s=ks->ks->deslong; + /* I don't know if it is worth the effort of loop unrolling the + * inner loop */ + if (enc) + { +#ifdef DES_UNROLL + D_ENCRYPT(l,r, 0); /* 1 */ + D_ENCRYPT(r,l, 2); /* 2 */ + D_ENCRYPT(l,r, 4); /* 3 */ + D_ENCRYPT(r,l, 6); /* 4 */ + D_ENCRYPT(l,r, 8); /* 5 */ + D_ENCRYPT(r,l,10); /* 6 */ + D_ENCRYPT(l,r,12); /* 7 */ + D_ENCRYPT(r,l,14); /* 8 */ + D_ENCRYPT(l,r,16); /* 9 */ + D_ENCRYPT(r,l,18); /* 10 */ + D_ENCRYPT(l,r,20); /* 11 */ + D_ENCRYPT(r,l,22); /* 12 */ + D_ENCRYPT(l,r,24); /* 13 */ + D_ENCRYPT(r,l,26); /* 14 */ + D_ENCRYPT(l,r,28); /* 15 */ + D_ENCRYPT(r,l,30); /* 16 */ +#else + for (i=0; i<32; i+=8) + { + D_ENCRYPT(l,r,i+0); /* 1 */ + D_ENCRYPT(r,l,i+2); /* 2 */ + D_ENCRYPT(l,r,i+4); /* 3 */ + D_ENCRYPT(r,l,i+6); /* 4 */ + } +#endif + } + else + { +#ifdef DES_UNROLL + D_ENCRYPT(l,r,30); /* 16 */ + D_ENCRYPT(r,l,28); /* 15 */ + D_ENCRYPT(l,r,26); /* 14 */ + D_ENCRYPT(r,l,24); /* 13 */ + D_ENCRYPT(l,r,22); /* 12 */ + D_ENCRYPT(r,l,20); /* 11 */ + D_ENCRYPT(l,r,18); /* 10 */ + D_ENCRYPT(r,l,16); /* 9 */ + D_ENCRYPT(l,r,14); /* 8 */ + D_ENCRYPT(r,l,12); /* 7 */ + D_ENCRYPT(l,r,10); /* 6 */ + D_ENCRYPT(r,l, 8); /* 5 */ + D_ENCRYPT(l,r, 6); /* 4 */ + D_ENCRYPT(r,l, 4); /* 3 */ + D_ENCRYPT(l,r, 2); /* 2 */ + D_ENCRYPT(r,l, 0); /* 1 */ +#else + for (i=30; i>0; i-=8) + { + D_ENCRYPT(l,r,i-0); /* 16 */ + D_ENCRYPT(r,l,i-2); /* 15 */ + D_ENCRYPT(l,r,i-4); /* 14 */ + D_ENCRYPT(r,l,i-6); /* 13 */ + } +#endif + } + + /* rotate and clear the top bits on machines with 8byte longs */ + l=ROTATE(l,3)&0xffffffffL; + r=ROTATE(r,3)&0xffffffffL; + + FP(r,l); + data[0]=l; + data[1]=r; + l=r=t=u=0; + } + +void DES_encrypt2(DES_LONG *data, DES_key_schedule *ks, int enc) + { + register DES_LONG l,r,t,u; +#ifdef DES_PTR + register const unsigned char *des_SP=(const unsigned char *)DES_SPtrans; +#endif +#ifndef DES_UNROLL + register int i; +#endif + register DES_LONG *s; + + r=data[0]; + l=data[1]; + + /* Things have been modified so that the initial rotate is + * done outside the loop. This required the + * DES_SPtrans values in sp.h to be rotated 1 bit to the right. + * One perl script later and things have a 5% speed up on a sparc2. + * Thanks to Richard Outerbridge <71755.204@CompuServe.COM> + * for pointing this out. */ + /* clear the top bits on machines with 8byte longs */ + r=ROTATE(r,29)&0xffffffffL; + l=ROTATE(l,29)&0xffffffffL; + + s=ks->ks->deslong; + /* I don't know if it is worth the effort of loop unrolling the + * inner loop */ + if (enc) + { +#ifdef DES_UNROLL + D_ENCRYPT(l,r, 0); /* 1 */ + D_ENCRYPT(r,l, 2); /* 2 */ + D_ENCRYPT(l,r, 4); /* 3 */ + D_ENCRYPT(r,l, 6); /* 4 */ + D_ENCRYPT(l,r, 8); /* 5 */ + D_ENCRYPT(r,l,10); /* 6 */ + D_ENCRYPT(l,r,12); /* 7 */ + D_ENCRYPT(r,l,14); /* 8 */ + D_ENCRYPT(l,r,16); /* 9 */ + D_ENCRYPT(r,l,18); /* 10 */ + D_ENCRYPT(l,r,20); /* 11 */ + D_ENCRYPT(r,l,22); /* 12 */ + D_ENCRYPT(l,r,24); /* 13 */ + D_ENCRYPT(r,l,26); /* 14 */ + D_ENCRYPT(l,r,28); /* 15 */ + D_ENCRYPT(r,l,30); /* 16 */ +#else + for (i=0; i<32; i+=8) + { + D_ENCRYPT(l,r,i+0); /* 1 */ + D_ENCRYPT(r,l,i+2); /* 2 */ + D_ENCRYPT(l,r,i+4); /* 3 */ + D_ENCRYPT(r,l,i+6); /* 4 */ + } +#endif + } + else + { +#ifdef DES_UNROLL + D_ENCRYPT(l,r,30); /* 16 */ + D_ENCRYPT(r,l,28); /* 15 */ + D_ENCRYPT(l,r,26); /* 14 */ + D_ENCRYPT(r,l,24); /* 13 */ + D_ENCRYPT(l,r,22); /* 12 */ + D_ENCRYPT(r,l,20); /* 11 */ + D_ENCRYPT(l,r,18); /* 10 */ + D_ENCRYPT(r,l,16); /* 9 */ + D_ENCRYPT(l,r,14); /* 8 */ + D_ENCRYPT(r,l,12); /* 7 */ + D_ENCRYPT(l,r,10); /* 6 */ + D_ENCRYPT(r,l, 8); /* 5 */ + D_ENCRYPT(l,r, 6); /* 4 */ + D_ENCRYPT(r,l, 4); /* 3 */ + D_ENCRYPT(l,r, 2); /* 2 */ + D_ENCRYPT(r,l, 0); /* 1 */ +#else + for (i=30; i>0; i-=8) + { + D_ENCRYPT(l,r,i-0); /* 16 */ + D_ENCRYPT(r,l,i-2); /* 15 */ + D_ENCRYPT(l,r,i-4); /* 14 */ + D_ENCRYPT(r,l,i-6); /* 13 */ + } +#endif + } + /* rotate and clear the top bits on machines with 8byte longs */ + data[0]=ROTATE(l,3)&0xffffffffL; + data[1]=ROTATE(r,3)&0xffffffffL; + l=r=t=u=0; + } + +void DES_encrypt3(DES_LONG *data, DES_key_schedule *ks1, + DES_key_schedule *ks2, DES_key_schedule *ks3) + { + register DES_LONG l,r; + + l=data[0]; + r=data[1]; + IP(l,r); + data[0]=l; + data[1]=r; + DES_encrypt2((DES_LONG *)data,ks1,DES_ENCRYPT); + DES_encrypt2((DES_LONG *)data,ks2,DES_DECRYPT); + DES_encrypt2((DES_LONG *)data,ks3,DES_ENCRYPT); + l=data[0]; + r=data[1]; + FP(r,l); + data[0]=l; + data[1]=r; + } + +void DES_decrypt3(DES_LONG *data, DES_key_schedule *ks1, + DES_key_schedule *ks2, DES_key_schedule *ks3) + { + register DES_LONG l,r; + + l=data[0]; + r=data[1]; + IP(l,r); + data[0]=l; + data[1]=r; + DES_encrypt2((DES_LONG *)data,ks3,DES_DECRYPT); + DES_encrypt2((DES_LONG *)data,ks2,DES_ENCRYPT); + DES_encrypt2((DES_LONG *)data,ks1,DES_DECRYPT); + l=data[0]; + r=data[1]; + FP(r,l); + data[0]=l; + data[1]=r; + } diff --git a/fips/des/fips_des_locl.h b/fips/des/fips_des_locl.h new file mode 100644 index 0000000000..e44e8e98b2 --- /dev/null +++ b/fips/des/fips_des_locl.h @@ -0,0 +1,428 @@ +/* crypto/des/des_locl.h */ +/* Copyright (C) 1995-1997 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] + */ + +#ifndef HEADER_DES_LOCL_H +#define HEADER_DES_LOCL_H + +#include + +#if defined(OPENSSL_SYS_WIN32) || defined(OPENSSL_SYS_WIN16) +#ifndef OPENSSL_SYS_MSDOS +#define OPENSSL_SYS_MSDOS +#endif +#endif + +#include +#include + +#ifndef OPENSSL_SYS_MSDOS +#if !defined(OPENSSL_SYS_VMS) || defined(__DECC) +#ifdef OPENSSL_UNISTD +# include OPENSSL_UNISTD +#else +# include +#endif +#include +#endif +#endif +#include + +#ifdef OPENSSL_SYS_MSDOS /* Visual C++ 2.1 (Windows NT/95) */ +#include +#include +#include +#include +#endif + +#if defined(__STDC__) || defined(OPENSSL_SYS_VMS) || defined(M_XENIX) || defined(OPENSSL_SYS_MSDOS) +#include +#endif + +#ifdef OPENSSL_BUILD_SHLIBCRYPTO +# undef OPENSSL_EXTERN +# define OPENSSL_EXTERN OPENSSL_EXPORT +#endif + +#define ITERATIONS 16 +#define HALF_ITERATIONS 8 + +/* used in des_read and des_write */ +#define MAXWRITE (1024*16) +#define BSIZE (MAXWRITE+4) + +#define c2l(c,l) (l =((DES_LONG)(*((c)++))) , \ + l|=((DES_LONG)(*((c)++)))<< 8L, \ + l|=((DES_LONG)(*((c)++)))<<16L, \ + l|=((DES_LONG)(*((c)++)))<<24L) + +/* NOTE - c is not incremented as per c2l */ +#define c2ln(c,l1,l2,n) { \ + c+=n; \ + l1=l2=0; \ + switch (n) { \ + case 8: l2 =((DES_LONG)(*(--(c))))<<24L; \ + case 7: l2|=((DES_LONG)(*(--(c))))<<16L; \ + case 6: l2|=((DES_LONG)(*(--(c))))<< 8L; \ + case 5: l2|=((DES_LONG)(*(--(c)))); \ + case 4: l1 =((DES_LONG)(*(--(c))))<<24L; \ + case 3: l1|=((DES_LONG)(*(--(c))))<<16L; \ + case 2: l1|=((DES_LONG)(*(--(c))))<< 8L; \ + case 1: l1|=((DES_LONG)(*(--(c)))); \ + } \ + } + +#define l2c(l,c) (*((c)++)=(unsigned char)(((l) )&0xff), \ + *((c)++)=(unsigned char)(((l)>> 8L)&0xff), \ + *((c)++)=(unsigned char)(((l)>>16L)&0xff), \ + *((c)++)=(unsigned char)(((l)>>24L)&0xff)) + +/* replacements for htonl and ntohl since I have no idea what to do + * when faced with machines with 8 byte longs. */ +#define HDRSIZE 4 + +#define n2l(c,l) (l =((DES_LONG)(*((c)++)))<<24L, \ + l|=((DES_LONG)(*((c)++)))<<16L, \ + l|=((DES_LONG)(*((c)++)))<< 8L, \ + l|=((DES_LONG)(*((c)++)))) + +#define l2n(l,c) (*((c)++)=(unsigned char)(((l)>>24L)&0xff), \ + *((c)++)=(unsigned char)(((l)>>16L)&0xff), \ + *((c)++)=(unsigned char)(((l)>> 8L)&0xff), \ + *((c)++)=(unsigned char)(((l) )&0xff)) + +/* NOTE - c is not incremented as per l2c */ +#define l2cn(l1,l2,c,n) { \ + c+=n; \ + switch (n) { \ + case 8: *(--(c))=(unsigned char)(((l2)>>24L)&0xff); \ + case 7: *(--(c))=(unsigned char)(((l2)>>16L)&0xff); \ + case 6: *(--(c))=(unsigned char)(((l2)>> 8L)&0xff); \ + case 5: *(--(c))=(unsigned char)(((l2) )&0xff); \ + case 4: *(--(c))=(unsigned char)(((l1)>>24L)&0xff); \ + case 3: *(--(c))=(unsigned char)(((l1)>>16L)&0xff); \ + case 2: *(--(c))=(unsigned char)(((l1)>> 8L)&0xff); \ + case 1: *(--(c))=(unsigned char)(((l1) )&0xff); \ + } \ + } + +#if defined(OPENSSL_SYS_WIN32) && defined(_MSC_VER) +#define ROTATE(a,n) (_lrotr(a,n)) +#elif defined(__GNUC__) && __GNUC__>=2 && !defined(__STRICT_ANSI__) && !defined(OPENSSL_NO_ASM) && !defined(OPENSSL_NO_INLINE_ASM) && !defined(PEDANTIC) +# if defined(__i386) || defined(__i386__) || defined(__x86_64) || defined(__x86_64__) +# define ROTATE(a,n) ({ register unsigned int ret; \ + asm ("rorl %1,%0" \ + : "=r"(ret) \ + : "I"(n),"0"(a) \ + : "cc"); \ + ret; \ + }) +# endif +#endif +#ifndef ROTATE +#define ROTATE(a,n) (((a)>>(n))+((a)<<(32-(n)))) +#endif + +/* Don't worry about the LOAD_DATA() stuff, that is used by + * fcrypt() to add it's little bit to the front */ + +#ifdef DES_FCRYPT + +#define LOAD_DATA_tmp(R,S,u,t,E0,E1) \ + { DES_LONG tmp; LOAD_DATA(R,S,u,t,E0,E1,tmp); } + +#define LOAD_DATA(R,S,u,t,E0,E1,tmp) \ + t=R^(R>>16L); \ + u=t&E0; t&=E1; \ + tmp=(u<<16); u^=R^s[S ]; u^=tmp; \ + tmp=(t<<16); t^=R^s[S+1]; t^=tmp +#else +#define LOAD_DATA_tmp(a,b,c,d,e,f) LOAD_DATA(a,b,c,d,e,f,g) +#define LOAD_DATA(R,S,u,t,E0,E1,tmp) \ + u=R^s[S ]; \ + t=R^s[S+1] +#endif + +/* The changes to this macro may help or hinder, depending on the + * compiler and the architecture. gcc2 always seems to do well :-). + * Inspired by Dana How + * DO NOT use the alternative version on machines with 8 byte longs. + * It does not seem to work on the Alpha, even when DES_LONG is 4 + * bytes, probably an issue of accessing non-word aligned objects :-( */ +#ifdef DES_PTR + +/* It recently occurred to me that 0^0^0^0^0^0^0 == 0, so there + * is no reason to not xor all the sub items together. This potentially + * saves a register since things can be xored directly into L */ + +#if defined(DES_RISC1) || defined(DES_RISC2) +#ifdef DES_RISC1 +#define D_ENCRYPT(LL,R,S) { \ + unsigned int u1,u2,u3; \ + LOAD_DATA(R,S,u,t,E0,E1,u1); \ + u2=(int)u>>8L; \ + u1=(int)u&0xfc; \ + u2&=0xfc; \ + t=ROTATE(t,4); \ + u>>=16L; \ + LL^= *(const DES_LONG *)(des_SP +u1); \ + LL^= *(const DES_LONG *)(des_SP+0x200+u2); \ + u3=(int)(u>>8L); \ + u1=(int)u&0xfc; \ + u3&=0xfc; \ + LL^= *(const DES_LONG *)(des_SP+0x400+u1); \ + LL^= *(const DES_LONG *)(des_SP+0x600+u3); \ + u2=(int)t>>8L; \ + u1=(int)t&0xfc; \ + u2&=0xfc; \ + t>>=16L; \ + LL^= *(const DES_LONG *)(des_SP+0x100+u1); \ + LL^= *(const DES_LONG *)(des_SP+0x300+u2); \ + u3=(int)t>>8L; \ + u1=(int)t&0xfc; \ + u3&=0xfc; \ + LL^= *(const DES_LONG *)(des_SP+0x500+u1); \ + LL^= *(const DES_LONG *)(des_SP+0x700+u3); } +#endif +#ifdef DES_RISC2 +#define D_ENCRYPT(LL,R,S) { \ + unsigned int u1,u2,s1,s2; \ + LOAD_DATA(R,S,u,t,E0,E1,u1); \ + u2=(int)u>>8L; \ + u1=(int)u&0xfc; \ + u2&=0xfc; \ + t=ROTATE(t,4); \ + LL^= *(const DES_LONG *)(des_SP +u1); \ + LL^= *(const DES_LONG *)(des_SP+0x200+u2); \ + s1=(int)(u>>16L); \ + s2=(int)(u>>24L); \ + s1&=0xfc; \ + s2&=0xfc; \ + LL^= *(const DES_LONG *)(des_SP+0x400+s1); \ + LL^= *(const DES_LONG *)(des_SP+0x600+s2); \ + u2=(int)t>>8L; \ + u1=(int)t&0xfc; \ + u2&=0xfc; \ + LL^= *(const DES_LONG *)(des_SP+0x100+u1); \ + LL^= *(const DES_LONG *)(des_SP+0x300+u2); \ + s1=(int)(t>>16L); \ + s2=(int)(t>>24L); \ + s1&=0xfc; \ + s2&=0xfc; \ + LL^= *(const DES_LONG *)(des_SP+0x500+s1); \ + LL^= *(const DES_LONG *)(des_SP+0x700+s2); } +#endif +#else +#define D_ENCRYPT(LL,R,S) { \ + LOAD_DATA_tmp(R,S,u,t,E0,E1); \ + t=ROTATE(t,4); \ + LL^= \ + *(const DES_LONG *)(des_SP +((u )&0xfc))^ \ + *(const DES_LONG *)(des_SP+0x200+((u>> 8L)&0xfc))^ \ + *(const DES_LONG *)(des_SP+0x400+((u>>16L)&0xfc))^ \ + *(const DES_LONG *)(des_SP+0x600+((u>>24L)&0xfc))^ \ + *(const DES_LONG *)(des_SP+0x100+((t )&0xfc))^ \ + *(const DES_LONG *)(des_SP+0x300+((t>> 8L)&0xfc))^ \ + *(const DES_LONG *)(des_SP+0x500+((t>>16L)&0xfc))^ \ + *(const DES_LONG *)(des_SP+0x700+((t>>24L)&0xfc)); } +#endif + +#else /* original version */ + +#if defined(DES_RISC1) || defined(DES_RISC2) +#ifdef DES_RISC1 +#define D_ENCRYPT(LL,R,S) {\ + unsigned int u1,u2,u3; \ + LOAD_DATA(R,S,u,t,E0,E1,u1); \ + u>>=2L; \ + t=ROTATE(t,6); \ + u2=(int)u>>8L; \ + u1=(int)u&0x3f; \ + u2&=0x3f; \ + u>>=16L; \ + LL^=DES_SPtrans[0][u1]; \ + LL^=DES_SPtrans[2][u2]; \ + u3=(int)u>>8L; \ + u1=(int)u&0x3f; \ + u3&=0x3f; \ + LL^=DES_SPtrans[4][u1]; \ + LL^=DES_SPtrans[6][u3]; \ + u2=(int)t>>8L; \ + u1=(int)t&0x3f; \ + u2&=0x3f; \ + t>>=16L; \ + LL^=DES_SPtrans[1][u1]; \ + LL^=DES_SPtrans[3][u2]; \ + u3=(int)t>>8L; \ + u1=(int)t&0x3f; \ + u3&=0x3f; \ + LL^=DES_SPtrans[5][u1]; \ + LL^=DES_SPtrans[7][u3]; } +#endif +#ifdef DES_RISC2 +#define D_ENCRYPT(LL,R,S) {\ + unsigned int u1,u2,s1,s2; \ + LOAD_DATA(R,S,u,t,E0,E1,u1); \ + u>>=2L; \ + t=ROTATE(t,6); \ + u2=(int)u>>8L; \ + u1=(int)u&0x3f; \ + u2&=0x3f; \ + LL^=DES_SPtrans[0][u1]; \ + LL^=DES_SPtrans[2][u2]; \ + s1=(int)u>>16L; \ + s2=(int)u>>24L; \ + s1&=0x3f; \ + s2&=0x3f; \ + LL^=DES_SPtrans[4][s1]; \ + LL^=DES_SPtrans[6][s2]; \ + u2=(int)t>>8L; \ + u1=(int)t&0x3f; \ + u2&=0x3f; \ + LL^=DES_SPtrans[1][u1]; \ + LL^=DES_SPtrans[3][u2]; \ + s1=(int)t>>16; \ + s2=(int)t>>24L; \ + s1&=0x3f; \ + s2&=0x3f; \ + LL^=DES_SPtrans[5][s1]; \ + LL^=DES_SPtrans[7][s2]; } +#endif + +#else + +#define D_ENCRYPT(LL,R,S) {\ + LOAD_DATA_tmp(R,S,u,t,E0,E1); \ + t=ROTATE(t,4); \ + LL^=\ + DES_SPtrans[0][(u>> 2L)&0x3f]^ \ + DES_SPtrans[2][(u>>10L)&0x3f]^ \ + DES_SPtrans[4][(u>>18L)&0x3f]^ \ + DES_SPtrans[6][(u>>26L)&0x3f]^ \ + DES_SPtrans[1][(t>> 2L)&0x3f]^ \ + DES_SPtrans[3][(t>>10L)&0x3f]^ \ + DES_SPtrans[5][(t>>18L)&0x3f]^ \ + DES_SPtrans[7][(t>>26L)&0x3f]; } +#endif +#endif + + /* IP and FP + * The problem is more of a geometric problem that random bit fiddling. + 0 1 2 3 4 5 6 7 62 54 46 38 30 22 14 6 + 8 9 10 11 12 13 14 15 60 52 44 36 28 20 12 4 + 16 17 18 19 20 21 22 23 58 50 42 34 26 18 10 2 + 24 25 26 27 28 29 30 31 to 56 48 40 32 24 16 8 0 + + 32 33 34 35 36 37 38 39 63 55 47 39 31 23 15 7 + 40 41 42 43 44 45 46 47 61 53 45 37 29 21 13 5 + 48 49 50 51 52 53 54 55 59 51 43 35 27 19 11 3 + 56 57 58 59 60 61 62 63 57 49 41 33 25 17 9 1 + + The output has been subject to swaps of the form + 0 1 -> 3 1 but the odd and even bits have been put into + 2 3 2 0 + different words. The main trick is to remember that + t=((l>>size)^r)&(mask); + r^=t; + l^=(t<>(n))^(b))&(m)),\ + (b)^=(t),\ + (a)^=((t)<<(n))) + +#define IP(l,r) \ + { \ + register DES_LONG tt; \ + PERM_OP(r,l,tt, 4,0x0f0f0f0fL); \ + PERM_OP(l,r,tt,16,0x0000ffffL); \ + PERM_OP(r,l,tt, 2,0x33333333L); \ + PERM_OP(l,r,tt, 8,0x00ff00ffL); \ + PERM_OP(r,l,tt, 1,0x55555555L); \ + } + +#define FP(l,r) \ + { \ + register DES_LONG tt; \ + PERM_OP(l,r,tt, 1,0x55555555L); \ + PERM_OP(r,l,tt, 8,0x00ff00ffL); \ + PERM_OP(l,r,tt, 2,0x33333333L); \ + PERM_OP(r,l,tt,16,0x0000ffffL); \ + PERM_OP(l,r,tt, 4,0x0f0f0f0fL); \ + } + +OPENSSL_EXTERN const DES_LONG DES_SPtrans[8][64]; + +void fcrypt_body(DES_LONG *out,DES_key_schedule *ks, + DES_LONG Eswap0, DES_LONG Eswap1); +#endif diff --git a/fips/des/fips_desmovs.c b/fips/des/fips_desmovs.c new file mode 100644 index 0000000000..77ee4f5d7d --- /dev/null +++ b/fips/des/fips_desmovs.c @@ -0,0 +1,659 @@ +/*--------------------------------------------- + NIST DES Modes of Operation Validation System + Test Program + + Based on the AES Validation Suite, which was: + Copyright + V-ONE Corporation + 20250 Century Blvd, Suite 300 + Germantown, MD 20874 + U.S.A. + ----------------------------------------------*/ + +#include +#include +#include +#include +#include + +#include +#include +#include +#include + +//#define AES_BLOCK_SIZE 16 + +#define VERBOSE 0 + +/*-----------------------------------------------*/ + +int DESTest(EVP_CIPHER_CTX *ctx, + char *amode, int akeysz, unsigned char *aKey, + unsigned char *iVec, + int dir, /* 0 = decrypt, 1 = encrypt */ + unsigned char *plaintext, unsigned char *ciphertext, int len) + { + const EVP_CIPHER *cipher = NULL; + int ret = 1; + int kt = 0; + + if (ctx) + memset(ctx, 0, sizeof(EVP_CIPHER_CTX)); + + if (strcasecmp(amode, "CBC") == 0) + kt = 1000; + else if (strcasecmp(amode, "ECB") == 0) + kt = 2000; + else if (strcasecmp(amode, "CFB64") == 0) + kt = 3000; + else if (strncasecmp(amode, "OFB", 3) == 0) + kt = 4000; + else if(!strcasecmp(amode,"CFB1")) + kt=5000; + else if(!strcasecmp(amode,"CFB8")) + kt=6000; + else + { + printf("Unknown mode: %s\n", amode); + exit(1); + } + if (ret) + { + if (akeysz != 64) + { + printf("Invalid key size: %d\n", akeysz); + ret = 0; + } + else + { + kt += akeysz; + switch (kt) + { + case 1064: + cipher=EVP_des_cbc(); + break; + case 2064: + cipher=EVP_des_ecb(); + break; + case 3064: + cipher=EVP_des_cfb64(); + break; + case 4064: + cipher=EVP_des_ofb(); + break; + case 5064: + cipher=EVP_des_cfb1(); + break; + case 6064: + cipher=EVP_des_cfb8(); + break; + default: + printf("Didn't handle mode %d\n",kt); + exit(1); + } + if (dir) + { /* encrypt */ + if(!EVP_CipherInit(ctx, cipher, aKey, iVec, AES_ENCRYPT)) + { + ERR_print_errors_fp(stderr); + exit(1); + } + + EVP_Cipher(ctx, ciphertext, (unsigned char*)plaintext, len); + } + else + { /* decrypt */ + if(!EVP_CipherInit(ctx, cipher, aKey, iVec, AES_DECRYPT)) + { + ERR_print_errors_fp(stderr); + exit(1); + } + EVP_Cipher(ctx, (unsigned char*)plaintext, ciphertext, len); + } + } + } + return ret; + } + +/*-----------------------------------------------*/ + +int hex2bin(char *in, int len, unsigned char *out) + { + int n1, n2; + unsigned char ch; + + for (n1 = 0, n2 = 0; n1 < len; ) + { /* first byte */ + if ((in[n1] >= '0') && (in[n1] <= '9')) + ch = in[n1++] - '0'; + else if ((in[n1] >= 'A') && (in[n1] <= 'F')) + ch = in[n1++] - 'A' + 10; + else if ((in[n1] >= 'a') && (in[n1] <= 'f')) + ch = in[n1++] - 'a' + 10; + else + return -1; + if(len == 1) + { + out[n2++]=ch; + break; + } + out[n2] = ch << 4; + /* second byte */ + if ((in[n1] >= '0') && (in[n1] <= '9')) + ch = in[n1++] - '0'; + else if ((in[n1] >= 'A') && (in[n1] <= 'F')) + ch = in[n1++] - 'A' + 10; + else if ((in[n1] >= 'a') && (in[n1] <= 'f')) + ch = in[n1++] - 'a' + 10; + else + return -1; + out[n2++] |= ch; + } + return n2; + } + +/*-----------------------------------------------*/ + +int bin2hex(unsigned char *in, int len, char *out) + { + int n1, n2; + unsigned char ch; + + for (n1 = 0, n2 = 0; n1 < len; ++n1) + { + /* first nibble */ + ch = in[n1] >> 4; + if (ch <= 0x09) + out[n2++] = ch + '0'; + else + out[n2++] = ch - 10 + 'a'; + /* second nibble */ + ch = in[n1] & 0x0f; + if (ch <= 0x09) + out[n2++] = ch + '0'; + else + out[n2++] = ch - 10 + 'a'; + } + return n2; + } + +/* NB: this return the number of _bits_ read */ +int bint2bin(const char *in, int len, unsigned char *out) + { + int n; + + memset(out,0,len); + for(n=0 ; n < len ; ++n) + if(in[n] == '1') + out[n/8]|=(0x80 >> (n%8)); + return len; + } + +int bin2bint(const unsigned char *in,int len,char *out) + { + int n; + + for(n=0 ; n < len ; ++n) + out[n]=(in[n/8]&(0x80 >> (n%8))) ? '1' : '0'; + return n; + } + +/*-----------------------------------------------*/ + +void PrintValue(char *tag, unsigned char *val, int len) + { +#if VERBOSE + char obuf[2048]; + int olen; + olen = bin2hex(val, len, obuf); + printf("%s = %.*s\n", tag, olen, obuf); +#endif + } + +void OutputValue(char *tag, unsigned char *val, int len, FILE *rfp,int bitmode) + { + char obuf[2048]; + int olen; + + if(bitmode) + olen=bin2bint(val,len,obuf); + else + olen=bin2hex(val,len,obuf); + + fprintf(rfp, "%s = %.*s\n", tag, olen, obuf); +#if VERBOSE + printf("%s = %.*s\n", tag, olen, obuf); +#endif + } + +/*-----------------------------------------------*/ +char *t_tag[2] = {"PLAINTEXT", "CIPHERTEXT"}; +char *t_mode[6] = {"CBC","ECB","OFB","CFB1","CFB8","CFB64"}; +enum Mode {CBC, ECB, OFB, CFB1, CFB8, CFB128}; +enum XCrypt {XDECRYPT, XENCRYPT}; + +void do_mct(char *amode, + int akeysz, unsigned char *akey,unsigned char *ivec, + int dir, unsigned char *text, int len, + FILE *rfp) + { + int i,imode; + + for (imode=0 ; imode < 6 ; ++imode) + if(!strcmp(amode,t_mode[imode])) + break; + if (imode == 6) + { + printf("Unrecognized mode: %s\n", amode); + exit(1); + } + + for(i=0 ; i < 400 ; ++i) + { + int j; + int n; + EVP_CIPHER_CTX ctx; + + fprintf(rfp,"\nCOUNT = %d\n",i); + OutputValue("KEY",akey,akeysz/8,rfp,0); + if(imode != ECB) + OutputValue("IV",ivec,8,rfp,0); + OutputValue(t_tag[dir^1],text,len,rfp,imode == CFB1); + + + for(j=0 ; j < 10000 ; ++j) + { + unsigned char in[8]; + + if(imode == ECB) + memcpy(in,text,8); + else + for(n=0 ; n < 8 ; ++n) + in[n]=text[n]^ivec[n]; + + if(j == 0) + DESTest(&ctx,amode,akeysz,akey,ivec,dir,text,text,len); + else + EVP_Cipher(&ctx,text,text,len); + if(imode != ECB) + { + unsigned char tmp[8]; + + memcpy(tmp,text,8); + memcpy(text,ivec,8); + memcpy(ivec,tmp,8); + } + } + OutputValue(t_tag[dir],ivec,len,rfp,imode == CFB1); + for(n=0 ; n < 8 ; ++n) + akey[n]^=ivec[n]; + } + } + +int proc_file(char *rqfile) + { + char afn[256], rfn[256]; + FILE *afp = NULL, *rfp = NULL; + char ibuf[2048]; + int ilen, len, ret = 0; + char algo[8] = ""; + char amode[8] = ""; + char atest[100] = ""; + int akeysz=0; + unsigned char iVec[20], aKey[40]; + int dir = -1, err = 0, step = 0; + unsigned char plaintext[2048]; + unsigned char ciphertext[2048]; + char *rp; + EVP_CIPHER_CTX ctx; + + if (!rqfile || !(*rqfile)) + { + printf("No req file\n"); + return -1; + } + strcpy(afn, rqfile); + + if ((afp = fopen(afn, "r")) == NULL) + { + printf("Cannot open file: %s, %s\n", + afn, strerror(errno)); + return -1; + } + strcpy(rfn,afn); + rp=strstr(rfn,"req/"); + assert(rp); + memcpy(rp,"rsp",3); + rp = strstr(rfn, ".req"); + memcpy(rp, ".rsp", 4); + if ((rfp = fopen(rfn, "w")) == NULL) + { + printf("Cannot open file: %s, %s\n", + rfn, strerror(errno)); + fclose(afp); + afp = NULL; + return -1; + } + while (!err && (fgets(ibuf, sizeof(ibuf), afp)) != NULL) + { + ilen = strlen(ibuf); + // printf("step=%d ibuf=%s",step,ibuf); + switch (step) + { + case 0: /* read preamble */ + if (ibuf[0] == '\n') + { /* end of preamble */ + if ((*algo == '\0') || + (*amode == '\0') || + (akeysz == 0)) + { + printf("Missing Algorithm, Mode or KeySize (%s/%s/%d)\n", + algo,amode,akeysz); + err = 1; + } + else + { + fputs(ibuf, rfp); + ++ step; + } + } + else if (ibuf[0] != '#') + { + printf("Invalid preamble item: %s\n", ibuf); + err = 1; + } + else + { /* process preamble */ + char *xp, *pp = ibuf+2; + int n; + if (akeysz) + { /* insert current time & date */ + time_t rtim = time(0); + fprintf(rfp, "# %s", ctime(&rtim)); + } + else + { + fputs(ibuf, rfp); + if(!strncmp(pp,"INVERSE ",8) || !strncmp(pp,"DES ",4) + || !strncmp(pp,"PERMUTATION ",12) + || !strncmp(pp,"SUBSTITUTION ",13) + || !strncmp(pp,"VARIABLE ",9)) + { + strcpy(algo, "DES"); + /* get test type */ + if(!strncmp(pp,"DES ",4)) + pp+=4; + xp = strchr(pp, ' '); + n = xp-pp; + strncpy(atest, pp, n); + atest[n] = '\0'; + /* get mode */ + xp = strrchr(pp, ' '); /* get mode" */ + n = strlen(xp+1)-1; + strncpy(amode, xp+1, n); + amode[n] = '\0'; + /* amode[3] = '\0'; */ + printf("Test = %s, Mode = %s\n", atest, amode); + } + else if(!strncmp(pp,"State :",7)) + akeysz=64; + } + } + break; + + case 1: /* [ENCRYPT] | [DECRYPT] */ + if(ibuf[0] == '\n') + break; + if (ibuf[0] == '[') + { + fputs(ibuf, rfp); + ++step; + if (strncasecmp(ibuf, "[ENCRYPT]", 9) == 0) + dir = 1; + else if (strncasecmp(ibuf, "[DECRYPT]", 9) == 0) + dir = 0; + else + { + printf("Invalid keyword: %s\n", ibuf); + err = 1; + } + break; + } + else if (dir == -1) + { + err = 1; + printf("Missing ENCRYPT/DECRYPT keyword\n"); + break; + } + else + step = 2; + + case 2: /* KEY = xxxx */ + fputs(ibuf, rfp); + if(*ibuf == '\n') + break; + if(!strncasecmp(ibuf,"COUNT = ",8)) + break; + + if (strncasecmp(ibuf, "KEY = ", 6) != 0) + { + printf("Missing KEY\n"); + err = 1; + } + else + { + len = hex2bin((char*)ibuf+6, strlen(ibuf+6)-1, aKey); + if (len < 0) + { + printf("Invalid KEY\n"); + err =1; + break; + } + PrintValue("KEY", aKey, len); + if (strcmp(amode, "ECB") == 0) + { + memset(iVec, 0, sizeof(iVec)); + step = (dir)? 4: 5; /* no ivec for ECB */ + } + else + ++step; + } + break; + + case 3: /* IV = xxxx */ + fputs(ibuf, rfp); + if (strncasecmp(ibuf, "IV = ", 5) != 0) + { + printf("Missing IV\n"); + err = 1; + } + else + { + len = hex2bin((char*)ibuf+5, strlen(ibuf+5)-1, iVec); + if (len < 0) + { + printf("Invalid IV\n"); + err =1; + break; + } + PrintValue("IV", iVec, len); + step = (dir)? 4: 5; + } + break; + + case 4: /* PLAINTEXT = xxxx */ + fputs(ibuf, rfp); + if (strncasecmp(ibuf, "PLAINTEXT = ", 12) != 0) + { + printf("Missing PLAINTEXT\n"); + err = 1; + } + else + { + int nn = strlen(ibuf+12); + if(!strcmp(amode,"CFB1")) + len=bint2bin(ibuf+12,nn-1,plaintext); + else + len=hex2bin(ibuf+12, nn-1,plaintext); + if (len < 0) + { + printf("Invalid PLAINTEXT: %s", ibuf+12); + err =1; + break; + } + if (len >= sizeof(plaintext)) + { + printf("Buffer overflow\n"); + } + PrintValue("PLAINTEXT", (unsigned char*)plaintext, len); + if (strcmp(atest, "Monte") == 0) /* Monte Carlo Test */ + { + do_mct(amode,akeysz,aKey,iVec,dir,plaintext,len,rfp); + } + else + { + ret = DESTest(&ctx, amode, akeysz, aKey, iVec, + dir, /* 0 = decrypt, 1 = encrypt */ + plaintext, ciphertext, len); + OutputValue("CIPHERTEXT",ciphertext,len,rfp, + !strcmp(amode,"CFB1")); + } + step = 6; + } + break; + + case 5: /* CIPHERTEXT = xxxx */ + fputs(ibuf, rfp); + if (strncasecmp(ibuf, "CIPHERTEXT = ", 13) != 0) + { + printf("Missing KEY\n"); + err = 1; + } + else + { + if(!strcmp(amode,"CFB1")) + len=bint2bin(ibuf+13,strlen(ibuf+13)-1,ciphertext); + else + len = hex2bin(ibuf+13,strlen(ibuf+13)-1,ciphertext); + if (len < 0) + { + printf("Invalid CIPHERTEXT\n"); + err =1; + break; + } + + PrintValue("CIPHERTEXT", ciphertext, len); + if (strcmp(atest, "Monte") == 0) /* Monte Carlo Test */ + { + do_mct(amode, akeysz, aKey, iVec, + dir, ciphertext, len, rfp); + } + else + { + ret = DESTest(&ctx, amode, akeysz, aKey, iVec, + dir, /* 0 = decrypt, 1 = encrypt */ + plaintext, ciphertext, len); + OutputValue("PLAINTEXT",(unsigned char *)plaintext,len,rfp, + !strcmp(amode,"CFB1")); + } + step = 6; + } + break; + + case 6: + if (ibuf[0] != '\n') + { + err = 1; + printf("Missing terminator\n"); + } + else if (strcmp(atest, "MCT") != 0) + { /* MCT already added terminating nl */ + fputs(ibuf, rfp); + } + step = 1; + break; + } + } + if (rfp) + fclose(rfp); + if (afp) + fclose(afp); + return err; + } + +/*-------------------------------------------------- + Processes either a single file or + a set of files whose names are passed in a file. + A single file is specified as: + aes_test -f xxx.req + A set of files is specified as: + aes_test -d xxxxx.xxx + The default is: -d req.txt +--------------------------------------------------*/ +int main(int argc, char **argv) + { + char *rqlist = "req.txt"; + FILE *fp = NULL; + char fn[250] = "", rfn[256] = ""; + int f_opt = 0, d_opt = 1; + +#ifdef FIPS + FIPS_mode_set(1); +#endif + ERR_load_crypto_strings(); + if (argc > 1) + { + if (strcasecmp(argv[1], "-d") == 0) + { + d_opt = 1; + } + else if (strcasecmp(argv[1], "-f") == 0) + { + f_opt = 1; + d_opt = 0; + } + else + { + printf("Invalid parameter: %s\n", argv[1]); + return 0; + } + if (argc < 3) + { + printf("Missing parameter\n"); + return 0; + } + if (d_opt) + rqlist = argv[2]; + else + strcpy(fn, argv[2]); + } + if (d_opt) + { /* list of files (directory) */ + if (!(fp = fopen(rqlist, "r"))) + { + printf("Cannot open req list file\n"); + return -1; + } + while (fgets(fn, sizeof(fn), fp)) + { + strtok(fn, "\r\n"); + strcpy(rfn, fn); + printf("Processing: %s\n", rfn); + if (proc_file(rfn)) + { + printf(">>> Processing failed for: %s <<<\n", rfn); + exit(1); + } + } + fclose(fp); + } + else /* single file */ + { + printf("Processing: %s\n", fn); + if (proc_file(fn)) + { + printf(">>> Processing failed for: %s <<<\n", fn); + } + } + return 0; + } diff --git a/fips/fips_make_sha1 b/fips/fips_make_sha1 index 48c66d36f3..d1bdd65684 100755 --- a/fips/fips_make_sha1 +++ b/fips/fips_make_sha1 @@ -19,3 +19,6 @@ $S fips_aes_core.c fips_aes_locl.h > fingerprint.sha1 cd ../dsa $S fips_dsa_ossl.c > fingerprint.sha1 + +cd ../des +$S fips_des_enc.c fips_des_locl.h > fingerprint.sha1 diff --git a/fips/testvectors/des/req/CBCMMT.req b/fips/testvectors/des/req/CBCMMT.req new file mode 100644 index 0000000000..2492538ca2 --- /dev/null +++ b/fips/testvectors/des/req/CBCMMT.req @@ -0,0 +1,109 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# DES Multi Block Message Test for CBC +# State : Encrypt and Decrypt +# Tue Jun 24 03:12:12 PM + +[ENCRYPT] + +COUNT = 0 +KEY = 0beaf8ab2f4ab529 +IV = 03c605dd0725e975 +PLAINTEXT = 20979b8b3577e339 + +COUNT = 1 +KEY = 1c232f1acd4562f1 +IV = 553e35e8fb6e859e +PLAINTEXT = cfd02cea6b26eca97a5e595ea1566d73 + +COUNT = 2 +KEY = 7f6d13c7e645a210 +IV = 8ec669cf1e5d0bf0 +PLAINTEXT = 93b764fe7b95414457331504a4e66ceb686d9c49c632f872 + +COUNT = 3 +KEY = 4a2af24c5d49e5e6 +IV = ff82e4ab83a89e3c +PLAINTEXT = 7a6f9680531937f81880221c3f919bee51048b849b3ed30c2775e00dea157ff0 + +COUNT = 4 +KEY = 678f6d832ca15d91 +IV = f70148af6f43c2c3 +PLAINTEXT = 3e8712ebe3a2e06aee2991c3dcb52b777bec8e744e53fb8c3164d22640e1a033f66758649246e19a + +COUNT = 5 +KEY = 3e890725f8165e58 +IV = f11533e98899078d +PLAINTEXT = 4935cde335f15a34941b4287bc83a6c7f71c3d20d7ff481bcab3c80beeaceea92711d3fb6ec3697a6c9ab27347f22fae + +COUNT = 6 +KEY = f219e04a6ed068dc +IV = 355e7c81c0ce3579 +PLAINTEXT = 09c3833050abd74cf11fb2583753454f7c485e5d8ea0e74d58b1af45bed86eb1c80f037d03c2ff8724df6754ef2db60257de227de76720f6 + +COUNT = 7 +KEY = c761f875dff10170 +IV = 18eb8ffaa50e0b1d +PLAINTEXT = ccf1536967e08af76434ecf924de76073345bef170e135f56e05a9351bfc0e689f587dcf87877d6a23a7826d2c9bb3eeaa5ff0e015981444bb70779e61a0b8a6 + +COUNT = 8 +KEY = f13802e9e39d6751 +IV = 83d5fd1f1784ed94 +PLAINTEXT = 9ad0d1d4e4da365a78f1b9b5f9f93f8a8762086494a92a57f3223ee432f4591d2a653e09d458d14a5f13cffd7f46bde207491ebdbaa6e9fc5ed73a9913514842e3c197b89a956f75 + +COUNT = 9 +KEY = 325bd50161857502 +IV = 8d5a47763874e9fd +PLAINTEXT = 23e6898ea71222aec676eab5d03a3d219edc6e87bec70cccd128649830fd4708d66e0ea37a61da90fb492106013e6603e2534741c224bd66ffaea07acc64699f1b7f3cfcc19526fbd46da3b4581263a9 + +[DECRYPT] + +COUNT = 0 +KEY = 377679d67f734389 +IV = abb7da496aeb27e8 +CIPHERTEXT = d6652f60526035a4 + +COUNT = 1 +KEY = 57bf7308d6ad98fb +IV = cc62620a4c47c7e1 +CIPHERTEXT = 97c29b6f8a657cae625d5cfcf572f103 + +COUNT = 2 +KEY = 1a4cdf9d3d3d589b +IV = 681a7773f6fd6429 +CIPHERTEXT = bb7c53b06399f41977a920c3367fac39c5388fa8757045a8 + +COUNT = 3 +KEY = 3d323e80fb7926d6 +IV = 118f716d873f7177 +CIPHERTEXT = e9d743cb7c7c702be5e493f43b14aaf59a0bcbc5d3a471c062bd144ca199fc61 + +COUNT = 4 +KEY = 924c37dfab239d40 +IV = 8ba9c5feda1c80cb +CIPHERTEXT = 115786a536e5204834790309f8533b4ea22c6db89eca1b5610d3241876df8a8689d078b16366846a + +COUNT = 5 +KEY = 017a0b0ed051e68f +IV = a10146ba42f337d0 +CIPHERTEXT = c59a1c49994facceac736668bfd6ae81e647e38432aa2c928c4b7577e472b4dc8c3871bdde98851e25c922fabbcb137d + +COUNT = 6 +KEY = fdfdc702b6c8ae9b +IV = 05acc5c1a84c83e6 +CIPHERTEXT = ab5739136f51bc78b65562b3c820438629b1b40962fd23fc04e5435beb656a33c00e37b5c1b67788c56e49647ab481ddf2ea4b7c5e071114 + +COUNT = 7 +KEY = ae7f64e34a205e9b +IV = 976c8ff738376aed +CIPHERTEXT = fef2f92cf0fd7bffa87b470596f557a39995b8fa5d2d860ee77a18286eab78796d1d16fff669bdad49a0c5c6a5d58b8a5edc1e1430523b83d3dd7c58cfb5cc1f + +COUNT = 8 +KEY = c785c77a13a1a194 +IV = ec8d66d9fcd4763c +CIPHERTEXT = 51436ce3d66a1bae31663e3cdf925856959ee6d7d5d7920ec0a8a9642b61cf3ff438f226968e7c25fc73cd73936be852a3726c37df3fc72b3bc6a671fd00af6917ee73b4b4dc9e99 + +COUNT = 9 +KEY = 9d6bfe7fba859454 +IV = b694eb44897b59d3 +CIPHERTEXT = 3f01a99616f2b70f045a280295a684682eb8f751f03b52d6df34534f44da26c650a82bab01b0fac84a32a5786e6d3d14adb597af22c64f03ec580eaa8cf409928e05caab6c3233e2afebc05357420cba diff --git a/fips/testvectors/des/req/CBCMonte.req b/fips/testvectors/des/req/CBCMonte.req new file mode 100644 index 0000000000..5600d13a17 --- /dev/null +++ b/fips/testvectors/des/req/CBCMonte.req @@ -0,0 +1,17 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# DES Monte Carlo (Modes) Test for CBC +# State : Encrypt and Decrypt +# Tue Jun 24 03:12:12 PM + +[ENCRYPT] +KEY = 98a275e5da515da2 +IV = f58d8cada3a4248a +PLAINTEXT = 96d1169b840e8fdb + + +[DECRYPT] +KEY = fde0d679bc5d67fd +IV = 753ce88d8bfcdc54 +CIPHERTEXT = cacec93587bec613 + diff --git a/fips/testvectors/des/req/CBCinvperm.req b/fips/testvectors/des/req/CBCinvperm.req new file mode 100644 index 0000000000..7020e57cdc --- /dev/null +++ b/fips/testvectors/des/req/CBCinvperm.req @@ -0,0 +1,648 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# INVERSE PERMUTATION - KAT for CBC +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 95f8a5e5dd31d900 + +COUNT = 1 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = dd7f121ca5015619 + +COUNT = 2 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 2e8653104f3834ea + +COUNT = 3 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 4bd388ff6cd81d4f + +COUNT = 4 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 20b9e767b2fb1456 + +COUNT = 5 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 55579380d77138ef + +COUNT = 6 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 6cc5defaaf04512f + +COUNT = 7 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0d9f279ba5d87260 + +COUNT = 8 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = d9031b0271bd5a0a + +COUNT = 9 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 424250b37c3dd951 + +COUNT = 10 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = b8061b7ecd9a21e5 + +COUNT = 11 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = f15d0f286b65bd28 + +COUNT = 12 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = add0cc8d6e5deba1 + +COUNT = 13 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = e6d5f82752ad63d1 + +COUNT = 14 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = ecbfe3bd3f591a5e + +COUNT = 15 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = f356834379d165cd + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 2b9f982f20037fa9 + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 889de068a16f0be6 + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = e19e275d846a1298 + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 329a8ed523d71aec + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = e7fce22557d23c97 + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 12a9f5817ff2d65d + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = a484c3ad38dc9c19 + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = fbe00a8a1ef8ad72 + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 750d079407521363 + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 64feed9c724c2faf + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = f02b263b328e2b60 + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 9d64555a9a10b852 + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = d106ff0bed5255d7 + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = e1652c6b138c64a5 + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = e428581186ec8f46 + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = aeb5f5ede22d1a36 + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = e943d7568aec0c5c + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = df98c8276f54b04b + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = b160e4680f6c696f + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = fa0752b07d9c4ab8 + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = ca3a2b036dbc8502 + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 5e0905517bb59bcf + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 814eeb3b91d90726 + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 4d49db1532919c9f + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 25eb5fc3f8cf0621 + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = ab6a20c0620d1c6f + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 79e90dbc98f92cca + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 866ecedd8072bb0e + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 8b54536f2f3e64a8 + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = ea51d3975595b86b + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = caffc6ac4542de31 + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 8dd45a2ddf90796c + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 1029d55e880ec2d0 + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 5d86cb23639dbea9 + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 1d1ca853ae7c0c5f + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = ce332329248f3228 + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 8405d1abe24fb942 + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = e643d78090ca4207 + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 48221b9937748a23 + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = dd7c0bbd61fafd54 + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 2fbc291a570db5c4 + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = e07c30d7e4e26e12 + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0953e2258e8e90a1 + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 5b711bc4ceebf2ee + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = cc083f1e6d9e85f6 + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = d2fd8867d50d2dfe + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 06e7ea22ce92708f + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 166b40b44aba4bd6 + + +[DECRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 8000000000000000 + +COUNT = 1 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 4000000000000000 + +COUNT = 2 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 2000000000000000 + +COUNT = 3 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 1000000000000000 + +COUNT = 4 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0800000000000000 + +COUNT = 5 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0400000000000000 + +COUNT = 6 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0200000000000000 + +COUNT = 7 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0100000000000000 + +COUNT = 8 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0080000000000000 + +COUNT = 9 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0040000000000000 + +COUNT = 10 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0020000000000000 + +COUNT = 11 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0010000000000000 + +COUNT = 12 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0008000000000000 + +COUNT = 13 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0004000000000000 + +COUNT = 14 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0002000000000000 + +COUNT = 15 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0001000000000000 + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000800000000000 + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000400000000000 + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000200000000000 + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000100000000000 + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000080000000000 + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000040000000000 + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000020000000000 + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000010000000000 + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000008000000000 + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000004000000000 + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000002000000000 + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000001000000000 + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000800000000 + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000400000000 + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000200000000 + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000100000000 + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000080000000 + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000040000000 + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000020000000 + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000010000000 + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000008000000 + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000004000000 + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000002000000 + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000001000000 + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000800000 + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000400000 + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000200000 + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000100000 + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000080000 + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000040000 + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000020000 + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000010000 + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000008000 + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000004000 + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000002000 + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000001000 + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000800 + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000400 + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000200 + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000100 + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000080 + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000040 + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000020 + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000010 + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000008 + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000004 + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000002 + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000001 diff --git a/fips/testvectors/des/req/CBCpermop.req b/fips/testvectors/des/req/CBCpermop.req new file mode 100644 index 0000000000..7bef2f941f --- /dev/null +++ b/fips/testvectors/des/req/CBCpermop.req @@ -0,0 +1,328 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# PERMUTATION OPERATION - KAT for CBC +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 1046913489980131 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 1 +KEY = 1007103489988020 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 2 +KEY = 10071034c8980120 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 3 +KEY = 1046103489988020 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 4 +KEY = 1086911519190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 5 +KEY = 1086911519580101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 6 +KEY = 5107b01519580101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 7 +KEY = 1007b01519190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 8 +KEY = 3107915498080101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 9 +KEY = 3107919498080101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 10 +KEY = 10079115b9080140 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 11 +KEY = 3107911598080140 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 12 +KEY = 1007d01589980101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 13 +KEY = 9107911589980101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 14 +KEY = 9107d01589190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 15 +KEY = 1007d01598980120 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 16 +KEY = 1007940498190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 17 +KEY = 0107910491190401 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 18 +KEY = 0107910491190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 19 +KEY = 0107940491190401 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 20 +KEY = 19079210981a0101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 21 +KEY = 1007911998190801 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 22 +KEY = 10079119981a0801 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 23 +KEY = 1007921098190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 24 +KEY = 100791159819010b +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 25 +KEY = 1004801598190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 26 +KEY = 1004801598190102 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 27 +KEY = 1004801598190108 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 28 +KEY = 1002911598100104 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 29 +KEY = 1002911598190104 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 30 +KEY = 1002911598100201 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 31 +KEY = 1002911698100101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + + +[DECRYPT] +COUNT = 0 +KEY = 1046913489980131 +IV = 0000000000000000 +CIPHERTEXT = 88d55e54f54c97b4 + +COUNT = 1 +KEY = 1007103489988020 +IV = 0000000000000000 +CIPHERTEXT = 0c0cc00c83ea48fd + +COUNT = 2 +KEY = 10071034c8980120 +IV = 0000000000000000 +CIPHERTEXT = 83bc8ef3a6570183 + +COUNT = 3 +KEY = 1046103489988020 +IV = 0000000000000000 +CIPHERTEXT = df725dcad94ea2e9 + +COUNT = 4 +KEY = 1086911519190101 +IV = 0000000000000000 +CIPHERTEXT = e652b53b550be8b0 + +COUNT = 5 +KEY = 1086911519580101 +IV = 0000000000000000 +CIPHERTEXT = af527120c485cbb0 + +COUNT = 6 +KEY = 5107b01519580101 +IV = 0000000000000000 +CIPHERTEXT = 0f04ce393db926d5 + +COUNT = 7 +KEY = 1007b01519190101 +IV = 0000000000000000 +CIPHERTEXT = c9f00ffc74079067 + +COUNT = 8 +KEY = 3107915498080101 +IV = 0000000000000000 +CIPHERTEXT = 7cfd82a593252b4e + +COUNT = 9 +KEY = 3107919498080101 +IV = 0000000000000000 +CIPHERTEXT = cb49a2f9e91363e3 + +COUNT = 10 +KEY = 10079115b9080140 +IV = 0000000000000000 +CIPHERTEXT = 00b588be70d23f56 + +COUNT = 11 +KEY = 3107911598080140 +IV = 0000000000000000 +CIPHERTEXT = 406a9a6ab43399ae + +COUNT = 12 +KEY = 1007d01589980101 +IV = 0000000000000000 +CIPHERTEXT = 6cb773611dca9ada + +COUNT = 13 +KEY = 9107911589980101 +IV = 0000000000000000 +CIPHERTEXT = 67fd21c17dbb5d70 + +COUNT = 14 +KEY = 9107d01589190101 +IV = 0000000000000000 +CIPHERTEXT = 9592cb4110430787 + +COUNT = 15 +KEY = 1007d01598980120 +IV = 0000000000000000 +CIPHERTEXT = a6b7ff68a318ddd3 + +COUNT = 16 +KEY = 1007940498190101 +IV = 0000000000000000 +CIPHERTEXT = 4d102196c914ca16 + +COUNT = 17 +KEY = 0107910491190401 +IV = 0000000000000000 +CIPHERTEXT = 2dfa9f4573594965 + +COUNT = 18 +KEY = 0107910491190101 +IV = 0000000000000000 +CIPHERTEXT = b46604816c0e0774 + +COUNT = 19 +KEY = 0107940491190401 +IV = 0000000000000000 +CIPHERTEXT = 6e7e6221a4f34e87 + +COUNT = 20 +KEY = 19079210981a0101 +IV = 0000000000000000 +CIPHERTEXT = aa85e74643233199 + +COUNT = 21 +KEY = 1007911998190801 +IV = 0000000000000000 +CIPHERTEXT = 2e5a19db4d1962d6 + +COUNT = 22 +KEY = 10079119981a0801 +IV = 0000000000000000 +CIPHERTEXT = 23a866a809d30894 + +COUNT = 23 +KEY = 1007921098190101 +IV = 0000000000000000 +CIPHERTEXT = d812d961f017d320 + +COUNT = 24 +KEY = 100791159819010b +IV = 0000000000000000 +CIPHERTEXT = 055605816e58608f + +COUNT = 25 +KEY = 1004801598190101 +IV = 0000000000000000 +CIPHERTEXT = abd88e8b1b7716f1 + +COUNT = 26 +KEY = 1004801598190102 +IV = 0000000000000000 +CIPHERTEXT = 537ac95be69da1e1 + +COUNT = 27 +KEY = 1004801598190108 +IV = 0000000000000000 +CIPHERTEXT = aed0f6ae3c25cdd8 + +COUNT = 28 +KEY = 1002911598100104 +IV = 0000000000000000 +CIPHERTEXT = b3e35a5ee53e7b8d + +COUNT = 29 +KEY = 1002911598190104 +IV = 0000000000000000 +CIPHERTEXT = 61c79c71921a2ef8 + +COUNT = 30 +KEY = 1002911598100201 +IV = 0000000000000000 +CIPHERTEXT = e2f5728f0995013c + +COUNT = 31 +KEY = 1002911698100101 +IV = 0000000000000000 +CIPHERTEXT = 1aeac39a61f0a464 diff --git a/fips/testvectors/des/req/CBCsubtab.req b/fips/testvectors/des/req/CBCsubtab.req new file mode 100644 index 0000000000..c297d6f702 --- /dev/null +++ b/fips/testvectors/des/req/CBCsubtab.req @@ -0,0 +1,198 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# SUBSTITUTION TABLE - KAT for CBC +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 7ca110454a1a6e57 +IV = 0000000000000000 +PLAINTEXT = 01a1d6d039776742 + +COUNT = 1 +KEY = 0131d9619dc1376e +IV = 0000000000000000 +PLAINTEXT = 5cd54ca83def57da + +COUNT = 2 +KEY = 07a1133e4a0b2686 +IV = 0000000000000000 +PLAINTEXT = 0248d43806f67172 + +COUNT = 3 +KEY = 3849674c2602319e +IV = 0000000000000000 +PLAINTEXT = 51454b582ddf440a + +COUNT = 4 +KEY = 04b915ba43feb5b6 +IV = 0000000000000000 +PLAINTEXT = 42fd443059577fa2 + +COUNT = 5 +KEY = 0113b970fd34f2ce +IV = 0000000000000000 +PLAINTEXT = 059b5e0851cf143a + +COUNT = 6 +KEY = 0170f175468fb5e6 +IV = 0000000000000000 +PLAINTEXT = 0756d8e0774761d2 + +COUNT = 7 +KEY = 43297fad38e373fe +IV = 0000000000000000 +PLAINTEXT = 762514b829bf486a + +COUNT = 8 +KEY = 07a7137045da2a16 +IV = 0000000000000000 +PLAINTEXT = 3bdd119049372802 + +COUNT = 9 +KEY = 04689104c2fd3b2f +IV = 0000000000000000 +PLAINTEXT = 26955f6835af609a + +COUNT = 10 +KEY = 37d06bb516cb7546 +IV = 0000000000000000 +PLAINTEXT = 164d5e404f275232 + +COUNT = 11 +KEY = 1f08260d1ac2465e +IV = 0000000000000000 +PLAINTEXT = 6b056e18759f5cca + +COUNT = 12 +KEY = 584023641aba6176 +IV = 0000000000000000 +PLAINTEXT = 004bd6ef09176062 + +COUNT = 13 +KEY = 025816164629b007 +IV = 0000000000000000 +PLAINTEXT = 480d39006ee762f2 + +COUNT = 14 +KEY = 49793ebc79b3258f +IV = 0000000000000000 +PLAINTEXT = 437540c8698f3cfa + +COUNT = 15 +KEY = 4fb05e1515ab73a7 +IV = 0000000000000000 +PLAINTEXT = 072d43a077075292 + +COUNT = 16 +KEY = 49e95d6d4ca229bf +IV = 0000000000000000 +PLAINTEXT = 02fe55778117f12a + +COUNT = 17 +KEY = 018310dc409b26d6 +IV = 0000000000000000 +PLAINTEXT = 1d9d5c5018f728c2 + +COUNT = 18 +KEY = 1c587f1c13924fef +IV = 0000000000000000 +PLAINTEXT = 305532286d6f295a + + +[DECRYPT] +COUNT = 0 +KEY = 7ca110454a1a6e57 +IV = 0000000000000000 +CIPHERTEXT = 690f5b0d9a26939b + +COUNT = 1 +KEY = 0131d9619dc1376e +IV = 0000000000000000 +CIPHERTEXT = 7a389d10354bd271 + +COUNT = 2 +KEY = 07a1133e4a0b2686 +IV = 0000000000000000 +CIPHERTEXT = 868ebb51cab4599a + +COUNT = 3 +KEY = 3849674c2602319e +IV = 0000000000000000 +CIPHERTEXT = 7178876e01f19b2a + +COUNT = 4 +KEY = 04b915ba43feb5b6 +IV = 0000000000000000 +CIPHERTEXT = af37fb421f8c4095 + +COUNT = 5 +KEY = 0113b970fd34f2ce +IV = 0000000000000000 +CIPHERTEXT = 86a560f10ec6d85b + +COUNT = 6 +KEY = 0170f175468fb5e6 +IV = 0000000000000000 +CIPHERTEXT = 0cd3da020021dc09 + +COUNT = 7 +KEY = 43297fad38e373fe +IV = 0000000000000000 +CIPHERTEXT = ea676b2cb7db2b7a + +COUNT = 8 +KEY = 07a7137045da2a16 +IV = 0000000000000000 +CIPHERTEXT = dfd64a815caf1a0f + +COUNT = 9 +KEY = 04689104c2fd3b2f +IV = 0000000000000000 +CIPHERTEXT = 5c513c9c4886c088 + +COUNT = 10 +KEY = 37d06bb516cb7546 +IV = 0000000000000000 +CIPHERTEXT = 0a2aeeae3ff4ab77 + +COUNT = 11 +KEY = 1f08260d1ac2465e +IV = 0000000000000000 +CIPHERTEXT = ef1bf03e5dfa575a + +COUNT = 12 +KEY = 584023641aba6176 +IV = 0000000000000000 +CIPHERTEXT = 88bf0db6d70dee56 + +COUNT = 13 +KEY = 025816164629b007 +IV = 0000000000000000 +CIPHERTEXT = a1f9915541020b56 + +COUNT = 14 +KEY = 49793ebc79b3258f +IV = 0000000000000000 +CIPHERTEXT = 6fbf1cafcffd0556 + +COUNT = 15 +KEY = 4fb05e1515ab73a7 +IV = 0000000000000000 +CIPHERTEXT = 2f22e49bab7ca1ac + +COUNT = 16 +KEY = 49e95d6d4ca229bf +IV = 0000000000000000 +CIPHERTEXT = 5a6b612cc26cce4a + +COUNT = 17 +KEY = 018310dc409b26d6 +IV = 0000000000000000 +CIPHERTEXT = 5f4c038ed12b2e41 + +COUNT = 18 +KEY = 1c587f1c13924fef +IV = 0000000000000000 +CIPHERTEXT = 63fac0d034d9f793 diff --git a/fips/testvectors/des/req/CBCvarkey.req b/fips/testvectors/des/req/CBCvarkey.req new file mode 100644 index 0000000000..64828a3ded --- /dev/null +++ b/fips/testvectors/des/req/CBCvarkey.req @@ -0,0 +1,568 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# VARIABLE KEY - KAT for CBC +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 8001010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 1 +KEY = 4001010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 2 +KEY = 2001010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 3 +KEY = 1001010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 4 +KEY = 0801010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 5 +KEY = 0401010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 6 +KEY = 0201010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 7 +KEY = 0180010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 8 +KEY = 0140010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 9 +KEY = 0120010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 10 +KEY = 0110010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 11 +KEY = 0108010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 12 +KEY = 0104010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 13 +KEY = 0102010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 14 +KEY = 0101800101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 15 +KEY = 0101400101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 16 +KEY = 0101200101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 17 +KEY = 0101100101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 18 +KEY = 0101080101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 19 +KEY = 0101040101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 20 +KEY = 0101020101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 21 +KEY = 0101018001010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 22 +KEY = 0101014001010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 23 +KEY = 0101012001010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 24 +KEY = 0101011001010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 25 +KEY = 0101010801010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 26 +KEY = 0101010401010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 27 +KEY = 0101010201010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 28 +KEY = 0101010180010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 29 +KEY = 0101010140010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 30 +KEY = 0101010120010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 31 +KEY = 0101010110010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 32 +KEY = 0101010108010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 33 +KEY = 0101010104010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 34 +KEY = 0101010102010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 35 +KEY = 0101010101800101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 36 +KEY = 0101010101400101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 37 +KEY = 0101010101200101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 38 +KEY = 0101010101100101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 39 +KEY = 0101010101080101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 40 +KEY = 0101010101040101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 41 +KEY = 0101010101020101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 42 +KEY = 0101010101018001 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 43 +KEY = 0101010101014001 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 44 +KEY = 0101010101012001 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 45 +KEY = 0101010101011001 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 46 +KEY = 0101010101010801 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 47 +KEY = 0101010101010401 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 48 +KEY = 0101010101010201 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 49 +KEY = 0101010101010180 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 50 +KEY = 0101010101010140 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 51 +KEY = 0101010101010120 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 52 +KEY = 0101010101010110 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 53 +KEY = 0101010101010108 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 54 +KEY = 0101010101010104 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 55 +KEY = 0101010101010102 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + + +[DECRYPT] +COUNT = 0 +KEY = 8001010101010101 +IV = 0000000000000000 +CIPHERTEXT = 95a8d72813daa94d + +COUNT = 1 +KEY = 4001010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0eec1487dd8c26d5 + +COUNT = 2 +KEY = 2001010101010101 +IV = 0000000000000000 +CIPHERTEXT = 7ad16ffb79c45926 + +COUNT = 3 +KEY = 1001010101010101 +IV = 0000000000000000 +CIPHERTEXT = d3746294ca6a6cf3 + +COUNT = 4 +KEY = 0801010101010101 +IV = 0000000000000000 +CIPHERTEXT = 809f5f873c1fd761 + +COUNT = 5 +KEY = 0401010101010101 +IV = 0000000000000000 +CIPHERTEXT = c02faffec989d1fc + +COUNT = 6 +KEY = 0201010101010101 +IV = 0000000000000000 +CIPHERTEXT = 4615aa1d33e72f10 + +COUNT = 7 +KEY = 0180010101010101 +IV = 0000000000000000 +CIPHERTEXT = 2055123350c00858 + +COUNT = 8 +KEY = 0140010101010101 +IV = 0000000000000000 +CIPHERTEXT = df3b99d6577397c8 + +COUNT = 9 +KEY = 0120010101010101 +IV = 0000000000000000 +CIPHERTEXT = 31fe17369b5288c9 + +COUNT = 10 +KEY = 0110010101010101 +IV = 0000000000000000 +CIPHERTEXT = dfdd3cc64dae1642 + +COUNT = 11 +KEY = 0108010101010101 +IV = 0000000000000000 +CIPHERTEXT = 178c83ce2b399d94 + +COUNT = 12 +KEY = 0104010101010101 +IV = 0000000000000000 +CIPHERTEXT = 50f636324a9b7f80 + +COUNT = 13 +KEY = 0102010101010101 +IV = 0000000000000000 +CIPHERTEXT = a8468ee3bc18f06d + +COUNT = 14 +KEY = 0101800101010101 +IV = 0000000000000000 +CIPHERTEXT = a2dc9e92fd3cde92 + +COUNT = 15 +KEY = 0101400101010101 +IV = 0000000000000000 +CIPHERTEXT = cac09f797d031287 + +COUNT = 16 +KEY = 0101200101010101 +IV = 0000000000000000 +CIPHERTEXT = 90ba680b22aeb525 + +COUNT = 17 +KEY = 0101100101010101 +IV = 0000000000000000 +CIPHERTEXT = ce7a24f350e280b6 + +COUNT = 18 +KEY = 0101080101010101 +IV = 0000000000000000 +CIPHERTEXT = 882bff0aa01a0b87 + +COUNT = 19 +KEY = 0101040101010101 +IV = 0000000000000000 +CIPHERTEXT = 25610288924511c2 + +COUNT = 20 +KEY = 0101020101010101 +IV = 0000000000000000 +CIPHERTEXT = c71516c29c75d170 + +COUNT = 21 +KEY = 0101018001010101 +IV = 0000000000000000 +CIPHERTEXT = 5199c29a52c9f059 + +COUNT = 22 +KEY = 0101014001010101 +IV = 0000000000000000 +CIPHERTEXT = c22f0a294a71f29f + +COUNT = 23 +KEY = 0101012001010101 +IV = 0000000000000000 +CIPHERTEXT = ee371483714c02ea + +COUNT = 24 +KEY = 0101011001010101 +IV = 0000000000000000 +CIPHERTEXT = a81fbd448f9e522f + +COUNT = 25 +KEY = 0101010801010101 +IV = 0000000000000000 +CIPHERTEXT = 4f644c92e192dfed + +COUNT = 26 +KEY = 0101010401010101 +IV = 0000000000000000 +CIPHERTEXT = 1afa9a66a6df92ae + +COUNT = 27 +KEY = 0101010201010101 +IV = 0000000000000000 +CIPHERTEXT = b3c1cc715cb879d8 + +COUNT = 28 +KEY = 0101010180010101 +IV = 0000000000000000 +CIPHERTEXT = 19d032e64ab0bd8b + +COUNT = 29 +KEY = 0101010140010101 +IV = 0000000000000000 +CIPHERTEXT = 3cfaa7a7dc8720dc + +COUNT = 30 +KEY = 0101010120010101 +IV = 0000000000000000 +CIPHERTEXT = b7265f7f447ac6f3 + +COUNT = 31 +KEY = 0101010110010101 +IV = 0000000000000000 +CIPHERTEXT = 9db73b3c0d163f54 + +COUNT = 32 +KEY = 0101010108010101 +IV = 0000000000000000 +CIPHERTEXT = 8181b65babf4a975 + +COUNT = 33 +KEY = 0101010104010101 +IV = 0000000000000000 +CIPHERTEXT = 93c9b64042eaa240 + +COUNT = 34 +KEY = 0101010102010101 +IV = 0000000000000000 +CIPHERTEXT = 5570530829705592 + +COUNT = 35 +KEY = 0101010101800101 +IV = 0000000000000000 +CIPHERTEXT = 8638809e878787a0 + +COUNT = 36 +KEY = 0101010101400101 +IV = 0000000000000000 +CIPHERTEXT = 41b9a79af79ac208 + +COUNT = 37 +KEY = 0101010101200101 +IV = 0000000000000000 +CIPHERTEXT = 7a9be42f2009a892 + +COUNT = 38 +KEY = 0101010101100101 +IV = 0000000000000000 +CIPHERTEXT = 29038d56ba6d2745 + +COUNT = 39 +KEY = 0101010101080101 +IV = 0000000000000000 +CIPHERTEXT = 5495c6abf1e5df51 + +COUNT = 40 +KEY = 0101010101040101 +IV = 0000000000000000 +CIPHERTEXT = ae13dbd561488933 + +COUNT = 41 +KEY = 0101010101020101 +IV = 0000000000000000 +CIPHERTEXT = 024d1ffa8904e389 + +COUNT = 42 +KEY = 0101010101018001 +IV = 0000000000000000 +CIPHERTEXT = d1399712f99bf02e + +COUNT = 43 +KEY = 0101010101014001 +IV = 0000000000000000 +CIPHERTEXT = 14c1d7c1cffec79e + +COUNT = 44 +KEY = 0101010101012001 +IV = 0000000000000000 +CIPHERTEXT = 1de5279dae3bed6f + +COUNT = 45 +KEY = 0101010101011001 +IV = 0000000000000000 +CIPHERTEXT = e941a33f85501303 + +COUNT = 46 +KEY = 0101010101010801 +IV = 0000000000000000 +CIPHERTEXT = da99dbbc9a03f379 + +COUNT = 47 +KEY = 0101010101010401 +IV = 0000000000000000 +CIPHERTEXT = b7fc92f91d8e92e9 + +COUNT = 48 +KEY = 0101010101010201 +IV = 0000000000000000 +CIPHERTEXT = ae8e5caa3ca04e85 + +COUNT = 49 +KEY = 0101010101010180 +IV = 0000000000000000 +CIPHERTEXT = 9cc62df43b6eed74 + +COUNT = 50 +KEY = 0101010101010140 +IV = 0000000000000000 +CIPHERTEXT = d863dbb5c59a91a0 + +COUNT = 51 +KEY = 0101010101010120 +IV = 0000000000000000 +CIPHERTEXT = a1ab2190545b91d7 + +COUNT = 52 +KEY = 0101010101010110 +IV = 0000000000000000 +CIPHERTEXT = 0875041e64c570f7 + +COUNT = 53 +KEY = 0101010101010108 +IV = 0000000000000000 +CIPHERTEXT = 5a594528bebef1cc + +COUNT = 54 +KEY = 0101010101010104 +IV = 0000000000000000 +CIPHERTEXT = fcdb3291de21f0c0 + +COUNT = 55 +KEY = 0101010101010102 +IV = 0000000000000000 +CIPHERTEXT = 869efd7f9f265a09 diff --git a/fips/testvectors/des/req/CBCvartext.req b/fips/testvectors/des/req/CBCvartext.req new file mode 100644 index 0000000000..50a5277158 --- /dev/null +++ b/fips/testvectors/des/req/CBCvartext.req @@ -0,0 +1,648 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# VARIABLE PLAINTEXT/CIPHERTEXT - KAT for CBC +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 8000000000000000 + +COUNT = 1 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 4000000000000000 + +COUNT = 2 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 2000000000000000 + +COUNT = 3 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 1000000000000000 + +COUNT = 4 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0800000000000000 + +COUNT = 5 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0400000000000000 + +COUNT = 6 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0200000000000000 + +COUNT = 7 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0100000000000000 + +COUNT = 8 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0080000000000000 + +COUNT = 9 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0040000000000000 + +COUNT = 10 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0020000000000000 + +COUNT = 11 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0010000000000000 + +COUNT = 12 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0008000000000000 + +COUNT = 13 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0004000000000000 + +COUNT = 14 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0002000000000000 + +COUNT = 15 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0001000000000000 + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000800000000000 + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000400000000000 + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000200000000000 + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000100000000000 + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000080000000000 + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000040000000000 + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000020000000000 + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000010000000000 + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000008000000000 + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000004000000000 + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000002000000000 + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000001000000000 + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000800000000 + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000400000000 + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000200000000 + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000100000000 + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000080000000 + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000040000000 + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000020000000 + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000010000000 + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000008000000 + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000004000000 + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000002000000 + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000001000000 + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000800000 + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000400000 + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000200000 + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000100000 + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000080000 + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000040000 + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000020000 + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000010000 + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000008000 + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000004000 + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000002000 + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000001000 + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000800 + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000400 + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000200 + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000100 + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000080 + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000040 + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000020 + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000010 + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000008 + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000004 + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000002 + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000001 + + +[DECRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 95f8a5e5dd31d900 + +COUNT = 1 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = dd7f121ca5015619 + +COUNT = 2 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 2e8653104f3834ea + +COUNT = 3 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 4bd388ff6cd81d4f + +COUNT = 4 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 20b9e767b2fb1456 + +COUNT = 5 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 55579380d77138ef + +COUNT = 6 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 6cc5defaaf04512f + +COUNT = 7 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0d9f279ba5d87260 + +COUNT = 8 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = d9031b0271bd5a0a + +COUNT = 9 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 424250b37c3dd951 + +COUNT = 10 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = b8061b7ecd9a21e5 + +COUNT = 11 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = f15d0f286b65bd28 + +COUNT = 12 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = add0cc8d6e5deba1 + +COUNT = 13 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = e6d5f82752ad63d1 + +COUNT = 14 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = ecbfe3bd3f591a5e + +COUNT = 15 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = f356834379d165cd + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 2b9f982f20037fa9 + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 889de068a16f0be6 + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = e19e275d846a1298 + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 329a8ed523d71aec + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = e7fce22557d23c97 + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 12a9f5817ff2d65d + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = a484c3ad38dc9c19 + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = fbe00a8a1ef8ad72 + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 750d079407521363 + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 64feed9c724c2faf + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = f02b263b328e2b60 + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 9d64555a9a10b852 + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = d106ff0bed5255d7 + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = e1652c6b138c64a5 + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = e428581186ec8f46 + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = aeb5f5ede22d1a36 + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = e943d7568aec0c5c + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = df98c8276f54b04b + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = b160e4680f6c696f + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = fa0752b07d9c4ab8 + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = ca3a2b036dbc8502 + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 5e0905517bb59bcf + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 814eeb3b91d90726 + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 4d49db1532919c9f + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 25eb5fc3f8cf0621 + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = ab6a20c0620d1c6f + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 79e90dbc98f92cca + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 866ecedd8072bb0e + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 8b54536f2f3e64a8 + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = ea51d3975595b86b + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = caffc6ac4542de31 + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 8dd45a2ddf90796c + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 1029d55e880ec2d0 + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 5d86cb23639dbea9 + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 1d1ca853ae7c0c5f + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = ce332329248f3228 + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 8405d1abe24fb942 + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = e643d78090ca4207 + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 48221b9937748a23 + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = dd7c0bbd61fafd54 + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 2fbc291a570db5c4 + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = e07c30d7e4e26e12 + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0953e2258e8e90a1 + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 5b711bc4ceebf2ee + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = cc083f1e6d9e85f6 + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = d2fd8867d50d2dfe + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 06e7ea22ce92708f + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 166b40b44aba4bd6 diff --git a/fips/testvectors/des/req/CFB1MMT.req b/fips/testvectors/des/req/CFB1MMT.req new file mode 100644 index 0000000000..62638fafae --- /dev/null +++ b/fips/testvectors/des/req/CFB1MMT.req @@ -0,0 +1,109 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# DES Multi Block Message Test for CFB1 +# State : Encrypt and Decrypt +# Tue Jun 24 03:12:34 PM + +[ENCRYPT] + +COUNT = 0 +KEY = f43d5ebc3e16ea0e +IV = 282d971ab9154bfc +PLAINTEXT = 0 + +COUNT = 1 +KEY = dc8f0897ef167a75 +IV = 1ee325df9c573d77 +PLAINTEXT = 00 + +COUNT = 2 +KEY = 7075571523d902c8 +IV = 9a0ca30a85714205 +PLAINTEXT = 010 + +COUNT = 3 +KEY = e3b5fd5e3d8f04c8 +IV = 6710e98ffbd26bf4 +PLAINTEXT = 1011 + +COUNT = 4 +KEY = 15cbf7f426074368 +IV = 551d5ff78973c2e3 +PLAINTEXT = 00000 + +COUNT = 5 +KEY = 57df4fdad097fd8f +IV = ae873f7efd771647 +PLAINTEXT = 010110 + +COUNT = 6 +KEY = 62cbce43d9f201f4 +IV = 53b916402f8f96fc +PLAINTEXT = 0000010 + +COUNT = 7 +KEY = b6f1926d9b0d263b +IV = fabf455f7b9fc0e1 +PLAINTEXT = 10011001 + +COUNT = 8 +KEY = 914694498923fe62 +IV = ae03d51d7b6c6a2e +PLAINTEXT = 100110000 + +COUNT = 9 +KEY = 64bc0e3eb00dd029 +IV = 995347f576c22226 +PLAINTEXT = 1100001001 + +[DECRYPT] + +COUNT = 0 +KEY = 206b37bca2fe68a8 +IV = 7a5e281a43fba6de +CIPHERTEXT = 0 + +COUNT = 1 +KEY = 2c7f2ca464a78a46 +IV = d59d5ffaf74a6212 +CIPHERTEXT = 00 + +COUNT = 2 +KEY = ab67ae5ee00b2fcd +IV = 00c74aaa81068455 +CIPHERTEXT = 110 + +COUNT = 3 +KEY = 89efaec2fbab7c8a +IV = c7b12564437e3aed +CIPHERTEXT = 1100 + +COUNT = 4 +KEY = 856e7c622c49a8df +IV = a4a354e62d912eb0 +CIPHERTEXT = 01010 + +COUNT = 5 +KEY = ea34a41f3b7f6252 +IV = 157dbe40d7ed87db +CIPHERTEXT = 011001 + +COUNT = 6 +KEY = bfb6df198a4f67e5 +IV = bc33bb8a5cd3960b +CIPHERTEXT = 0110111 + +COUNT = 7 +KEY = abc1ad0494523dbc +IV = 3d1bf092fdb9bd77 +CIPHERTEXT = 11010011 + +COUNT = 8 +KEY = d0cd467c1aea312a +IV = 9d0b5e3d0b8fa725 +CIPHERTEXT = 011101001 + +COUNT = 9 +KEY = 838aabd340fbad25 +IV = 9ca03ce425a78433 +CIPHERTEXT = 1110000101 diff --git a/fips/testvectors/des/req/CFB1Monte.req b/fips/testvectors/des/req/CFB1Monte.req new file mode 100644 index 0000000000..2d44df53cc --- /dev/null +++ b/fips/testvectors/des/req/CFB1Monte.req @@ -0,0 +1,17 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# DES Monte Carlo (Modes) Test for CFB1 +# State : Encrypt and Decrypt +# Tue Jun 24 03:12:34 PM + +[ENCRYPT] +KEY = 51f146dad579c26b +IV = 2bba4a92bc69556a +PLAINTEXT = 0 + + +[DECRYPT] +KEY = c238cda129731cf1 +IV = 3cef8cc26b4042e6 +CIPHERTEXT = 0 + diff --git a/fips/testvectors/des/req/CFB1invperm.req b/fips/testvectors/des/req/CFB1invperm.req new file mode 100644 index 0000000000..cdce9ab2e3 --- /dev/null +++ b/fips/testvectors/des/req/CFB1invperm.req @@ -0,0 +1,648 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# INVERSE PERMUTATION - KAT for CFB1 +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 8000000000000000 +PLAINTEXT = 1 + +COUNT = 1 +KEY = 0101010101010101 +IV = 4000000000000000 +PLAINTEXT = 1 + +COUNT = 2 +KEY = 0101010101010101 +IV = 2000000000000000 +PLAINTEXT = 0 + +COUNT = 3 +KEY = 0101010101010101 +IV = 1000000000000000 +PLAINTEXT = 0 + +COUNT = 4 +KEY = 0101010101010101 +IV = 0800000000000000 +PLAINTEXT = 0 + +COUNT = 5 +KEY = 0101010101010101 +IV = 0400000000000000 +PLAINTEXT = 0 + +COUNT = 6 +KEY = 0101010101010101 +IV = 0200000000000000 +PLAINTEXT = 0 + +COUNT = 7 +KEY = 0101010101010101 +IV = 0100000000000000 +PLAINTEXT = 0 + +COUNT = 8 +KEY = 0101010101010101 +IV = 0080000000000000 +PLAINTEXT = 1 + +COUNT = 9 +KEY = 0101010101010101 +IV = 0040000000000000 +PLAINTEXT = 0 + +COUNT = 10 +KEY = 0101010101010101 +IV = 0020000000000000 +PLAINTEXT = 1 + +COUNT = 11 +KEY = 0101010101010101 +IV = 0010000000000000 +PLAINTEXT = 1 + +COUNT = 12 +KEY = 0101010101010101 +IV = 0008000000000000 +PLAINTEXT = 1 + +COUNT = 13 +KEY = 0101010101010101 +IV = 0004000000000000 +PLAINTEXT = 1 + +COUNT = 14 +KEY = 0101010101010101 +IV = 0002000000000000 +PLAINTEXT = 1 + +COUNT = 15 +KEY = 0101010101010101 +IV = 0001000000000000 +PLAINTEXT = 1 + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000800000000000 +PLAINTEXT = 0 + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000400000000000 +PLAINTEXT = 1 + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000200000000000 +PLAINTEXT = 1 + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000100000000000 +PLAINTEXT = 0 + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000080000000000 +PLAINTEXT = 1 + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000040000000000 +PLAINTEXT = 0 + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000020000000000 +PLAINTEXT = 1 + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000010000000000 +PLAINTEXT = 1 + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000008000000000 +PLAINTEXT = 0 + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000004000000000 +PLAINTEXT = 0 + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000002000000000 +PLAINTEXT = 1 + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000001000000000 +PLAINTEXT = 1 + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000800000000 +PLAINTEXT = 1 + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000400000000 +PLAINTEXT = 1 + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000200000000 +PLAINTEXT = 1 + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000100000000 +PLAINTEXT = 1 + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000080000000 +PLAINTEXT = 1 + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000040000000 +PLAINTEXT = 1 + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000020000000 +PLAINTEXT = 1 + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000010000000 +PLAINTEXT = 1 + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000008000000 +PLAINTEXT = 1 + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000004000000 +PLAINTEXT = 0 + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000002000000 +PLAINTEXT = 1 + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000001000000 +PLAINTEXT = 0 + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000800000 +PLAINTEXT = 0 + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000400000 +PLAINTEXT = 1 + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000200000 +PLAINTEXT = 0 + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000100000 +PLAINTEXT = 1 + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000080000 +PLAINTEXT = 1 + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000040000 +PLAINTEXT = 1 + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000020000 +PLAINTEXT = 1 + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000010000 +PLAINTEXT = 1 + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000008000 +PLAINTEXT = 0 + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000004000 +PLAINTEXT = 0 + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000002000 +PLAINTEXT = 0 + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000001000 +PLAINTEXT = 1 + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000800 +PLAINTEXT = 1 + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000400 +PLAINTEXT = 1 + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000200 +PLAINTEXT = 0 + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000100 +PLAINTEXT = 1 + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000080 +PLAINTEXT = 0 + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000040 +PLAINTEXT = 1 + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000020 +PLAINTEXT = 0 + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000010 +PLAINTEXT = 0 + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000008 +PLAINTEXT = 1 + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000004 +PLAINTEXT = 1 + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000002 +PLAINTEXT = 0 + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000001 +PLAINTEXT = 0 + + +[DECRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 8000000000000000 +CIPHERTEXT = 1 + +COUNT = 1 +KEY = 0101010101010101 +IV = 4000000000000000 +CIPHERTEXT = 1 + +COUNT = 2 +KEY = 0101010101010101 +IV = 2000000000000000 +CIPHERTEXT = 0 + +COUNT = 3 +KEY = 0101010101010101 +IV = 1000000000000000 +CIPHERTEXT = 0 + +COUNT = 4 +KEY = 0101010101010101 +IV = 0800000000000000 +CIPHERTEXT = 0 + +COUNT = 5 +KEY = 0101010101010101 +IV = 0400000000000000 +CIPHERTEXT = 0 + +COUNT = 6 +KEY = 0101010101010101 +IV = 0200000000000000 +CIPHERTEXT = 0 + +COUNT = 7 +KEY = 0101010101010101 +IV = 0100000000000000 +CIPHERTEXT = 0 + +COUNT = 8 +KEY = 0101010101010101 +IV = 0080000000000000 +CIPHERTEXT = 1 + +COUNT = 9 +KEY = 0101010101010101 +IV = 0040000000000000 +CIPHERTEXT = 0 + +COUNT = 10 +KEY = 0101010101010101 +IV = 0020000000000000 +CIPHERTEXT = 1 + +COUNT = 11 +KEY = 0101010101010101 +IV = 0010000000000000 +CIPHERTEXT = 1 + +COUNT = 12 +KEY = 0101010101010101 +IV = 0008000000000000 +CIPHERTEXT = 1 + +COUNT = 13 +KEY = 0101010101010101 +IV = 0004000000000000 +CIPHERTEXT = 1 + +COUNT = 14 +KEY = 0101010101010101 +IV = 0002000000000000 +CIPHERTEXT = 1 + +COUNT = 15 +KEY = 0101010101010101 +IV = 0001000000000000 +CIPHERTEXT = 1 + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000800000000000 +CIPHERTEXT = 0 + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000400000000000 +CIPHERTEXT = 1 + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000200000000000 +CIPHERTEXT = 1 + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000100000000000 +CIPHERTEXT = 0 + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000080000000000 +CIPHERTEXT = 1 + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000040000000000 +CIPHERTEXT = 0 + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000020000000000 +CIPHERTEXT = 1 + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000010000000000 +CIPHERTEXT = 1 + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000008000000000 +CIPHERTEXT = 0 + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000004000000000 +CIPHERTEXT = 0 + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000002000000000 +CIPHERTEXT = 1 + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000001000000000 +CIPHERTEXT = 1 + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000800000000 +CIPHERTEXT = 1 + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000400000000 +CIPHERTEXT = 1 + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000200000000 +CIPHERTEXT = 1 + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000100000000 +CIPHERTEXT = 1 + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000080000000 +CIPHERTEXT = 1 + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000040000000 +CIPHERTEXT = 1 + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000020000000 +CIPHERTEXT = 1 + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000010000000 +CIPHERTEXT = 1 + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000008000000 +CIPHERTEXT = 1 + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000004000000 +CIPHERTEXT = 0 + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000002000000 +CIPHERTEXT = 1 + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000001000000 +CIPHERTEXT = 0 + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000800000 +CIPHERTEXT = 0 + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000400000 +CIPHERTEXT = 1 + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000200000 +CIPHERTEXT = 0 + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000100000 +CIPHERTEXT = 1 + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000080000 +CIPHERTEXT = 1 + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000040000 +CIPHERTEXT = 1 + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000020000 +CIPHERTEXT = 1 + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000010000 +CIPHERTEXT = 1 + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000008000 +CIPHERTEXT = 0 + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000004000 +CIPHERTEXT = 0 + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000002000 +CIPHERTEXT = 0 + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000001000 +CIPHERTEXT = 1 + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000800 +CIPHERTEXT = 1 + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000400 +CIPHERTEXT = 1 + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000200 +CIPHERTEXT = 0 + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000100 +CIPHERTEXT = 1 + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000080 +CIPHERTEXT = 0 + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000040 +CIPHERTEXT = 1 + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000020 +CIPHERTEXT = 0 + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000010 +CIPHERTEXT = 0 + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000008 +CIPHERTEXT = 1 + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000004 +CIPHERTEXT = 1 + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000002 +CIPHERTEXT = 0 + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000001 +CIPHERTEXT = 0 diff --git a/fips/testvectors/des/req/CFB1permop.req b/fips/testvectors/des/req/CFB1permop.req new file mode 100644 index 0000000000..1dad76d538 --- /dev/null +++ b/fips/testvectors/des/req/CFB1permop.req @@ -0,0 +1,328 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# PERMUTATION OPERATION - KAT for CFB1 +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 1046913489980131 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 1 +KEY = 1007103489988020 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 2 +KEY = 10071034c8980120 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 3 +KEY = 1046103489988020 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 4 +KEY = 1086911519190101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 5 +KEY = 1086911519580101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 6 +KEY = 5107b01519580101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 7 +KEY = 1007b01519190101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 8 +KEY = 3107915498080101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 9 +KEY = 3107919498080101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 10 +KEY = 10079115b9080140 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 11 +KEY = 3107911598080140 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 12 +KEY = 1007d01589980101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 13 +KEY = 9107911589980101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 14 +KEY = 9107d01589190101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 15 +KEY = 1007d01598980120 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 16 +KEY = 1007940498190101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 17 +KEY = 0107910491190401 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 18 +KEY = 0107910491190101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 19 +KEY = 0107940491190401 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 20 +KEY = 19079210981a0101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 21 +KEY = 1007911998190801 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 22 +KEY = 10079119981a0801 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 23 +KEY = 1007921098190101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 24 +KEY = 100791159819010b +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 25 +KEY = 1004801598190101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 26 +KEY = 1004801598190102 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 27 +KEY = 1004801598190108 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 28 +KEY = 1002911598100104 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 29 +KEY = 1002911598190104 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 30 +KEY = 1002911598100201 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 31 +KEY = 1002911698100101 +IV = 0000000000000000 +PLAINTEXT = 0 + + +[DECRYPT] +COUNT = 0 +KEY = 1046913489980131 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 1 +KEY = 1007103489988020 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 2 +KEY = 10071034c8980120 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 3 +KEY = 1046103489988020 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 4 +KEY = 1086911519190101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 5 +KEY = 1086911519580101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 6 +KEY = 5107b01519580101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 7 +KEY = 1007b01519190101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 8 +KEY = 3107915498080101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 9 +KEY = 3107919498080101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 10 +KEY = 10079115b9080140 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 11 +KEY = 3107911598080140 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 12 +KEY = 1007d01589980101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 13 +KEY = 9107911589980101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 14 +KEY = 9107d01589190101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 15 +KEY = 1007d01598980120 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 16 +KEY = 1007940498190101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 17 +KEY = 0107910491190401 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 18 +KEY = 0107910491190101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 19 +KEY = 0107940491190401 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 20 +KEY = 19079210981a0101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 21 +KEY = 1007911998190801 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 22 +KEY = 10079119981a0801 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 23 +KEY = 1007921098190101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 24 +KEY = 100791159819010b +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 25 +KEY = 1004801598190101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 26 +KEY = 1004801598190102 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 27 +KEY = 1004801598190108 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 28 +KEY = 1002911598100104 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 29 +KEY = 1002911598190104 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 30 +KEY = 1002911598100201 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 31 +KEY = 1002911698100101 +IV = 0000000000000000 +CIPHERTEXT = 0 diff --git a/fips/testvectors/des/req/CFB1subtab.req b/fips/testvectors/des/req/CFB1subtab.req new file mode 100644 index 0000000000..9508780e1d --- /dev/null +++ b/fips/testvectors/des/req/CFB1subtab.req @@ -0,0 +1,198 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# SUBSTITUTION TABLE - KAT for CFB1 +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 7ca110454a1a6e57 +IV = 01a1d6d039776742 +PLAINTEXT = 0 + +COUNT = 1 +KEY = 0131d9619dc1376e +IV = 5cd54ca83def57da +PLAINTEXT = 0 + +COUNT = 2 +KEY = 07a1133e4a0b2686 +IV = 0248d43806f67172 +PLAINTEXT = 0 + +COUNT = 3 +KEY = 3849674c2602319e +IV = 51454b582ddf440a +PLAINTEXT = 0 + +COUNT = 4 +KEY = 04b915ba43feb5b6 +IV = 42fd443059577fa2 +PLAINTEXT = 0 + +COUNT = 5 +KEY = 0113b970fd34f2ce +IV = 059b5e0851cf143a +PLAINTEXT = 0 + +COUNT = 6 +KEY = 0170f175468fb5e6 +IV = 0756d8e0774761d2 +PLAINTEXT = 0 + +COUNT = 7 +KEY = 43297fad38e373fe +IV = 762514b829bf486a +PLAINTEXT = 0 + +COUNT = 8 +KEY = 07a7137045da2a16 +IV = 3bdd119049372802 +PLAINTEXT = 0 + +COUNT = 9 +KEY = 04689104c2fd3b2f +IV = 26955f6835af609a +PLAINTEXT = 0 + +COUNT = 10 +KEY = 37d06bb516cb7546 +IV = 164d5e404f275232 +PLAINTEXT = 0 + +COUNT = 11 +KEY = 1f08260d1ac2465e +IV = 6b056e18759f5cca +PLAINTEXT = 0 + +COUNT = 12 +KEY = 584023641aba6176 +IV = 004bd6ef09176062 +PLAINTEXT = 0 + +COUNT = 13 +KEY = 025816164629b007 +IV = 480d39006ee762f2 +PLAINTEXT = 0 + +COUNT = 14 +KEY = 49793ebc79b3258f +IV = 437540c8698f3cfa +PLAINTEXT = 0 + +COUNT = 15 +KEY = 4fb05e1515ab73a7 +IV = 072d43a077075292 +PLAINTEXT = 0 + +COUNT = 16 +KEY = 49e95d6d4ca229bf +IV = 02fe55778117f12a +PLAINTEXT = 0 + +COUNT = 17 +KEY = 018310dc409b26d6 +IV = 1d9d5c5018f728c2 +PLAINTEXT = 0 + +COUNT = 18 +KEY = 1c587f1c13924fef +IV = 305532286d6f295a +PLAINTEXT = 0 + + +[DECRYPT] +COUNT = 0 +KEY = 7ca110454a1a6e57 +IV = 01a1d6d039776742 +CIPHERTEXT = 0 + +COUNT = 1 +KEY = 0131d9619dc1376e +IV = 5cd54ca83def57da +CIPHERTEXT = 0 + +COUNT = 2 +KEY = 07a1133e4a0b2686 +IV = 0248d43806f67172 +CIPHERTEXT = 0 + +COUNT = 3 +KEY = 3849674c2602319e +IV = 51454b582ddf440a +CIPHERTEXT = 0 + +COUNT = 4 +KEY = 04b915ba43feb5b6 +IV = 42fd443059577fa2 +CIPHERTEXT = 0 + +COUNT = 5 +KEY = 0113b970fd34f2ce +IV = 059b5e0851cf143a +CIPHERTEXT = 0 + +COUNT = 6 +KEY = 0170f175468fb5e6 +IV = 0756d8e0774761d2 +CIPHERTEXT = 0 + +COUNT = 7 +KEY = 43297fad38e373fe +IV = 762514b829bf486a +CIPHERTEXT = 0 + +COUNT = 8 +KEY = 07a7137045da2a16 +IV = 3bdd119049372802 +CIPHERTEXT = 0 + +COUNT = 9 +KEY = 04689104c2fd3b2f +IV = 26955f6835af609a +CIPHERTEXT = 0 + +COUNT = 10 +KEY = 37d06bb516cb7546 +IV = 164d5e404f275232 +CIPHERTEXT = 0 + +COUNT = 11 +KEY = 1f08260d1ac2465e +IV = 6b056e18759f5cca +CIPHERTEXT = 0 + +COUNT = 12 +KEY = 584023641aba6176 +IV = 004bd6ef09176062 +CIPHERTEXT = 0 + +COUNT = 13 +KEY = 025816164629b007 +IV = 480d39006ee762f2 +CIPHERTEXT = 0 + +COUNT = 14 +KEY = 49793ebc79b3258f +IV = 437540c8698f3cfa +CIPHERTEXT = 0 + +COUNT = 15 +KEY = 4fb05e1515ab73a7 +IV = 072d43a077075292 +CIPHERTEXT = 0 + +COUNT = 16 +KEY = 49e95d6d4ca229bf +IV = 02fe55778117f12a +CIPHERTEXT = 0 + +COUNT = 17 +KEY = 018310dc409b26d6 +IV = 1d9d5c5018f728c2 +CIPHERTEXT = 0 + +COUNT = 18 +KEY = 1c587f1c13924fef +IV = 305532286d6f295a +CIPHERTEXT = 0 diff --git a/fips/testvectors/des/req/CFB1varkey.req b/fips/testvectors/des/req/CFB1varkey.req new file mode 100644 index 0000000000..380c6f97ba --- /dev/null +++ b/fips/testvectors/des/req/CFB1varkey.req @@ -0,0 +1,568 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# VARIABLE KEY - KAT for CFB1 +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 8001010101010101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 1 +KEY = 4001010101010101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 2 +KEY = 2001010101010101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 3 +KEY = 1001010101010101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 4 +KEY = 0801010101010101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 5 +KEY = 0401010101010101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 6 +KEY = 0201010101010101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 7 +KEY = 0180010101010101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 8 +KEY = 0140010101010101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 9 +KEY = 0120010101010101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 10 +KEY = 0110010101010101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 11 +KEY = 0108010101010101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 12 +KEY = 0104010101010101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 13 +KEY = 0102010101010101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 14 +KEY = 0101800101010101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 15 +KEY = 0101400101010101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 16 +KEY = 0101200101010101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 17 +KEY = 0101100101010101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 18 +KEY = 0101080101010101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 19 +KEY = 0101040101010101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 20 +KEY = 0101020101010101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 21 +KEY = 0101018001010101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 22 +KEY = 0101014001010101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 23 +KEY = 0101012001010101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 24 +KEY = 0101011001010101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 25 +KEY = 0101010801010101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 26 +KEY = 0101010401010101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 27 +KEY = 0101010201010101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 28 +KEY = 0101010180010101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 29 +KEY = 0101010140010101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 30 +KEY = 0101010120010101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 31 +KEY = 0101010110010101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 32 +KEY = 0101010108010101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 33 +KEY = 0101010104010101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 34 +KEY = 0101010102010101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 35 +KEY = 0101010101800101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 36 +KEY = 0101010101400101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 37 +KEY = 0101010101200101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 38 +KEY = 0101010101100101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 39 +KEY = 0101010101080101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 40 +KEY = 0101010101040101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 41 +KEY = 0101010101020101 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 42 +KEY = 0101010101018001 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 43 +KEY = 0101010101014001 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 44 +KEY = 0101010101012001 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 45 +KEY = 0101010101011001 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 46 +KEY = 0101010101010801 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 47 +KEY = 0101010101010401 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 48 +KEY = 0101010101010201 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 49 +KEY = 0101010101010180 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 50 +KEY = 0101010101010140 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 51 +KEY = 0101010101010120 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 52 +KEY = 0101010101010110 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 53 +KEY = 0101010101010108 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 54 +KEY = 0101010101010104 +IV = 0000000000000000 +PLAINTEXT = 0 + +COUNT = 55 +KEY = 0101010101010102 +IV = 0000000000000000 +PLAINTEXT = 0 + + +[DECRYPT] +COUNT = 0 +KEY = 8001010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 1 +KEY = 4001010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 2 +KEY = 2001010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 3 +KEY = 1001010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 4 +KEY = 0801010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 5 +KEY = 0401010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 6 +KEY = 0201010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 7 +KEY = 0180010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 8 +KEY = 0140010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 9 +KEY = 0120010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 10 +KEY = 0110010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 11 +KEY = 0108010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 12 +KEY = 0104010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 13 +KEY = 0102010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 14 +KEY = 0101800101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 15 +KEY = 0101400101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 16 +KEY = 0101200101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 17 +KEY = 0101100101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 18 +KEY = 0101080101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 19 +KEY = 0101040101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 20 +KEY = 0101020101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 21 +KEY = 0101018001010101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 22 +KEY = 0101014001010101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 23 +KEY = 0101012001010101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 24 +KEY = 0101011001010101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 25 +KEY = 0101010801010101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 26 +KEY = 0101010401010101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 27 +KEY = 0101010201010101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 28 +KEY = 0101010180010101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 29 +KEY = 0101010140010101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 30 +KEY = 0101010120010101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 31 +KEY = 0101010110010101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 32 +KEY = 0101010108010101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 33 +KEY = 0101010104010101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 34 +KEY = 0101010102010101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 35 +KEY = 0101010101800101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 36 +KEY = 0101010101400101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 37 +KEY = 0101010101200101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 38 +KEY = 0101010101100101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 39 +KEY = 0101010101080101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 40 +KEY = 0101010101040101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 41 +KEY = 0101010101020101 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 42 +KEY = 0101010101018001 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 43 +KEY = 0101010101014001 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 44 +KEY = 0101010101012001 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 45 +KEY = 0101010101011001 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 46 +KEY = 0101010101010801 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 47 +KEY = 0101010101010401 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 48 +KEY = 0101010101010201 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 49 +KEY = 0101010101010180 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 50 +KEY = 0101010101010140 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 51 +KEY = 0101010101010120 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 52 +KEY = 0101010101010110 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 53 +KEY = 0101010101010108 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 54 +KEY = 0101010101010104 +IV = 0000000000000000 +CIPHERTEXT = 0 + +COUNT = 55 +KEY = 0101010101010102 +IV = 0000000000000000 +CIPHERTEXT = 0 diff --git a/fips/testvectors/des/req/CFB1vartext.req b/fips/testvectors/des/req/CFB1vartext.req new file mode 100644 index 0000000000..78c0453378 --- /dev/null +++ b/fips/testvectors/des/req/CFB1vartext.req @@ -0,0 +1,648 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# VARIABLE PLAINTEXT/CIPHERTEXT - KAT for CFB1 +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 8000000000000000 +PLAINTEXT = 0 + +COUNT = 1 +KEY = 0101010101010101 +IV = 4000000000000000 +PLAINTEXT = 0 + +COUNT = 2 +KEY = 0101010101010101 +IV = 2000000000000000 +PLAINTEXT = 0 + +COUNT = 3 +KEY = 0101010101010101 +IV = 1000000000000000 +PLAINTEXT = 0 + +COUNT = 4 +KEY = 0101010101010101 +IV = 0800000000000000 +PLAINTEXT = 0 + +COUNT = 5 +KEY = 0101010101010101 +IV = 0400000000000000 +PLAINTEXT = 0 + +COUNT = 6 +KEY = 0101010101010101 +IV = 0200000000000000 +PLAINTEXT = 0 + +COUNT = 7 +KEY = 0101010101010101 +IV = 0100000000000000 +PLAINTEXT = 0 + +COUNT = 8 +KEY = 0101010101010101 +IV = 0080000000000000 +PLAINTEXT = 0 + +COUNT = 9 +KEY = 0101010101010101 +IV = 0040000000000000 +PLAINTEXT = 0 + +COUNT = 10 +KEY = 0101010101010101 +IV = 0020000000000000 +PLAINTEXT = 0 + +COUNT = 11 +KEY = 0101010101010101 +IV = 0010000000000000 +PLAINTEXT = 0 + +COUNT = 12 +KEY = 0101010101010101 +IV = 0008000000000000 +PLAINTEXT = 0 + +COUNT = 13 +KEY = 0101010101010101 +IV = 0004000000000000 +PLAINTEXT = 0 + +COUNT = 14 +KEY = 0101010101010101 +IV = 0002000000000000 +PLAINTEXT = 0 + +COUNT = 15 +KEY = 0101010101010101 +IV = 0001000000000000 +PLAINTEXT = 0 + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000800000000000 +PLAINTEXT = 0 + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000400000000000 +PLAINTEXT = 0 + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000200000000000 +PLAINTEXT = 0 + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000100000000000 +PLAINTEXT = 0 + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000080000000000 +PLAINTEXT = 0 + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000040000000000 +PLAINTEXT = 0 + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000020000000000 +PLAINTEXT = 0 + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000010000000000 +PLAINTEXT = 0 + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000008000000000 +PLAINTEXT = 0 + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000004000000000 +PLAINTEXT = 0 + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000002000000000 +PLAINTEXT = 0 + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000001000000000 +PLAINTEXT = 0 + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000800000000 +PLAINTEXT = 0 + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000400000000 +PLAINTEXT = 0 + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000200000000 +PLAINTEXT = 0 + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000100000000 +PLAINTEXT = 0 + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000080000000 +PLAINTEXT = 0 + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000040000000 +PLAINTEXT = 0 + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000020000000 +PLAINTEXT = 0 + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000010000000 +PLAINTEXT = 0 + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000008000000 +PLAINTEXT = 0 + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000004000000 +PLAINTEXT = 0 + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000002000000 +PLAINTEXT = 0 + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000001000000 +PLAINTEXT = 0 + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000800000 +PLAINTEXT = 0 + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000400000 +PLAINTEXT = 0 + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000200000 +PLAINTEXT = 0 + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000100000 +PLAINTEXT = 0 + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000080000 +PLAINTEXT = 0 + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000040000 +PLAINTEXT = 0 + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000020000 +PLAINTEXT = 0 + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000010000 +PLAINTEXT = 0 + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000008000 +PLAINTEXT = 0 + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000004000 +PLAINTEXT = 0 + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000002000 +PLAINTEXT = 0 + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000001000 +PLAINTEXT = 0 + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000800 +PLAINTEXT = 0 + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000400 +PLAINTEXT = 0 + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000200 +PLAINTEXT = 0 + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000100 +PLAINTEXT = 0 + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000080 +PLAINTEXT = 0 + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000040 +PLAINTEXT = 0 + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000020 +PLAINTEXT = 0 + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000010 +PLAINTEXT = 0 + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000008 +PLAINTEXT = 0 + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000004 +PLAINTEXT = 0 + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000002 +PLAINTEXT = 0 + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000001 +PLAINTEXT = 0 + + +[DECRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 8000000000000000 +CIPHERTEXT = 0 + +COUNT = 1 +KEY = 0101010101010101 +IV = 4000000000000000 +CIPHERTEXT = 0 + +COUNT = 2 +KEY = 0101010101010101 +IV = 2000000000000000 +CIPHERTEXT = 0 + +COUNT = 3 +KEY = 0101010101010101 +IV = 1000000000000000 +CIPHERTEXT = 0 + +COUNT = 4 +KEY = 0101010101010101 +IV = 0800000000000000 +CIPHERTEXT = 0 + +COUNT = 5 +KEY = 0101010101010101 +IV = 0400000000000000 +CIPHERTEXT = 0 + +COUNT = 6 +KEY = 0101010101010101 +IV = 0200000000000000 +CIPHERTEXT = 0 + +COUNT = 7 +KEY = 0101010101010101 +IV = 0100000000000000 +CIPHERTEXT = 0 + +COUNT = 8 +KEY = 0101010101010101 +IV = 0080000000000000 +CIPHERTEXT = 0 + +COUNT = 9 +KEY = 0101010101010101 +IV = 0040000000000000 +CIPHERTEXT = 0 + +COUNT = 10 +KEY = 0101010101010101 +IV = 0020000000000000 +CIPHERTEXT = 0 + +COUNT = 11 +KEY = 0101010101010101 +IV = 0010000000000000 +CIPHERTEXT = 0 + +COUNT = 12 +KEY = 0101010101010101 +IV = 0008000000000000 +CIPHERTEXT = 0 + +COUNT = 13 +KEY = 0101010101010101 +IV = 0004000000000000 +CIPHERTEXT = 0 + +COUNT = 14 +KEY = 0101010101010101 +IV = 0002000000000000 +CIPHERTEXT = 0 + +COUNT = 15 +KEY = 0101010101010101 +IV = 0001000000000000 +CIPHERTEXT = 0 + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000800000000000 +CIPHERTEXT = 0 + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000400000000000 +CIPHERTEXT = 0 + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000200000000000 +CIPHERTEXT = 0 + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000100000000000 +CIPHERTEXT = 0 + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000080000000000 +CIPHERTEXT = 0 + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000040000000000 +CIPHERTEXT = 0 + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000020000000000 +CIPHERTEXT = 0 + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000010000000000 +CIPHERTEXT = 0 + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000008000000000 +CIPHERTEXT = 0 + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000004000000000 +CIPHERTEXT = 0 + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000002000000000 +CIPHERTEXT = 0 + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000001000000000 +CIPHERTEXT = 0 + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000800000000 +CIPHERTEXT = 0 + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000400000000 +CIPHERTEXT = 0 + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000200000000 +CIPHERTEXT = 0 + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000100000000 +CIPHERTEXT = 0 + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000080000000 +CIPHERTEXT = 0 + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000040000000 +CIPHERTEXT = 0 + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000020000000 +CIPHERTEXT = 0 + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000010000000 +CIPHERTEXT = 0 + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000008000000 +CIPHERTEXT = 0 + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000004000000 +CIPHERTEXT = 0 + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000002000000 +CIPHERTEXT = 0 + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000001000000 +CIPHERTEXT = 0 + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000800000 +CIPHERTEXT = 0 + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000400000 +CIPHERTEXT = 0 + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000200000 +CIPHERTEXT = 0 + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000100000 +CIPHERTEXT = 0 + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000080000 +CIPHERTEXT = 0 + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000040000 +CIPHERTEXT = 0 + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000020000 +CIPHERTEXT = 0 + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000010000 +CIPHERTEXT = 0 + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000008000 +CIPHERTEXT = 0 + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000004000 +CIPHERTEXT = 0 + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000002000 +CIPHERTEXT = 0 + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000001000 +CIPHERTEXT = 0 + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000800 +CIPHERTEXT = 0 + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000400 +CIPHERTEXT = 0 + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000200 +CIPHERTEXT = 0 + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000100 +CIPHERTEXT = 0 + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000080 +CIPHERTEXT = 0 + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000040 +CIPHERTEXT = 0 + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000020 +CIPHERTEXT = 0 + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000010 +CIPHERTEXT = 0 + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000008 +CIPHERTEXT = 0 + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000004 +CIPHERTEXT = 0 + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000002 +CIPHERTEXT = 0 + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000001 +CIPHERTEXT = 0 diff --git a/fips/testvectors/des/req/CFB64MMT.req b/fips/testvectors/des/req/CFB64MMT.req new file mode 100644 index 0000000000..030889b5d1 --- /dev/null +++ b/fips/testvectors/des/req/CFB64MMT.req @@ -0,0 +1,109 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# DES Multi Block Message Test for CFB64 +# State : Encrypt and Decrypt +# Tue Jun 24 03:13:22 PM + +[ENCRYPT] + +COUNT = 0 +KEY = fef7df9b403b377c +IV = 20b77d3db64fe6a6 +PLAINTEXT = 6a0bb874a8c575bd + +COUNT = 1 +KEY = 9b162a071f015802 +IV = 2f83cf4060546a84 +PLAINTEXT = 4b45f67cca2d506e2d9a8c7623ccf57f + +COUNT = 2 +KEY = 57c258704f3d1319 +IV = ad5be18ff3ed3c90 +PLAINTEXT = 38d9c87916a0900608427eff0f8fb05f53e0adddb8579b58 + +COUNT = 3 +KEY = 10ba132fe558266e +IV = 2827b1b24286d1de +PLAINTEXT = 6b26aede2a205f342d459f9cb6a4da27a5681cfd919ec943173f8e42726a97c5 + +COUNT = 4 +KEY = dab03115ead019c2 +IV = db195f3996f1ff27 +PLAINTEXT = 577133684c4abbd53152c2ac2b2930c30679e1161e3ea7bc7f6593194b9970545c5a910b2b4fcd46 + +COUNT = 5 +KEY = 23408352d36b8fc4 +IV = 5bc9b05a6e6b763e +PLAINTEXT = b3eb3c88568b0674f9afb364892039854f95c36472285804bd07b72ea36c860880cface9225afc6c889d13c3e983834e + +COUNT = 6 +KEY = 6b1c26dab6e307d9 +IV = 40a7a9f062aaa81e +PLAINTEXT = da6e7877d3aa94f90eee2476513d2eaee5096f3b9055efd2c317d9c613e08acdedbee8078662f53c127ea4663671eb6fbf26193b94396ae9 + +COUNT = 7 +KEY = 2a9b68da61e3109d +IV = 421b6013a65aa67e +PLAINTEXT = 1464bc0a905adaf34a0d60c2fcda89d55b38417754ec8ab5967c1e6d50e555a73c904a28dc83394504d52cf69864d72b97cac063588ca37a149514c2a5e36656 + +COUNT = 8 +KEY = dfa713adbf97c837 +IV = 995634492a9bbfdb +PLAINTEXT = 08aa86da9107ca3e16a2b58950e656a15c085b88033e79313e2c0f92f99f06fa187efba5b8fea08eb7145f8476304180dd280f36a072b7eac197f08557e421e88d637f80ed0a761a + +COUNT = 9 +KEY = 753bef73ec98bc8c +IV = d29029949dd5a967 +PLAINTEXT = e1a4d4cb81ff50ed997ec8eda47abb9b43e2f0f3903b6944afe49392a79fbf38704dd5d14ef947595d1845906c0f309f0ef650feef9cc99565cbcb2247cd0ada022e6e53e9c40ba1cded53c0ce188a32 + +[DECRYPT] + +COUNT = 0 +KEY = 1f51404c46f73dd3 +IV = df2f2488c53ef366 +CIPHERTEXT = fd9938732ea86716 + +COUNT = 1 +KEY = 64f8e07351a2dcd5 +IV = e1a6cddf44b62d55 +CIPHERTEXT = 2b0883480a8210f83784af6936d12b0f + +COUNT = 2 +KEY = e640b6bca27ff16e +IV = 4bb9f172626c2a0e +CIPHERTEXT = b27e2115d13ec5ba71f7159a9c5697761ec992ca9741c3ae + +COUNT = 3 +KEY = 6785e58592104594 +IV = 3666114b1d9510e7 +CIPHERTEXT = dae17b52ce854fd19b7a9bad0489d21facd8509f7bbee35743d68ad7a3527c0a + +COUNT = 4 +KEY = d6c8bce901d53dcb +IV = 5d6eb0b4ba23684d +CIPHERTEXT = 739bcea19081a5c283e3044f16ba14a6c2e73e566719852640f01a5a15632a31b25ffbb299b037a8 + +COUNT = 5 +KEY = 311f02c4e54029f8 +IV = ab041aeaf54e050e +CIPHERTEXT = 595306fd1446faef0e26310db3808bff18e0fb42d74ff3cd19191df5f4d44c8ef89db25304a553885eedb9dd034dea96 + +COUNT = 6 +KEY = 2fb60dada4239dc2 +IV = c6764c43659d0caa +CIPHERTEXT = a174488f6221b14995a410b8ebfc36f4692af6190e41e4f8b5bd5c0d3d15c6b2e6941991fe649e5fbeecf7c86f5c5fa5d0853375bcefb20b + +COUNT = 7 +KEY = 075d463807a4ec19 +IV = c2dd12d3a3682b9e +CIPHERTEXT = 9ff11d21acb74196ea6444b0786b5e13753dcb5f150f7d10f4de0ea3aab1f8fb9f1f080221101093b3c8dd98a821686ff1175093348a88781e404db6f92a5c6a + +COUNT = 8 +KEY = 1692ce3b080bb6d5 +IV = f32c3624aadaf5d3 +CIPHERTEXT = f0eac9339484aac38703681724a45fe8ce8f2547e1fe19e2e9a13f8312424bd9e0a5fb7b20b2aa2a1fd5235619a6b3e4f4c5822f2e08224d15d9699336d97c5b17ca2d0429ab873b + +COUNT = 9 +KEY = 6237f77a46c8c4bf +IV = 2d4de36d5b9f9797 +CIPHERTEXT = 4ee410747a030abf35414184e18bbe405b57ed382237e9afbcaefa5b55425d1aaad243e2252a1bf649d514605132de9b14cbb1902ce191c4574cd0cf1d82d410b4f51b9f20a27b839ee6af2543940f05 diff --git a/fips/testvectors/des/req/CFB64Monte.req b/fips/testvectors/des/req/CFB64Monte.req new file mode 100644 index 0000000000..63f8f64120 --- /dev/null +++ b/fips/testvectors/des/req/CFB64Monte.req @@ -0,0 +1,17 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# DES Monte Carlo (Modes) Test for CFB64 +# State : Encrypt and Decrypt +# Tue Jun 24 03:13:22 PM + +[ENCRYPT] +KEY = 62d65740708019f1 +IV = 14544ea4813c49d9 +PLAINTEXT = c3acc89b9b6037ef + + +[DECRYPT] +KEY = 1938ce9d3170e943 +IV = 50da37dea25a9471 +CIPHERTEXT = ac81a4c963661942 + diff --git a/fips/testvectors/des/req/CFB64invperm.req b/fips/testvectors/des/req/CFB64invperm.req new file mode 100644 index 0000000000..687f855d7a --- /dev/null +++ b/fips/testvectors/des/req/CFB64invperm.req @@ -0,0 +1,648 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# INVERSE PERMUTATION - KAT for CFB64 +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 8000000000000000 +PLAINTEXT = 95f8a5e5dd31d900 + +COUNT = 1 +KEY = 0101010101010101 +IV = 4000000000000000 +PLAINTEXT = dd7f121ca5015619 + +COUNT = 2 +KEY = 0101010101010101 +IV = 2000000000000000 +PLAINTEXT = 2e8653104f3834ea + +COUNT = 3 +KEY = 0101010101010101 +IV = 1000000000000000 +PLAINTEXT = 4bd388ff6cd81d4f + +COUNT = 4 +KEY = 0101010101010101 +IV = 0800000000000000 +PLAINTEXT = 20b9e767b2fb1456 + +COUNT = 5 +KEY = 0101010101010101 +IV = 0400000000000000 +PLAINTEXT = 55579380d77138ef + +COUNT = 6 +KEY = 0101010101010101 +IV = 0200000000000000 +PLAINTEXT = 6cc5defaaf04512f + +COUNT = 7 +KEY = 0101010101010101 +IV = 0100000000000000 +PLAINTEXT = 0d9f279ba5d87260 + +COUNT = 8 +KEY = 0101010101010101 +IV = 0080000000000000 +PLAINTEXT = d9031b0271bd5a0a + +COUNT = 9 +KEY = 0101010101010101 +IV = 0040000000000000 +PLAINTEXT = 424250b37c3dd951 + +COUNT = 10 +KEY = 0101010101010101 +IV = 0020000000000000 +PLAINTEXT = b8061b7ecd9a21e5 + +COUNT = 11 +KEY = 0101010101010101 +IV = 0010000000000000 +PLAINTEXT = f15d0f286b65bd28 + +COUNT = 12 +KEY = 0101010101010101 +IV = 0008000000000000 +PLAINTEXT = add0cc8d6e5deba1 + +COUNT = 13 +KEY = 0101010101010101 +IV = 0004000000000000 +PLAINTEXT = e6d5f82752ad63d1 + +COUNT = 14 +KEY = 0101010101010101 +IV = 0002000000000000 +PLAINTEXT = ecbfe3bd3f591a5e + +COUNT = 15 +KEY = 0101010101010101 +IV = 0001000000000000 +PLAINTEXT = f356834379d165cd + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000800000000000 +PLAINTEXT = 2b9f982f20037fa9 + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000400000000000 +PLAINTEXT = 889de068a16f0be6 + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000200000000000 +PLAINTEXT = e19e275d846a1298 + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000100000000000 +PLAINTEXT = 329a8ed523d71aec + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000080000000000 +PLAINTEXT = e7fce22557d23c97 + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000040000000000 +PLAINTEXT = 12a9f5817ff2d65d + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000020000000000 +PLAINTEXT = a484c3ad38dc9c19 + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000010000000000 +PLAINTEXT = fbe00a8a1ef8ad72 + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000008000000000 +PLAINTEXT = 750d079407521363 + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000004000000000 +PLAINTEXT = 64feed9c724c2faf + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000002000000000 +PLAINTEXT = f02b263b328e2b60 + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000001000000000 +PLAINTEXT = 9d64555a9a10b852 + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000800000000 +PLAINTEXT = d106ff0bed5255d7 + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000400000000 +PLAINTEXT = e1652c6b138c64a5 + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000200000000 +PLAINTEXT = e428581186ec8f46 + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000100000000 +PLAINTEXT = aeb5f5ede22d1a36 + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000080000000 +PLAINTEXT = e943d7568aec0c5c + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000040000000 +PLAINTEXT = df98c8276f54b04b + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000020000000 +PLAINTEXT = b160e4680f6c696f + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000010000000 +PLAINTEXT = fa0752b07d9c4ab8 + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000008000000 +PLAINTEXT = ca3a2b036dbc8502 + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000004000000 +PLAINTEXT = 5e0905517bb59bcf + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000002000000 +PLAINTEXT = 814eeb3b91d90726 + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000001000000 +PLAINTEXT = 4d49db1532919c9f + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000800000 +PLAINTEXT = 25eb5fc3f8cf0621 + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000400000 +PLAINTEXT = ab6a20c0620d1c6f + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000200000 +PLAINTEXT = 79e90dbc98f92cca + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000100000 +PLAINTEXT = 866ecedd8072bb0e + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000080000 +PLAINTEXT = 8b54536f2f3e64a8 + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000040000 +PLAINTEXT = ea51d3975595b86b + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000020000 +PLAINTEXT = caffc6ac4542de31 + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000010000 +PLAINTEXT = 8dd45a2ddf90796c + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000008000 +PLAINTEXT = 1029d55e880ec2d0 + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000004000 +PLAINTEXT = 5d86cb23639dbea9 + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000002000 +PLAINTEXT = 1d1ca853ae7c0c5f + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000001000 +PLAINTEXT = ce332329248f3228 + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000800 +PLAINTEXT = 8405d1abe24fb942 + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000400 +PLAINTEXT = e643d78090ca4207 + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000200 +PLAINTEXT = 48221b9937748a23 + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000100 +PLAINTEXT = dd7c0bbd61fafd54 + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000080 +PLAINTEXT = 2fbc291a570db5c4 + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000040 +PLAINTEXT = e07c30d7e4e26e12 + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000020 +PLAINTEXT = 0953e2258e8e90a1 + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000010 +PLAINTEXT = 5b711bc4ceebf2ee + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000008 +PLAINTEXT = cc083f1e6d9e85f6 + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000004 +PLAINTEXT = d2fd8867d50d2dfe + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000002 +PLAINTEXT = 06e7ea22ce92708f + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000001 +PLAINTEXT = 166b40b44aba4bd6 + + +[DECRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 8000000000000000 +CIPHERTEXT = 95f8a5e5dd31d900 + +COUNT = 1 +KEY = 0101010101010101 +IV = 4000000000000000 +CIPHERTEXT = dd7f121ca5015619 + +COUNT = 2 +KEY = 0101010101010101 +IV = 2000000000000000 +CIPHERTEXT = 2e8653104f3834ea + +COUNT = 3 +KEY = 0101010101010101 +IV = 1000000000000000 +CIPHERTEXT = 4bd388ff6cd81d4f + +COUNT = 4 +KEY = 0101010101010101 +IV = 0800000000000000 +CIPHERTEXT = 20b9e767b2fb1456 + +COUNT = 5 +KEY = 0101010101010101 +IV = 0400000000000000 +CIPHERTEXT = 55579380d77138ef + +COUNT = 6 +KEY = 0101010101010101 +IV = 0200000000000000 +CIPHERTEXT = 6cc5defaaf04512f + +COUNT = 7 +KEY = 0101010101010101 +IV = 0100000000000000 +CIPHERTEXT = 0d9f279ba5d87260 + +COUNT = 8 +KEY = 0101010101010101 +IV = 0080000000000000 +CIPHERTEXT = d9031b0271bd5a0a + +COUNT = 9 +KEY = 0101010101010101 +IV = 0040000000000000 +CIPHERTEXT = 424250b37c3dd951 + +COUNT = 10 +KEY = 0101010101010101 +IV = 0020000000000000 +CIPHERTEXT = b8061b7ecd9a21e5 + +COUNT = 11 +KEY = 0101010101010101 +IV = 0010000000000000 +CIPHERTEXT = f15d0f286b65bd28 + +COUNT = 12 +KEY = 0101010101010101 +IV = 0008000000000000 +CIPHERTEXT = add0cc8d6e5deba1 + +COUNT = 13 +KEY = 0101010101010101 +IV = 0004000000000000 +CIPHERTEXT = e6d5f82752ad63d1 + +COUNT = 14 +KEY = 0101010101010101 +IV = 0002000000000000 +CIPHERTEXT = ecbfe3bd3f591a5e + +COUNT = 15 +KEY = 0101010101010101 +IV = 0001000000000000 +CIPHERTEXT = f356834379d165cd + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000800000000000 +CIPHERTEXT = 2b9f982f20037fa9 + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000400000000000 +CIPHERTEXT = 889de068a16f0be6 + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000200000000000 +CIPHERTEXT = e19e275d846a1298 + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000100000000000 +CIPHERTEXT = 329a8ed523d71aec + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000080000000000 +CIPHERTEXT = e7fce22557d23c97 + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000040000000000 +CIPHERTEXT = 12a9f5817ff2d65d + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000020000000000 +CIPHERTEXT = a484c3ad38dc9c19 + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000010000000000 +CIPHERTEXT = fbe00a8a1ef8ad72 + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000008000000000 +CIPHERTEXT = 750d079407521363 + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000004000000000 +CIPHERTEXT = 64feed9c724c2faf + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000002000000000 +CIPHERTEXT = f02b263b328e2b60 + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000001000000000 +CIPHERTEXT = 9d64555a9a10b852 + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000800000000 +CIPHERTEXT = d106ff0bed5255d7 + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000400000000 +CIPHERTEXT = e1652c6b138c64a5 + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000200000000 +CIPHERTEXT = e428581186ec8f46 + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000100000000 +CIPHERTEXT = aeb5f5ede22d1a36 + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000080000000 +CIPHERTEXT = e943d7568aec0c5c + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000040000000 +CIPHERTEXT = df98c8276f54b04b + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000020000000 +CIPHERTEXT = b160e4680f6c696f + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000010000000 +CIPHERTEXT = fa0752b07d9c4ab8 + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000008000000 +CIPHERTEXT = ca3a2b036dbc8502 + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000004000000 +CIPHERTEXT = 5e0905517bb59bcf + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000002000000 +CIPHERTEXT = 814eeb3b91d90726 + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000001000000 +CIPHERTEXT = 4d49db1532919c9f + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000800000 +CIPHERTEXT = 25eb5fc3f8cf0621 + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000400000 +CIPHERTEXT = ab6a20c0620d1c6f + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000200000 +CIPHERTEXT = 79e90dbc98f92cca + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000100000 +CIPHERTEXT = 866ecedd8072bb0e + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000080000 +CIPHERTEXT = 8b54536f2f3e64a8 + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000040000 +CIPHERTEXT = ea51d3975595b86b + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000020000 +CIPHERTEXT = caffc6ac4542de31 + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000010000 +CIPHERTEXT = 8dd45a2ddf90796c + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000008000 +CIPHERTEXT = 1029d55e880ec2d0 + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000004000 +CIPHERTEXT = 5d86cb23639dbea9 + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000002000 +CIPHERTEXT = 1d1ca853ae7c0c5f + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000001000 +CIPHERTEXT = ce332329248f3228 + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000800 +CIPHERTEXT = 8405d1abe24fb942 + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000400 +CIPHERTEXT = e643d78090ca4207 + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000200 +CIPHERTEXT = 48221b9937748a23 + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000100 +CIPHERTEXT = dd7c0bbd61fafd54 + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000080 +CIPHERTEXT = 2fbc291a570db5c4 + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000040 +CIPHERTEXT = e07c30d7e4e26e12 + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000020 +CIPHERTEXT = 0953e2258e8e90a1 + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000010 +CIPHERTEXT = 5b711bc4ceebf2ee + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000008 +CIPHERTEXT = cc083f1e6d9e85f6 + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000004 +CIPHERTEXT = d2fd8867d50d2dfe + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000002 +CIPHERTEXT = 06e7ea22ce92708f + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000001 +CIPHERTEXT = 166b40b44aba4bd6 diff --git a/fips/testvectors/des/req/CFB64permop.req b/fips/testvectors/des/req/CFB64permop.req new file mode 100644 index 0000000000..9c2a265e2d --- /dev/null +++ b/fips/testvectors/des/req/CFB64permop.req @@ -0,0 +1,328 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# PERMUTATION OPERATION - KAT for CFB64 +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:52 PM + +[ENCRYPT] +COUNT = 0 +KEY = 1046913489980131 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 1 +KEY = 1007103489988020 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 2 +KEY = 10071034c8980120 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 3 +KEY = 1046103489988020 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 4 +KEY = 1086911519190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 5 +KEY = 1086911519580101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 6 +KEY = 5107b01519580101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 7 +KEY = 1007b01519190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 8 +KEY = 3107915498080101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 9 +KEY = 3107919498080101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 10 +KEY = 10079115b9080140 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 11 +KEY = 3107911598080140 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 12 +KEY = 1007d01589980101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 13 +KEY = 9107911589980101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 14 +KEY = 9107d01589190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 15 +KEY = 1007d01598980120 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 16 +KEY = 1007940498190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 17 +KEY = 0107910491190401 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 18 +KEY = 0107910491190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 19 +KEY = 0107940491190401 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 20 +KEY = 19079210981a0101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 21 +KEY = 1007911998190801 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 22 +KEY = 10079119981a0801 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 23 +KEY = 1007921098190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 24 +KEY = 100791159819010b +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 25 +KEY = 1004801598190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 26 +KEY = 1004801598190102 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 27 +KEY = 1004801598190108 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 28 +KEY = 1002911598100104 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 29 +KEY = 1002911598190104 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 30 +KEY = 1002911598100201 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 31 +KEY = 1002911698100101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + + +[DECRYPT] +COUNT = 0 +KEY = 1046913489980131 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 1 +KEY = 1007103489988020 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 2 +KEY = 10071034c8980120 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 3 +KEY = 1046103489988020 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 4 +KEY = 1086911519190101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 5 +KEY = 1086911519580101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 6 +KEY = 5107b01519580101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 7 +KEY = 1007b01519190101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 8 +KEY = 3107915498080101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 9 +KEY = 3107919498080101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 10 +KEY = 10079115b9080140 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 11 +KEY = 3107911598080140 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 12 +KEY = 1007d01589980101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 13 +KEY = 9107911589980101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 14 +KEY = 9107d01589190101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 15 +KEY = 1007d01598980120 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 16 +KEY = 1007940498190101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 17 +KEY = 0107910491190401 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 18 +KEY = 0107910491190101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 19 +KEY = 0107940491190401 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 20 +KEY = 19079210981a0101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 21 +KEY = 1007911998190801 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 22 +KEY = 10079119981a0801 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 23 +KEY = 1007921098190101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 24 +KEY = 100791159819010b +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 25 +KEY = 1004801598190101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 26 +KEY = 1004801598190102 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 27 +KEY = 1004801598190108 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 28 +KEY = 1002911598100104 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 29 +KEY = 1002911598190104 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 30 +KEY = 1002911598100201 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 31 +KEY = 1002911698100101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 diff --git a/fips/testvectors/des/req/CFB64subtab.req b/fips/testvectors/des/req/CFB64subtab.req new file mode 100644 index 0000000000..978781d211 --- /dev/null +++ b/fips/testvectors/des/req/CFB64subtab.req @@ -0,0 +1,198 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# SUBSTITUTION TABLE - KAT for CFB64 +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:52 PM + +[ENCRYPT] +COUNT = 0 +KEY = 7ca110454a1a6e57 +IV = 01a1d6d039776742 +PLAINTEXT = 0000000000000000 + +COUNT = 1 +KEY = 0131d9619dc1376e +IV = 5cd54ca83def57da +PLAINTEXT = 0000000000000000 + +COUNT = 2 +KEY = 07a1133e4a0b2686 +IV = 0248d43806f67172 +PLAINTEXT = 0000000000000000 + +COUNT = 3 +KEY = 3849674c2602319e +IV = 51454b582ddf440a +PLAINTEXT = 0000000000000000 + +COUNT = 4 +KEY = 04b915ba43feb5b6 +IV = 42fd443059577fa2 +PLAINTEXT = 0000000000000000 + +COUNT = 5 +KEY = 0113b970fd34f2ce +IV = 059b5e0851cf143a +PLAINTEXT = 0000000000000000 + +COUNT = 6 +KEY = 0170f175468fb5e6 +IV = 0756d8e0774761d2 +PLAINTEXT = 0000000000000000 + +COUNT = 7 +KEY = 43297fad38e373fe +IV = 762514b829bf486a +PLAINTEXT = 0000000000000000 + +COUNT = 8 +KEY = 07a7137045da2a16 +IV = 3bdd119049372802 +PLAINTEXT = 0000000000000000 + +COUNT = 9 +KEY = 04689104c2fd3b2f +IV = 26955f6835af609a +PLAINTEXT = 0000000000000000 + +COUNT = 10 +KEY = 37d06bb516cb7546 +IV = 164d5e404f275232 +PLAINTEXT = 0000000000000000 + +COUNT = 11 +KEY = 1f08260d1ac2465e +IV = 6b056e18759f5cca +PLAINTEXT = 0000000000000000 + +COUNT = 12 +KEY = 584023641aba6176 +IV = 004bd6ef09176062 +PLAINTEXT = 0000000000000000 + +COUNT = 13 +KEY = 025816164629b007 +IV = 480d39006ee762f2 +PLAINTEXT = 0000000000000000 + +COUNT = 14 +KEY = 49793ebc79b3258f +IV = 437540c8698f3cfa +PLAINTEXT = 0000000000000000 + +COUNT = 15 +KEY = 4fb05e1515ab73a7 +IV = 072d43a077075292 +PLAINTEXT = 0000000000000000 + +COUNT = 16 +KEY = 49e95d6d4ca229bf +IV = 02fe55778117f12a +PLAINTEXT = 0000000000000000 + +COUNT = 17 +KEY = 018310dc409b26d6 +IV = 1d9d5c5018f728c2 +PLAINTEXT = 0000000000000000 + +COUNT = 18 +KEY = 1c587f1c13924fef +IV = 305532286d6f295a +PLAINTEXT = 0000000000000000 + + +[DECRYPT] +COUNT = 0 +KEY = 7ca110454a1a6e57 +IV = 01a1d6d039776742 +CIPHERTEXT = 0000000000000000 + +COUNT = 1 +KEY = 0131d9619dc1376e +IV = 5cd54ca83def57da +CIPHERTEXT = 0000000000000000 + +COUNT = 2 +KEY = 07a1133e4a0b2686 +IV = 0248d43806f67172 +CIPHERTEXT = 0000000000000000 + +COUNT = 3 +KEY = 3849674c2602319e +IV = 51454b582ddf440a +CIPHERTEXT = 0000000000000000 + +COUNT = 4 +KEY = 04b915ba43feb5b6 +IV = 42fd443059577fa2 +CIPHERTEXT = 0000000000000000 + +COUNT = 5 +KEY = 0113b970fd34f2ce +IV = 059b5e0851cf143a +CIPHERTEXT = 0000000000000000 + +COUNT = 6 +KEY = 0170f175468fb5e6 +IV = 0756d8e0774761d2 +CIPHERTEXT = 0000000000000000 + +COUNT = 7 +KEY = 43297fad38e373fe +IV = 762514b829bf486a +CIPHERTEXT = 0000000000000000 + +COUNT = 8 +KEY = 07a7137045da2a16 +IV = 3bdd119049372802 +CIPHERTEXT = 0000000000000000 + +COUNT = 9 +KEY = 04689104c2fd3b2f +IV = 26955f6835af609a +CIPHERTEXT = 0000000000000000 + +COUNT = 10 +KEY = 37d06bb516cb7546 +IV = 164d5e404f275232 +CIPHERTEXT = 0000000000000000 + +COUNT = 11 +KEY = 1f08260d1ac2465e +IV = 6b056e18759f5cca +CIPHERTEXT = 0000000000000000 + +COUNT = 12 +KEY = 584023641aba6176 +IV = 004bd6ef09176062 +CIPHERTEXT = 0000000000000000 + +COUNT = 13 +KEY = 025816164629b007 +IV = 480d39006ee762f2 +CIPHERTEXT = 0000000000000000 + +COUNT = 14 +KEY = 49793ebc79b3258f +IV = 437540c8698f3cfa +CIPHERTEXT = 0000000000000000 + +COUNT = 15 +KEY = 4fb05e1515ab73a7 +IV = 072d43a077075292 +CIPHERTEXT = 0000000000000000 + +COUNT = 16 +KEY = 49e95d6d4ca229bf +IV = 02fe55778117f12a +CIPHERTEXT = 0000000000000000 + +COUNT = 17 +KEY = 018310dc409b26d6 +IV = 1d9d5c5018f728c2 +CIPHERTEXT = 0000000000000000 + +COUNT = 18 +KEY = 1c587f1c13924fef +IV = 305532286d6f295a +CIPHERTEXT = 0000000000000000 diff --git a/fips/testvectors/des/req/CFB64varkey.req b/fips/testvectors/des/req/CFB64varkey.req new file mode 100644 index 0000000000..d2bf7727b2 --- /dev/null +++ b/fips/testvectors/des/req/CFB64varkey.req @@ -0,0 +1,568 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# VARIABLE KEY - KAT for CFB64 +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:52 PM + +[ENCRYPT] +COUNT = 0 +KEY = 8001010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 1 +KEY = 4001010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 2 +KEY = 2001010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 3 +KEY = 1001010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 4 +KEY = 0801010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 5 +KEY = 0401010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 6 +KEY = 0201010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 7 +KEY = 0180010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 8 +KEY = 0140010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 9 +KEY = 0120010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 10 +KEY = 0110010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 11 +KEY = 0108010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 12 +KEY = 0104010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 13 +KEY = 0102010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 14 +KEY = 0101800101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 15 +KEY = 0101400101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 16 +KEY = 0101200101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 17 +KEY = 0101100101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 18 +KEY = 0101080101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 19 +KEY = 0101040101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 20 +KEY = 0101020101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 21 +KEY = 0101018001010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 22 +KEY = 0101014001010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 23 +KEY = 0101012001010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 24 +KEY = 0101011001010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 25 +KEY = 0101010801010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 26 +KEY = 0101010401010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 27 +KEY = 0101010201010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 28 +KEY = 0101010180010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 29 +KEY = 0101010140010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 30 +KEY = 0101010120010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 31 +KEY = 0101010110010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 32 +KEY = 0101010108010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 33 +KEY = 0101010104010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 34 +KEY = 0101010102010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 35 +KEY = 0101010101800101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 36 +KEY = 0101010101400101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 37 +KEY = 0101010101200101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 38 +KEY = 0101010101100101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 39 +KEY = 0101010101080101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 40 +KEY = 0101010101040101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 41 +KEY = 0101010101020101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 42 +KEY = 0101010101018001 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 43 +KEY = 0101010101014001 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 44 +KEY = 0101010101012001 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 45 +KEY = 0101010101011001 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 46 +KEY = 0101010101010801 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 47 +KEY = 0101010101010401 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 48 +KEY = 0101010101010201 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 49 +KEY = 0101010101010180 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 50 +KEY = 0101010101010140 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 51 +KEY = 0101010101010120 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 52 +KEY = 0101010101010110 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 53 +KEY = 0101010101010108 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 54 +KEY = 0101010101010104 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 55 +KEY = 0101010101010102 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + + +[DECRYPT] +COUNT = 0 +KEY = 8001010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 1 +KEY = 4001010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 2 +KEY = 2001010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 3 +KEY = 1001010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 4 +KEY = 0801010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 5 +KEY = 0401010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 6 +KEY = 0201010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 7 +KEY = 0180010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 8 +KEY = 0140010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 9 +KEY = 0120010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 10 +KEY = 0110010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 11 +KEY = 0108010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 12 +KEY = 0104010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 13 +KEY = 0102010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 14 +KEY = 0101800101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 15 +KEY = 0101400101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 16 +KEY = 0101200101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 17 +KEY = 0101100101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 18 +KEY = 0101080101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 19 +KEY = 0101040101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 20 +KEY = 0101020101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 21 +KEY = 0101018001010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 22 +KEY = 0101014001010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 23 +KEY = 0101012001010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 24 +KEY = 0101011001010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 25 +KEY = 0101010801010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 26 +KEY = 0101010401010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 27 +KEY = 0101010201010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 28 +KEY = 0101010180010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 29 +KEY = 0101010140010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 30 +KEY = 0101010120010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 31 +KEY = 0101010110010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 32 +KEY = 0101010108010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 33 +KEY = 0101010104010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 34 +KEY = 0101010102010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 35 +KEY = 0101010101800101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 36 +KEY = 0101010101400101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 37 +KEY = 0101010101200101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 38 +KEY = 0101010101100101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 39 +KEY = 0101010101080101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 40 +KEY = 0101010101040101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 41 +KEY = 0101010101020101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 42 +KEY = 0101010101018001 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 43 +KEY = 0101010101014001 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 44 +KEY = 0101010101012001 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 45 +KEY = 0101010101011001 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 46 +KEY = 0101010101010801 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 47 +KEY = 0101010101010401 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 48 +KEY = 0101010101010201 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 49 +KEY = 0101010101010180 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 50 +KEY = 0101010101010140 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 51 +KEY = 0101010101010120 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 52 +KEY = 0101010101010110 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 53 +KEY = 0101010101010108 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 54 +KEY = 0101010101010104 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 55 +KEY = 0101010101010102 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 diff --git a/fips/testvectors/des/req/CFB64vartext.req b/fips/testvectors/des/req/CFB64vartext.req new file mode 100644 index 0000000000..7baed20b57 --- /dev/null +++ b/fips/testvectors/des/req/CFB64vartext.req @@ -0,0 +1,648 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# VARIABLE PLAINTEXT/CIPHERTEXT - KAT for CFB64 +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 8000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 1 +KEY = 0101010101010101 +IV = 4000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 2 +KEY = 0101010101010101 +IV = 2000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 3 +KEY = 0101010101010101 +IV = 1000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 4 +KEY = 0101010101010101 +IV = 0800000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 5 +KEY = 0101010101010101 +IV = 0400000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 6 +KEY = 0101010101010101 +IV = 0200000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 7 +KEY = 0101010101010101 +IV = 0100000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 8 +KEY = 0101010101010101 +IV = 0080000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 9 +KEY = 0101010101010101 +IV = 0040000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 10 +KEY = 0101010101010101 +IV = 0020000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 11 +KEY = 0101010101010101 +IV = 0010000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 12 +KEY = 0101010101010101 +IV = 0008000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 13 +KEY = 0101010101010101 +IV = 0004000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 14 +KEY = 0101010101010101 +IV = 0002000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 15 +KEY = 0101010101010101 +IV = 0001000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000800000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000400000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000200000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000100000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000080000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000040000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000020000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000010000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000008000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000004000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000002000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000001000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000800000000 +PLAINTEXT = 0000000000000000 + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000400000000 +PLAINTEXT = 0000000000000000 + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000200000000 +PLAINTEXT = 0000000000000000 + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000100000000 +PLAINTEXT = 0000000000000000 + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000080000000 +PLAINTEXT = 0000000000000000 + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000040000000 +PLAINTEXT = 0000000000000000 + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000020000000 +PLAINTEXT = 0000000000000000 + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000010000000 +PLAINTEXT = 0000000000000000 + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000008000000 +PLAINTEXT = 0000000000000000 + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000004000000 +PLAINTEXT = 0000000000000000 + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000002000000 +PLAINTEXT = 0000000000000000 + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000001000000 +PLAINTEXT = 0000000000000000 + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000800000 +PLAINTEXT = 0000000000000000 + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000400000 +PLAINTEXT = 0000000000000000 + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000200000 +PLAINTEXT = 0000000000000000 + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000100000 +PLAINTEXT = 0000000000000000 + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000080000 +PLAINTEXT = 0000000000000000 + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000040000 +PLAINTEXT = 0000000000000000 + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000020000 +PLAINTEXT = 0000000000000000 + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000010000 +PLAINTEXT = 0000000000000000 + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000008000 +PLAINTEXT = 0000000000000000 + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000004000 +PLAINTEXT = 0000000000000000 + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000002000 +PLAINTEXT = 0000000000000000 + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000001000 +PLAINTEXT = 0000000000000000 + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000800 +PLAINTEXT = 0000000000000000 + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000400 +PLAINTEXT = 0000000000000000 + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000200 +PLAINTEXT = 0000000000000000 + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000100 +PLAINTEXT = 0000000000000000 + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000080 +PLAINTEXT = 0000000000000000 + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000040 +PLAINTEXT = 0000000000000000 + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000020 +PLAINTEXT = 0000000000000000 + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000010 +PLAINTEXT = 0000000000000000 + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000008 +PLAINTEXT = 0000000000000000 + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000004 +PLAINTEXT = 0000000000000000 + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000002 +PLAINTEXT = 0000000000000000 + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000001 +PLAINTEXT = 0000000000000000 + + +[DECRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 8000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 1 +KEY = 0101010101010101 +IV = 4000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 2 +KEY = 0101010101010101 +IV = 2000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 3 +KEY = 0101010101010101 +IV = 1000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 4 +KEY = 0101010101010101 +IV = 0800000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 5 +KEY = 0101010101010101 +IV = 0400000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 6 +KEY = 0101010101010101 +IV = 0200000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 7 +KEY = 0101010101010101 +IV = 0100000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 8 +KEY = 0101010101010101 +IV = 0080000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 9 +KEY = 0101010101010101 +IV = 0040000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 10 +KEY = 0101010101010101 +IV = 0020000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 11 +KEY = 0101010101010101 +IV = 0010000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 12 +KEY = 0101010101010101 +IV = 0008000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 13 +KEY = 0101010101010101 +IV = 0004000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 14 +KEY = 0101010101010101 +IV = 0002000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 15 +KEY = 0101010101010101 +IV = 0001000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000800000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000400000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000200000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000100000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000080000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000040000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000020000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000010000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000008000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000004000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000002000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000001000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000800000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000400000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000200000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000100000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000080000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000040000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000020000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000010000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000008000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000004000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000002000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000001000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000800000 +CIPHERTEXT = 0000000000000000 + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000400000 +CIPHERTEXT = 0000000000000000 + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000200000 +CIPHERTEXT = 0000000000000000 + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000100000 +CIPHERTEXT = 0000000000000000 + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000080000 +CIPHERTEXT = 0000000000000000 + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000040000 +CIPHERTEXT = 0000000000000000 + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000020000 +CIPHERTEXT = 0000000000000000 + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000010000 +CIPHERTEXT = 0000000000000000 + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000008000 +CIPHERTEXT = 0000000000000000 + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000004000 +CIPHERTEXT = 0000000000000000 + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000002000 +CIPHERTEXT = 0000000000000000 + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000001000 +CIPHERTEXT = 0000000000000000 + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000800 +CIPHERTEXT = 0000000000000000 + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000400 +CIPHERTEXT = 0000000000000000 + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000200 +CIPHERTEXT = 0000000000000000 + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000100 +CIPHERTEXT = 0000000000000000 + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000080 +CIPHERTEXT = 0000000000000000 + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000040 +CIPHERTEXT = 0000000000000000 + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000020 +CIPHERTEXT = 0000000000000000 + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000010 +CIPHERTEXT = 0000000000000000 + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000008 +CIPHERTEXT = 0000000000000000 + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000004 +CIPHERTEXT = 0000000000000000 + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000002 +CIPHERTEXT = 0000000000000000 + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000001 +CIPHERTEXT = 0000000000000000 diff --git a/fips/testvectors/des/req/CFB8MMT.req b/fips/testvectors/des/req/CFB8MMT.req new file mode 100644 index 0000000000..1f29798efe --- /dev/null +++ b/fips/testvectors/des/req/CFB8MMT.req @@ -0,0 +1,109 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# DES Multi Block Message Test for CFB8 +# State : Encrypt and Decrypt +# Tue Jun 24 03:13:00 PM + +[ENCRYPT] + +COUNT = 0 +KEY = b0ba3719ecb66b46 +IV = dfbf15e1062a751d +PLAINTEXT = a4 + +COUNT = 1 +KEY = 0862e3efa1b5ea1f +IV = 31c349f7613537a6 +PLAINTEXT = 1102 + +COUNT = 2 +KEY = d6a4f2c254103d80 +IV = f58c9293054006c2 +PLAINTEXT = 9e9376 + +COUNT = 3 +KEY = 4ceaf7d616e5437f +IV = 30e817f7bb38966a +PLAINTEXT = 48a5db84 + +COUNT = 4 +KEY = a2687ccb295e40cd +IV = e3b6f778daf22490 +PLAINTEXT = 5f4e8930e5 + +COUNT = 5 +KEY = 3843f1b95e259431 +IV = bc7280f913df20a5 +PLAINTEXT = 157dbe3afd3f + +COUNT = 6 +KEY = 0b68896b25516834 +IV = 152b9836d6fb2f97 +PLAINTEXT = 0b166361236011 + +COUNT = 7 +KEY = 6831808f9e2cf249 +IV = cef6fbe5eb7d090e +PLAINTEXT = b9a40efe96c8af34 + +COUNT = 8 +KEY = 5eb0258558675237 +IV = 3196eb0d31589e4e +PLAINTEXT = 740304a6c3912bff8c + +COUNT = 9 +KEY = 168558ef97514380 +IV = 48d71fdc9a70ebf4 +PLAINTEXT = 107961715521427d61aa + +[DECRYPT] + +COUNT = 0 +KEY = a225d0ec2315fdb5 +IV = 92ed9b845dc8904a +CIPHERTEXT = dc + +COUNT = 1 +KEY = 9238e00b4ac751a8 +IV = 681d64c6a9d600df +CIPHERTEXT = 4135 + +COUNT = 2 +KEY = 3eb37ca1d9b63d32 +IV = 0c20eb65969c6a4d +CIPHERTEXT = 04ed83 + +COUNT = 3 +KEY = 0ec4ecc4bc029dbc +IV = 649691d69522d0b5 +CIPHERTEXT = dc848878 + +COUNT = 4 +KEY = b51a49d56d9e011c +IV = 1658f62005d8c8f0 +CIPHERTEXT = a71318db10 + +COUNT = 5 +KEY = b3ce52e5bcba9e0e +IV = 077e230bff8e4fad +CIPHERTEXT = a307e270dc04 + +COUNT = 6 +KEY = ba5e6b13a476ce15 +IV = f1844870d09c25af +CIPHERTEXT = 0f8041f36914db + +COUNT = 7 +KEY = 6849ce76c23d1a49 +IV = 50b862f20c0d1315 +CIPHERTEXT = d01d6c8cf689cace + +COUNT = 8 +KEY = ae5208f81c45c743 +IV = fd69e855c304912e +CIPHERTEXT = d77e318fbf46a12d62 + +COUNT = 9 +KEY = df75ce5b192cb5bf +IV = 1a5e4623c36b49dc +CIPHERTEXT = a0ea3d9f98c4a9b0a41a diff --git a/fips/testvectors/des/req/CFB8Monte.req b/fips/testvectors/des/req/CFB8Monte.req new file mode 100644 index 0000000000..2df527f815 --- /dev/null +++ b/fips/testvectors/des/req/CFB8Monte.req @@ -0,0 +1,17 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# DES Monte Carlo (Modes) Test for CFB8 +# State : Encrypt and Decrypt +# Tue Jun 24 03:13:00 PM + +[ENCRYPT] +KEY = 64102f5b75b507d5 +IV = 626e2715ecb2f12d +PLAINTEXT = fc + + +[DECRYPT] +KEY = 6bab1f1f3419ab26 +IV = 86e32d9e0f5dc507 +CIPHERTEXT = d9 + diff --git a/fips/testvectors/des/req/CFB8invperm.req b/fips/testvectors/des/req/CFB8invperm.req new file mode 100644 index 0000000000..043ed680d6 --- /dev/null +++ b/fips/testvectors/des/req/CFB8invperm.req @@ -0,0 +1,648 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# INVERSE PERMUTATION - KAT for CFB8 +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 8000000000000000 +PLAINTEXT = 95 + +COUNT = 1 +KEY = 0101010101010101 +IV = 4000000000000000 +PLAINTEXT = dd + +COUNT = 2 +KEY = 0101010101010101 +IV = 2000000000000000 +PLAINTEXT = 2e + +COUNT = 3 +KEY = 0101010101010101 +IV = 1000000000000000 +PLAINTEXT = 4b + +COUNT = 4 +KEY = 0101010101010101 +IV = 0800000000000000 +PLAINTEXT = 20 + +COUNT = 5 +KEY = 0101010101010101 +IV = 0400000000000000 +PLAINTEXT = 55 + +COUNT = 6 +KEY = 0101010101010101 +IV = 0200000000000000 +PLAINTEXT = 6c + +COUNT = 7 +KEY = 0101010101010101 +IV = 0100000000000000 +PLAINTEXT = 0d + +COUNT = 8 +KEY = 0101010101010101 +IV = 0080000000000000 +PLAINTEXT = d9 + +COUNT = 9 +KEY = 0101010101010101 +IV = 0040000000000000 +PLAINTEXT = 42 + +COUNT = 10 +KEY = 0101010101010101 +IV = 0020000000000000 +PLAINTEXT = b8 + +COUNT = 11 +KEY = 0101010101010101 +IV = 0010000000000000 +PLAINTEXT = f1 + +COUNT = 12 +KEY = 0101010101010101 +IV = 0008000000000000 +PLAINTEXT = ad + +COUNT = 13 +KEY = 0101010101010101 +IV = 0004000000000000 +PLAINTEXT = e6 + +COUNT = 14 +KEY = 0101010101010101 +IV = 0002000000000000 +PLAINTEXT = ec + +COUNT = 15 +KEY = 0101010101010101 +IV = 0001000000000000 +PLAINTEXT = f3 + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000800000000000 +PLAINTEXT = 2b + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000400000000000 +PLAINTEXT = 88 + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000200000000000 +PLAINTEXT = e1 + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000100000000000 +PLAINTEXT = 32 + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000080000000000 +PLAINTEXT = e7 + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000040000000000 +PLAINTEXT = 12 + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000020000000000 +PLAINTEXT = a4 + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000010000000000 +PLAINTEXT = fb + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000008000000000 +PLAINTEXT = 75 + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000004000000000 +PLAINTEXT = 64 + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000002000000000 +PLAINTEXT = f0 + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000001000000000 +PLAINTEXT = 9d + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000800000000 +PLAINTEXT = d1 + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000400000000 +PLAINTEXT = e1 + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000200000000 +PLAINTEXT = e4 + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000100000000 +PLAINTEXT = ae + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000080000000 +PLAINTEXT = e9 + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000040000000 +PLAINTEXT = df + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000020000000 +PLAINTEXT = b1 + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000010000000 +PLAINTEXT = fa + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000008000000 +PLAINTEXT = ca + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000004000000 +PLAINTEXT = 5e + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000002000000 +PLAINTEXT = 81 + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000001000000 +PLAINTEXT = 4d + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000800000 +PLAINTEXT = 25 + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000400000 +PLAINTEXT = ab + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000200000 +PLAINTEXT = 79 + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000100000 +PLAINTEXT = 86 + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000080000 +PLAINTEXT = 8b + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000040000 +PLAINTEXT = ea + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000020000 +PLAINTEXT = ca + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000010000 +PLAINTEXT = 8d + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000008000 +PLAINTEXT = 10 + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000004000 +PLAINTEXT = 5d + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000002000 +PLAINTEXT = 1d + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000001000 +PLAINTEXT = ce + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000800 +PLAINTEXT = 84 + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000400 +PLAINTEXT = e6 + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000200 +PLAINTEXT = 48 + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000100 +PLAINTEXT = dd + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000080 +PLAINTEXT = 2f + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000040 +PLAINTEXT = e0 + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000020 +PLAINTEXT = 09 + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000010 +PLAINTEXT = 5b + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000008 +PLAINTEXT = cc + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000004 +PLAINTEXT = d2 + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000002 +PLAINTEXT = 06 + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000001 +PLAINTEXT = 16 + + +[DECRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 8000000000000000 +CIPHERTEXT = 95 + +COUNT = 1 +KEY = 0101010101010101 +IV = 4000000000000000 +CIPHERTEXT = dd + +COUNT = 2 +KEY = 0101010101010101 +IV = 2000000000000000 +CIPHERTEXT = 2e + +COUNT = 3 +KEY = 0101010101010101 +IV = 1000000000000000 +CIPHERTEXT = 4b + +COUNT = 4 +KEY = 0101010101010101 +IV = 0800000000000000 +CIPHERTEXT = 20 + +COUNT = 5 +KEY = 0101010101010101 +IV = 0400000000000000 +CIPHERTEXT = 55 + +COUNT = 6 +KEY = 0101010101010101 +IV = 0200000000000000 +CIPHERTEXT = 6c + +COUNT = 7 +KEY = 0101010101010101 +IV = 0100000000000000 +CIPHERTEXT = 0d + +COUNT = 8 +KEY = 0101010101010101 +IV = 0080000000000000 +CIPHERTEXT = d9 + +COUNT = 9 +KEY = 0101010101010101 +IV = 0040000000000000 +CIPHERTEXT = 42 + +COUNT = 10 +KEY = 0101010101010101 +IV = 0020000000000000 +CIPHERTEXT = b8 + +COUNT = 11 +KEY = 0101010101010101 +IV = 0010000000000000 +CIPHERTEXT = f1 + +COUNT = 12 +KEY = 0101010101010101 +IV = 0008000000000000 +CIPHERTEXT = ad + +COUNT = 13 +KEY = 0101010101010101 +IV = 0004000000000000 +CIPHERTEXT = e6 + +COUNT = 14 +KEY = 0101010101010101 +IV = 0002000000000000 +CIPHERTEXT = ec + +COUNT = 15 +KEY = 0101010101010101 +IV = 0001000000000000 +CIPHERTEXT = f3 + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000800000000000 +CIPHERTEXT = 2b + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000400000000000 +CIPHERTEXT = 88 + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000200000000000 +CIPHERTEXT = e1 + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000100000000000 +CIPHERTEXT = 32 + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000080000000000 +CIPHERTEXT = e7 + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000040000000000 +CIPHERTEXT = 12 + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000020000000000 +CIPHERTEXT = a4 + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000010000000000 +CIPHERTEXT = fb + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000008000000000 +CIPHERTEXT = 75 + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000004000000000 +CIPHERTEXT = 64 + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000002000000000 +CIPHERTEXT = f0 + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000001000000000 +CIPHERTEXT = 9d + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000800000000 +CIPHERTEXT = d1 + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000400000000 +CIPHERTEXT = e1 + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000200000000 +CIPHERTEXT = e4 + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000100000000 +CIPHERTEXT = ae + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000080000000 +CIPHERTEXT = e9 + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000040000000 +CIPHERTEXT = df + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000020000000 +CIPHERTEXT = b1 + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000010000000 +CIPHERTEXT = fa + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000008000000 +CIPHERTEXT = ca + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000004000000 +CIPHERTEXT = 5e + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000002000000 +CIPHERTEXT = 81 + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000001000000 +CIPHERTEXT = 4d + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000800000 +CIPHERTEXT = 25 + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000400000 +CIPHERTEXT = ab + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000200000 +CIPHERTEXT = 79 + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000100000 +CIPHERTEXT = 86 + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000080000 +CIPHERTEXT = 8b + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000040000 +CIPHERTEXT = ea + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000020000 +CIPHERTEXT = ca + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000010000 +CIPHERTEXT = 8d + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000008000 +CIPHERTEXT = 10 + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000004000 +CIPHERTEXT = 5d + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000002000 +CIPHERTEXT = 1d + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000001000 +CIPHERTEXT = ce + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000800 +CIPHERTEXT = 84 + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000400 +CIPHERTEXT = e6 + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000200 +CIPHERTEXT = 48 + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000100 +CIPHERTEXT = dd + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000080 +CIPHERTEXT = 2f + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000040 +CIPHERTEXT = e0 + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000020 +CIPHERTEXT = 09 + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000010 +CIPHERTEXT = 5b + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000008 +CIPHERTEXT = cc + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000004 +CIPHERTEXT = d2 + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000002 +CIPHERTEXT = 06 + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000001 +CIPHERTEXT = 16 diff --git a/fips/testvectors/des/req/CFB8permop.req b/fips/testvectors/des/req/CFB8permop.req new file mode 100644 index 0000000000..bef0ad0b23 --- /dev/null +++ b/fips/testvectors/des/req/CFB8permop.req @@ -0,0 +1,328 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# PERMUTATION OPERATION - KAT for CFB8 +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 1046913489980131 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 1 +KEY = 1007103489988020 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 2 +KEY = 10071034c8980120 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 3 +KEY = 1046103489988020 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 4 +KEY = 1086911519190101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 5 +KEY = 1086911519580101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 6 +KEY = 5107b01519580101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 7 +KEY = 1007b01519190101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 8 +KEY = 3107915498080101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 9 +KEY = 3107919498080101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 10 +KEY = 10079115b9080140 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 11 +KEY = 3107911598080140 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 12 +KEY = 1007d01589980101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 13 +KEY = 9107911589980101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 14 +KEY = 9107d01589190101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 15 +KEY = 1007d01598980120 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 16 +KEY = 1007940498190101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 17 +KEY = 0107910491190401 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 18 +KEY = 0107910491190101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 19 +KEY = 0107940491190401 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 20 +KEY = 19079210981a0101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 21 +KEY = 1007911998190801 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 22 +KEY = 10079119981a0801 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 23 +KEY = 1007921098190101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 24 +KEY = 100791159819010b +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 25 +KEY = 1004801598190101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 26 +KEY = 1004801598190102 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 27 +KEY = 1004801598190108 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 28 +KEY = 1002911598100104 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 29 +KEY = 1002911598190104 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 30 +KEY = 1002911598100201 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 31 +KEY = 1002911698100101 +IV = 0000000000000000 +PLAINTEXT = 00 + + +[DECRYPT] +COUNT = 0 +KEY = 1046913489980131 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 1 +KEY = 1007103489988020 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 2 +KEY = 10071034c8980120 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 3 +KEY = 1046103489988020 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 4 +KEY = 1086911519190101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 5 +KEY = 1086911519580101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 6 +KEY = 5107b01519580101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 7 +KEY = 1007b01519190101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 8 +KEY = 3107915498080101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 9 +KEY = 3107919498080101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 10 +KEY = 10079115b9080140 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 11 +KEY = 3107911598080140 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 12 +KEY = 1007d01589980101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 13 +KEY = 9107911589980101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 14 +KEY = 9107d01589190101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 15 +KEY = 1007d01598980120 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 16 +KEY = 1007940498190101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 17 +KEY = 0107910491190401 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 18 +KEY = 0107910491190101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 19 +KEY = 0107940491190401 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 20 +KEY = 19079210981a0101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 21 +KEY = 1007911998190801 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 22 +KEY = 10079119981a0801 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 23 +KEY = 1007921098190101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 24 +KEY = 100791159819010b +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 25 +KEY = 1004801598190101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 26 +KEY = 1004801598190102 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 27 +KEY = 1004801598190108 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 28 +KEY = 1002911598100104 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 29 +KEY = 1002911598190104 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 30 +KEY = 1002911598100201 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 31 +KEY = 1002911698100101 +IV = 0000000000000000 +CIPHERTEXT = 00 diff --git a/fips/testvectors/des/req/CFB8subtab.req b/fips/testvectors/des/req/CFB8subtab.req new file mode 100644 index 0000000000..4582c30864 --- /dev/null +++ b/fips/testvectors/des/req/CFB8subtab.req @@ -0,0 +1,198 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# SUBSTITUTION TABLE - KAT for CFB8 +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 7ca110454a1a6e57 +IV = 01a1d6d039776742 +PLAINTEXT = 00 + +COUNT = 1 +KEY = 0131d9619dc1376e +IV = 5cd54ca83def57da +PLAINTEXT = 00 + +COUNT = 2 +KEY = 07a1133e4a0b2686 +IV = 0248d43806f67172 +PLAINTEXT = 00 + +COUNT = 3 +KEY = 3849674c2602319e +IV = 51454b582ddf440a +PLAINTEXT = 00 + +COUNT = 4 +KEY = 04b915ba43feb5b6 +IV = 42fd443059577fa2 +PLAINTEXT = 00 + +COUNT = 5 +KEY = 0113b970fd34f2ce +IV = 059b5e0851cf143a +PLAINTEXT = 00 + +COUNT = 6 +KEY = 0170f175468fb5e6 +IV = 0756d8e0774761d2 +PLAINTEXT = 00 + +COUNT = 7 +KEY = 43297fad38e373fe +IV = 762514b829bf486a +PLAINTEXT = 00 + +COUNT = 8 +KEY = 07a7137045da2a16 +IV = 3bdd119049372802 +PLAINTEXT = 00 + +COUNT = 9 +KEY = 04689104c2fd3b2f +IV = 26955f6835af609a +PLAINTEXT = 00 + +COUNT = 10 +KEY = 37d06bb516cb7546 +IV = 164d5e404f275232 +PLAINTEXT = 00 + +COUNT = 11 +KEY = 1f08260d1ac2465e +IV = 6b056e18759f5cca +PLAINTEXT = 00 + +COUNT = 12 +KEY = 584023641aba6176 +IV = 004bd6ef09176062 +PLAINTEXT = 00 + +COUNT = 13 +KEY = 025816164629b007 +IV = 480d39006ee762f2 +PLAINTEXT = 00 + +COUNT = 14 +KEY = 49793ebc79b3258f +IV = 437540c8698f3cfa +PLAINTEXT = 00 + +COUNT = 15 +KEY = 4fb05e1515ab73a7 +IV = 072d43a077075292 +PLAINTEXT = 00 + +COUNT = 16 +KEY = 49e95d6d4ca229bf +IV = 02fe55778117f12a +PLAINTEXT = 00 + +COUNT = 17 +KEY = 018310dc409b26d6 +IV = 1d9d5c5018f728c2 +PLAINTEXT = 00 + +COUNT = 18 +KEY = 1c587f1c13924fef +IV = 305532286d6f295a +PLAINTEXT = 00 + + +[DECRYPT] +COUNT = 0 +KEY = 7ca110454a1a6e57 +IV = 01a1d6d039776742 +CIPHERTEXT = 00 + +COUNT = 1 +KEY = 0131d9619dc1376e +IV = 5cd54ca83def57da +CIPHERTEXT = 00 + +COUNT = 2 +KEY = 07a1133e4a0b2686 +IV = 0248d43806f67172 +CIPHERTEXT = 00 + +COUNT = 3 +KEY = 3849674c2602319e +IV = 51454b582ddf440a +CIPHERTEXT = 00 + +COUNT = 4 +KEY = 04b915ba43feb5b6 +IV = 42fd443059577fa2 +CIPHERTEXT = 00 + +COUNT = 5 +KEY = 0113b970fd34f2ce +IV = 059b5e0851cf143a +CIPHERTEXT = 00 + +COUNT = 6 +KEY = 0170f175468fb5e6 +IV = 0756d8e0774761d2 +CIPHERTEXT = 00 + +COUNT = 7 +KEY = 43297fad38e373fe +IV = 762514b829bf486a +CIPHERTEXT = 00 + +COUNT = 8 +KEY = 07a7137045da2a16 +IV = 3bdd119049372802 +CIPHERTEXT = 00 + +COUNT = 9 +KEY = 04689104c2fd3b2f +IV = 26955f6835af609a +CIPHERTEXT = 00 + +COUNT = 10 +KEY = 37d06bb516cb7546 +IV = 164d5e404f275232 +CIPHERTEXT = 00 + +COUNT = 11 +KEY = 1f08260d1ac2465e +IV = 6b056e18759f5cca +CIPHERTEXT = 00 + +COUNT = 12 +KEY = 584023641aba6176 +IV = 004bd6ef09176062 +CIPHERTEXT = 00 + +COUNT = 13 +KEY = 025816164629b007 +IV = 480d39006ee762f2 +CIPHERTEXT = 00 + +COUNT = 14 +KEY = 49793ebc79b3258f +IV = 437540c8698f3cfa +CIPHERTEXT = 00 + +COUNT = 15 +KEY = 4fb05e1515ab73a7 +IV = 072d43a077075292 +CIPHERTEXT = 00 + +COUNT = 16 +KEY = 49e95d6d4ca229bf +IV = 02fe55778117f12a +CIPHERTEXT = 00 + +COUNT = 17 +KEY = 018310dc409b26d6 +IV = 1d9d5c5018f728c2 +CIPHERTEXT = 00 + +COUNT = 18 +KEY = 1c587f1c13924fef +IV = 305532286d6f295a +CIPHERTEXT = 00 diff --git a/fips/testvectors/des/req/CFB8varkey.req b/fips/testvectors/des/req/CFB8varkey.req new file mode 100644 index 0000000000..3888233e08 --- /dev/null +++ b/fips/testvectors/des/req/CFB8varkey.req @@ -0,0 +1,568 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# VARIABLE KEY - KAT for CFB8 +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 8001010101010101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 1 +KEY = 4001010101010101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 2 +KEY = 2001010101010101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 3 +KEY = 1001010101010101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 4 +KEY = 0801010101010101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 5 +KEY = 0401010101010101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 6 +KEY = 0201010101010101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 7 +KEY = 0180010101010101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 8 +KEY = 0140010101010101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 9 +KEY = 0120010101010101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 10 +KEY = 0110010101010101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 11 +KEY = 0108010101010101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 12 +KEY = 0104010101010101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 13 +KEY = 0102010101010101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 14 +KEY = 0101800101010101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 15 +KEY = 0101400101010101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 16 +KEY = 0101200101010101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 17 +KEY = 0101100101010101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 18 +KEY = 0101080101010101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 19 +KEY = 0101040101010101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 20 +KEY = 0101020101010101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 21 +KEY = 0101018001010101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 22 +KEY = 0101014001010101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 23 +KEY = 0101012001010101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 24 +KEY = 0101011001010101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 25 +KEY = 0101010801010101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 26 +KEY = 0101010401010101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 27 +KEY = 0101010201010101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 28 +KEY = 0101010180010101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 29 +KEY = 0101010140010101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 30 +KEY = 0101010120010101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 31 +KEY = 0101010110010101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 32 +KEY = 0101010108010101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 33 +KEY = 0101010104010101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 34 +KEY = 0101010102010101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 35 +KEY = 0101010101800101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 36 +KEY = 0101010101400101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 37 +KEY = 0101010101200101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 38 +KEY = 0101010101100101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 39 +KEY = 0101010101080101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 40 +KEY = 0101010101040101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 41 +KEY = 0101010101020101 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 42 +KEY = 0101010101018001 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 43 +KEY = 0101010101014001 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 44 +KEY = 0101010101012001 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 45 +KEY = 0101010101011001 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 46 +KEY = 0101010101010801 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 47 +KEY = 0101010101010401 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 48 +KEY = 0101010101010201 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 49 +KEY = 0101010101010180 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 50 +KEY = 0101010101010140 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 51 +KEY = 0101010101010120 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 52 +KEY = 0101010101010110 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 53 +KEY = 0101010101010108 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 54 +KEY = 0101010101010104 +IV = 0000000000000000 +PLAINTEXT = 00 + +COUNT = 55 +KEY = 0101010101010102 +IV = 0000000000000000 +PLAINTEXT = 00 + + +[DECRYPT] +COUNT = 0 +KEY = 8001010101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 1 +KEY = 4001010101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 2 +KEY = 2001010101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 3 +KEY = 1001010101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 4 +KEY = 0801010101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 5 +KEY = 0401010101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 6 +KEY = 0201010101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 7 +KEY = 0180010101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 8 +KEY = 0140010101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 9 +KEY = 0120010101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 10 +KEY = 0110010101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 11 +KEY = 0108010101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 12 +KEY = 0104010101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 13 +KEY = 0102010101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 14 +KEY = 0101800101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 15 +KEY = 0101400101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 16 +KEY = 0101200101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 17 +KEY = 0101100101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 18 +KEY = 0101080101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 19 +KEY = 0101040101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 20 +KEY = 0101020101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 21 +KEY = 0101018001010101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 22 +KEY = 0101014001010101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 23 +KEY = 0101012001010101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 24 +KEY = 0101011001010101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 25 +KEY = 0101010801010101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 26 +KEY = 0101010401010101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 27 +KEY = 0101010201010101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 28 +KEY = 0101010180010101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 29 +KEY = 0101010140010101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 30 +KEY = 0101010120010101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 31 +KEY = 0101010110010101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 32 +KEY = 0101010108010101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 33 +KEY = 0101010104010101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 34 +KEY = 0101010102010101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 35 +KEY = 0101010101800101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 36 +KEY = 0101010101400101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 37 +KEY = 0101010101200101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 38 +KEY = 0101010101100101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 39 +KEY = 0101010101080101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 40 +KEY = 0101010101040101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 41 +KEY = 0101010101020101 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 42 +KEY = 0101010101018001 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 43 +KEY = 0101010101014001 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 44 +KEY = 0101010101012001 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 45 +KEY = 0101010101011001 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 46 +KEY = 0101010101010801 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 47 +KEY = 0101010101010401 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 48 +KEY = 0101010101010201 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 49 +KEY = 0101010101010180 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 50 +KEY = 0101010101010140 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 51 +KEY = 0101010101010120 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 52 +KEY = 0101010101010110 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 53 +KEY = 0101010101010108 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 54 +KEY = 0101010101010104 +IV = 0000000000000000 +CIPHERTEXT = 00 + +COUNT = 55 +KEY = 0101010101010102 +IV = 0000000000000000 +CIPHERTEXT = 00 diff --git a/fips/testvectors/des/req/CFB8vartext.req b/fips/testvectors/des/req/CFB8vartext.req new file mode 100644 index 0000000000..c969c710d0 --- /dev/null +++ b/fips/testvectors/des/req/CFB8vartext.req @@ -0,0 +1,648 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# VARIABLE PLAINTEXT/CIPHERTEXT - KAT for CFB8 +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 8000000000000000 +PLAINTEXT = 00 + +COUNT = 1 +KEY = 0101010101010101 +IV = 4000000000000000 +PLAINTEXT = 00 + +COUNT = 2 +KEY = 0101010101010101 +IV = 2000000000000000 +PLAINTEXT = 00 + +COUNT = 3 +KEY = 0101010101010101 +IV = 1000000000000000 +PLAINTEXT = 00 + +COUNT = 4 +KEY = 0101010101010101 +IV = 0800000000000000 +PLAINTEXT = 00 + +COUNT = 5 +KEY = 0101010101010101 +IV = 0400000000000000 +PLAINTEXT = 00 + +COUNT = 6 +KEY = 0101010101010101 +IV = 0200000000000000 +PLAINTEXT = 00 + +COUNT = 7 +KEY = 0101010101010101 +IV = 0100000000000000 +PLAINTEXT = 00 + +COUNT = 8 +KEY = 0101010101010101 +IV = 0080000000000000 +PLAINTEXT = 00 + +COUNT = 9 +KEY = 0101010101010101 +IV = 0040000000000000 +PLAINTEXT = 00 + +COUNT = 10 +KEY = 0101010101010101 +IV = 0020000000000000 +PLAINTEXT = 00 + +COUNT = 11 +KEY = 0101010101010101 +IV = 0010000000000000 +PLAINTEXT = 00 + +COUNT = 12 +KEY = 0101010101010101 +IV = 0008000000000000 +PLAINTEXT = 00 + +COUNT = 13 +KEY = 0101010101010101 +IV = 0004000000000000 +PLAINTEXT = 00 + +COUNT = 14 +KEY = 0101010101010101 +IV = 0002000000000000 +PLAINTEXT = 00 + +COUNT = 15 +KEY = 0101010101010101 +IV = 0001000000000000 +PLAINTEXT = 00 + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000800000000000 +PLAINTEXT = 00 + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000400000000000 +PLAINTEXT = 00 + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000200000000000 +PLAINTEXT = 00 + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000100000000000 +PLAINTEXT = 00 + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000080000000000 +PLAINTEXT = 00 + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000040000000000 +PLAINTEXT = 00 + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000020000000000 +PLAINTEXT = 00 + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000010000000000 +PLAINTEXT = 00 + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000008000000000 +PLAINTEXT = 00 + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000004000000000 +PLAINTEXT = 00 + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000002000000000 +PLAINTEXT = 00 + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000001000000000 +PLAINTEXT = 00 + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000800000000 +PLAINTEXT = 00 + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000400000000 +PLAINTEXT = 00 + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000200000000 +PLAINTEXT = 00 + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000100000000 +PLAINTEXT = 00 + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000080000000 +PLAINTEXT = 00 + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000040000000 +PLAINTEXT = 00 + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000020000000 +PLAINTEXT = 00 + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000010000000 +PLAINTEXT = 00 + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000008000000 +PLAINTEXT = 00 + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000004000000 +PLAINTEXT = 00 + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000002000000 +PLAINTEXT = 00 + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000001000000 +PLAINTEXT = 00 + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000800000 +PLAINTEXT = 00 + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000400000 +PLAINTEXT = 00 + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000200000 +PLAINTEXT = 00 + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000100000 +PLAINTEXT = 00 + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000080000 +PLAINTEXT = 00 + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000040000 +PLAINTEXT = 00 + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000020000 +PLAINTEXT = 00 + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000010000 +PLAINTEXT = 00 + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000008000 +PLAINTEXT = 00 + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000004000 +PLAINTEXT = 00 + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000002000 +PLAINTEXT = 00 + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000001000 +PLAINTEXT = 00 + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000800 +PLAINTEXT = 00 + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000400 +PLAINTEXT = 00 + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000200 +PLAINTEXT = 00 + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000100 +PLAINTEXT = 00 + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000080 +PLAINTEXT = 00 + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000040 +PLAINTEXT = 00 + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000020 +PLAINTEXT = 00 + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000010 +PLAINTEXT = 00 + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000008 +PLAINTEXT = 00 + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000004 +PLAINTEXT = 00 + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000002 +PLAINTEXT = 00 + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000001 +PLAINTEXT = 00 + + +[DECRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 8000000000000000 +CIPHERTEXT = 00 + +COUNT = 1 +KEY = 0101010101010101 +IV = 4000000000000000 +CIPHERTEXT = 00 + +COUNT = 2 +KEY = 0101010101010101 +IV = 2000000000000000 +CIPHERTEXT = 00 + +COUNT = 3 +KEY = 0101010101010101 +IV = 1000000000000000 +CIPHERTEXT = 00 + +COUNT = 4 +KEY = 0101010101010101 +IV = 0800000000000000 +CIPHERTEXT = 00 + +COUNT = 5 +KEY = 0101010101010101 +IV = 0400000000000000 +CIPHERTEXT = 00 + +COUNT = 6 +KEY = 0101010101010101 +IV = 0200000000000000 +CIPHERTEXT = 00 + +COUNT = 7 +KEY = 0101010101010101 +IV = 0100000000000000 +CIPHERTEXT = 00 + +COUNT = 8 +KEY = 0101010101010101 +IV = 0080000000000000 +CIPHERTEXT = 00 + +COUNT = 9 +KEY = 0101010101010101 +IV = 0040000000000000 +CIPHERTEXT = 00 + +COUNT = 10 +KEY = 0101010101010101 +IV = 0020000000000000 +CIPHERTEXT = 00 + +COUNT = 11 +KEY = 0101010101010101 +IV = 0010000000000000 +CIPHERTEXT = 00 + +COUNT = 12 +KEY = 0101010101010101 +IV = 0008000000000000 +CIPHERTEXT = 00 + +COUNT = 13 +KEY = 0101010101010101 +IV = 0004000000000000 +CIPHERTEXT = 00 + +COUNT = 14 +KEY = 0101010101010101 +IV = 0002000000000000 +CIPHERTEXT = 00 + +COUNT = 15 +KEY = 0101010101010101 +IV = 0001000000000000 +CIPHERTEXT = 00 + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000800000000000 +CIPHERTEXT = 00 + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000400000000000 +CIPHERTEXT = 00 + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000200000000000 +CIPHERTEXT = 00 + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000100000000000 +CIPHERTEXT = 00 + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000080000000000 +CIPHERTEXT = 00 + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000040000000000 +CIPHERTEXT = 00 + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000020000000000 +CIPHERTEXT = 00 + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000010000000000 +CIPHERTEXT = 00 + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000008000000000 +CIPHERTEXT = 00 + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000004000000000 +CIPHERTEXT = 00 + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000002000000000 +CIPHERTEXT = 00 + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000001000000000 +CIPHERTEXT = 00 + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000800000000 +CIPHERTEXT = 00 + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000400000000 +CIPHERTEXT = 00 + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000200000000 +CIPHERTEXT = 00 + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000100000000 +CIPHERTEXT = 00 + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000080000000 +CIPHERTEXT = 00 + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000040000000 +CIPHERTEXT = 00 + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000020000000 +CIPHERTEXT = 00 + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000010000000 +CIPHERTEXT = 00 + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000008000000 +CIPHERTEXT = 00 + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000004000000 +CIPHERTEXT = 00 + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000002000000 +CIPHERTEXT = 00 + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000001000000 +CIPHERTEXT = 00 + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000800000 +CIPHERTEXT = 00 + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000400000 +CIPHERTEXT = 00 + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000200000 +CIPHERTEXT = 00 + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000100000 +CIPHERTEXT = 00 + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000080000 +CIPHERTEXT = 00 + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000040000 +CIPHERTEXT = 00 + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000020000 +CIPHERTEXT = 00 + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000010000 +CIPHERTEXT = 00 + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000008000 +CIPHERTEXT = 00 + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000004000 +CIPHERTEXT = 00 + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000002000 +CIPHERTEXT = 00 + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000001000 +CIPHERTEXT = 00 + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000800 +CIPHERTEXT = 00 + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000400 +CIPHERTEXT = 00 + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000200 +CIPHERTEXT = 00 + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000100 +CIPHERTEXT = 00 + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000080 +CIPHERTEXT = 00 + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000040 +CIPHERTEXT = 00 + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000020 +CIPHERTEXT = 00 + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000010 +CIPHERTEXT = 00 + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000008 +CIPHERTEXT = 00 + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000004 +CIPHERTEXT = 00 + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000002 +CIPHERTEXT = 00 + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000001 +CIPHERTEXT = 00 diff --git a/fips/testvectors/des/req/ECBMMT.req b/fips/testvectors/des/req/ECBMMT.req new file mode 100644 index 0000000000..5447fd013c --- /dev/null +++ b/fips/testvectors/des/req/ECBMMT.req @@ -0,0 +1,89 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# DES Multi Block Message Test for ECB +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:52 PM + +[ENCRYPT] + +COUNT = 0 +KEY = 91e601d59d64d5a4 +PLAINTEXT = 078f91710eace1c8 + +COUNT = 1 +KEY = 4997615820ae85f2 +PLAINTEXT = e06afca4c971e04a1605f4e50440740b + +COUNT = 2 +KEY = d3fd4ae6a8108afb +PLAINTEXT = b577fcc169bc5195b3c9a9545c55aa9eda1212c9723ef81d + +COUNT = 3 +KEY = 455ec7197f64cdf7 +PLAINTEXT = c3dc18b906040dd7f985bc77520cab59e3f55d416fc6c99cbdfc0b67ea0b5a4d + +COUNT = 4 +KEY = eab61c46a715917f +PLAINTEXT = 0ada8c451f2d240d561cd7b26ffbfd3b252ac32fb08cd0ac8e3a29b3837952c6dfeab7b5ff014ab5 + +COUNT = 5 +KEY = cbb0dab36701bfd5 +PLAINTEXT = 127c09f2b46b03f427ef21d8fd22aa1dce0e0acf87b8c7a8065db77be4fb71d3921301d7a8ade070799e23aeeb06f268 + +COUNT = 6 +KEY = ce8f754679522580 +PLAINTEXT = 55b8d8533d9c9cf5c9de5f510a624588ea743a66565c3794a332c00f2af4b2d836d63bee21d92a79b99f6948e87ec77d95d3fb87c599e651 + +COUNT = 7 +KEY = 1cbca873a7c1fba4 +PLAINTEXT = ba51e8fa6f8498507f5e28866b2f3a07035442c77c003a27c23d98190f2d7d84bd962fea599dc948f8d2313dce6d4b6ffcd76c2baa6d124b5680d25d6ba09101 + +COUNT = 8 +KEY = 19d5400da74fa1bf +PLAINTEXT = b12853904bb1ee5f40ec2f0556d533f9b6418d56a0c196df5cc904407411be97203cef3202b8599a13e5edd1de7998d9ec235f757f6eae3483e9edaac1855501563e02b163fd498b + +COUNT = 9 +KEY = c8cb2694b062a776 +PLAINTEXT = f941bc86e734ee0c40ab470b660fda5aa707fffebfeff8439e86d40c6ce69467cbba8d645cab0d28841b413d7016562c5685df4efea577df82b8a75452fb0aee7ad7ae90285bbece68ea5e463331d733 + +[DECRYPT] + +COUNT = 0 +KEY = 9befba6dc84f1a01 +CIPHERTEXT = 7f3cc2a97ba1cc29 + +COUNT = 1 +KEY = 014abaea8c01d049 +CIPHERTEXT = 7c80b93386ba4cfaf274622757ba6bbf + +COUNT = 2 +KEY = 8c5e32c410a14554 +CIPHERTEXT = 0f9d3071af25a14211c5b47380a9b4b24af9f88722ad69cf + +COUNT = 3 +KEY = 1f8679d326298cd6 +CIPHERTEXT = 529f1af04a98cb4d2185ea7942765c98ce576a9791155f6c3403539fb47b4209 + +COUNT = 4 +KEY = 294c7ad3159b91c8 +CIPHERTEXT = 3807255d6bcfe8ff09ad6e54969e077a89d66f54086dabdef45634bd2590571bf7a0dcb1053ee625 + +COUNT = 5 +KEY = d06d9e61bcb3e583 +CIPHERTEXT = 17520fb88f494ed2fa1bdc5df9760093b571c46620c3565b7e32ae9b234f71487e61160d569f47f954a28a8dc2192013 + +COUNT = 6 +KEY = eaae8c5dd03d57ea +CIPHERTEXT = a87c4de04336b61d648ad8a15f48cf6555dde6d909d50b86ee9e81f1858fd5c3e52813289b9c3975b58cec0d1a166a851d0ec006518b3df3 + +COUNT = 7 +KEY = 89b398b52ad6543e +CIPHERTEXT = dd0ba0356d0bcf5b1be0f72e063adaf5a3c839fb634e994390f8477878ee9a23ce2878214d841b539e1515977cbe92f71600de21b51127179e2e83283a31351f + +COUNT = 8 +KEY = c1c708b9fb389d7f +CIPHERTEXT = 8a7b6714ab40e77240b334db55c646f83f86ce4bc6aa75668a67645b9f8c0a737bca19231253d23b3fa8836166ab4ebe58fc2bf77682305f1a48116b328be3662e1125651dbc007e + +COUNT = 9 +KEY = 0be3200e7cf4fe7a +CIPHERTEXT = 2e557e17415512dea05bd93ea22f0bdf5c657c9173df16eb2e938731cf8e377b24397d1459dc12211060c683b35971fe09442d9a080cc249ebd462cb84f097cfd234795bd672246da33e69e3b5f4c498 diff --git a/fips/testvectors/des/req/ECBMonte.req b/fips/testvectors/des/req/ECBMonte.req new file mode 100644 index 0000000000..06ba3878ea --- /dev/null +++ b/fips/testvectors/des/req/ECBMonte.req @@ -0,0 +1,15 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# DES Monte Carlo (Modes) Test for ECB +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:52 PM + +[ENCRYPT] +KEY = 85ec01545e169b7c +PLAINTEXT = a58819aa56a768fa + + +[DECRYPT] +KEY = 2a4a34049bb9f4e9 +CIPHERTEXT = ccb58233c54a7e4b + diff --git a/fips/testvectors/des/req/ECBinvperm.req b/fips/testvectors/des/req/ECBinvperm.req new file mode 100644 index 0000000000..d71a68ca4e --- /dev/null +++ b/fips/testvectors/des/req/ECBinvperm.req @@ -0,0 +1,520 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# INVERSE PERMUTATION - KAT for ECB +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 0101010101010101 +PLAINTEXT = 95f8a5e5dd31d900 + +COUNT = 1 +KEY = 0101010101010101 +PLAINTEXT = dd7f121ca5015619 + +COUNT = 2 +KEY = 0101010101010101 +PLAINTEXT = 2e8653104f3834ea + +COUNT = 3 +KEY = 0101010101010101 +PLAINTEXT = 4bd388ff6cd81d4f + +COUNT = 4 +KEY = 0101010101010101 +PLAINTEXT = 20b9e767b2fb1456 + +COUNT = 5 +KEY = 0101010101010101 +PLAINTEXT = 55579380d77138ef + +COUNT = 6 +KEY = 0101010101010101 +PLAINTEXT = 6cc5defaaf04512f + +COUNT = 7 +KEY = 0101010101010101 +PLAINTEXT = 0d9f279ba5d87260 + +COUNT = 8 +KEY = 0101010101010101 +PLAINTEXT = d9031b0271bd5a0a + +COUNT = 9 +KEY = 0101010101010101 +PLAINTEXT = 424250b37c3dd951 + +COUNT = 10 +KEY = 0101010101010101 +PLAINTEXT = b8061b7ecd9a21e5 + +COUNT = 11 +KEY = 0101010101010101 +PLAINTEXT = f15d0f286b65bd28 + +COUNT = 12 +KEY = 0101010101010101 +PLAINTEXT = add0cc8d6e5deba1 + +COUNT = 13 +KEY = 0101010101010101 +PLAINTEXT = e6d5f82752ad63d1 + +COUNT = 14 +KEY = 0101010101010101 +PLAINTEXT = ecbfe3bd3f591a5e + +COUNT = 15 +KEY = 0101010101010101 +PLAINTEXT = f356834379d165cd + +COUNT = 16 +KEY = 0101010101010101 +PLAINTEXT = 2b9f982f20037fa9 + +COUNT = 17 +KEY = 0101010101010101 +PLAINTEXT = 889de068a16f0be6 + +COUNT = 18 +KEY = 0101010101010101 +PLAINTEXT = e19e275d846a1298 + +COUNT = 19 +KEY = 0101010101010101 +PLAINTEXT = 329a8ed523d71aec + +COUNT = 20 +KEY = 0101010101010101 +PLAINTEXT = e7fce22557d23c97 + +COUNT = 21 +KEY = 0101010101010101 +PLAINTEXT = 12a9f5817ff2d65d + +COUNT = 22 +KEY = 0101010101010101 +PLAINTEXT = a484c3ad38dc9c19 + +COUNT = 23 +KEY = 0101010101010101 +PLAINTEXT = fbe00a8a1ef8ad72 + +COUNT = 24 +KEY = 0101010101010101 +PLAINTEXT = 750d079407521363 + +COUNT = 25 +KEY = 0101010101010101 +PLAINTEXT = 64feed9c724c2faf + +COUNT = 26 +KEY = 0101010101010101 +PLAINTEXT = f02b263b328e2b60 + +COUNT = 27 +KEY = 0101010101010101 +PLAINTEXT = 9d64555a9a10b852 + +COUNT = 28 +KEY = 0101010101010101 +PLAINTEXT = d106ff0bed5255d7 + +COUNT = 29 +KEY = 0101010101010101 +PLAINTEXT = e1652c6b138c64a5 + +COUNT = 30 +KEY = 0101010101010101 +PLAINTEXT = e428581186ec8f46 + +COUNT = 31 +KEY = 0101010101010101 +PLAINTEXT = aeb5f5ede22d1a36 + +COUNT = 32 +KEY = 0101010101010101 +PLAINTEXT = e943d7568aec0c5c + +COUNT = 33 +KEY = 0101010101010101 +PLAINTEXT = df98c8276f54b04b + +COUNT = 34 +KEY = 0101010101010101 +PLAINTEXT = b160e4680f6c696f + +COUNT = 35 +KEY = 0101010101010101 +PLAINTEXT = fa0752b07d9c4ab8 + +COUNT = 36 +KEY = 0101010101010101 +PLAINTEXT = ca3a2b036dbc8502 + +COUNT = 37 +KEY = 0101010101010101 +PLAINTEXT = 5e0905517bb59bcf + +COUNT = 38 +KEY = 0101010101010101 +PLAINTEXT = 814eeb3b91d90726 + +COUNT = 39 +KEY = 0101010101010101 +PLAINTEXT = 4d49db1532919c9f + +COUNT = 40 +KEY = 0101010101010101 +PLAINTEXT = 25eb5fc3f8cf0621 + +COUNT = 41 +KEY = 0101010101010101 +PLAINTEXT = ab6a20c0620d1c6f + +COUNT = 42 +KEY = 0101010101010101 +PLAINTEXT = 79e90dbc98f92cca + +COUNT = 43 +KEY = 0101010101010101 +PLAINTEXT = 866ecedd8072bb0e + +COUNT = 44 +KEY = 0101010101010101 +PLAINTEXT = 8b54536f2f3e64a8 + +COUNT = 45 +KEY = 0101010101010101 +PLAINTEXT = ea51d3975595b86b + +COUNT = 46 +KEY = 0101010101010101 +PLAINTEXT = caffc6ac4542de31 + +COUNT = 47 +KEY = 0101010101010101 +PLAINTEXT = 8dd45a2ddf90796c + +COUNT = 48 +KEY = 0101010101010101 +PLAINTEXT = 1029d55e880ec2d0 + +COUNT = 49 +KEY = 0101010101010101 +PLAINTEXT = 5d86cb23639dbea9 + +COUNT = 50 +KEY = 0101010101010101 +PLAINTEXT = 1d1ca853ae7c0c5f + +COUNT = 51 +KEY = 0101010101010101 +PLAINTEXT = ce332329248f3228 + +COUNT = 52 +KEY = 0101010101010101 +PLAINTEXT = 8405d1abe24fb942 + +COUNT = 53 +KEY = 0101010101010101 +PLAINTEXT = e643d78090ca4207 + +COUNT = 54 +KEY = 0101010101010101 +PLAINTEXT = 48221b9937748a23 + +COUNT = 55 +KEY = 0101010101010101 +PLAINTEXT = dd7c0bbd61fafd54 + +COUNT = 56 +KEY = 0101010101010101 +PLAINTEXT = 2fbc291a570db5c4 + +COUNT = 57 +KEY = 0101010101010101 +PLAINTEXT = e07c30d7e4e26e12 + +COUNT = 58 +KEY = 0101010101010101 +PLAINTEXT = 0953e2258e8e90a1 + +COUNT = 59 +KEY = 0101010101010101 +PLAINTEXT = 5b711bc4ceebf2ee + +COUNT = 60 +KEY = 0101010101010101 +PLAINTEXT = cc083f1e6d9e85f6 + +COUNT = 61 +KEY = 0101010101010101 +PLAINTEXT = d2fd8867d50d2dfe + +COUNT = 62 +KEY = 0101010101010101 +PLAINTEXT = 06e7ea22ce92708f + +COUNT = 63 +KEY = 0101010101010101 +PLAINTEXT = 166b40b44aba4bd6 + + +[DECRYPT] +COUNT = 0 +KEY = 0101010101010101 +CIPHERTEXT = 8000000000000000 + +COUNT = 1 +KEY = 0101010101010101 +CIPHERTEXT = 4000000000000000 + +COUNT = 2 +KEY = 0101010101010101 +CIPHERTEXT = 2000000000000000 + +COUNT = 3 +KEY = 0101010101010101 +CIPHERTEXT = 1000000000000000 + +COUNT = 4 +KEY = 0101010101010101 +CIPHERTEXT = 0800000000000000 + +COUNT = 5 +KEY = 0101010101010101 +CIPHERTEXT = 0400000000000000 + +COUNT = 6 +KEY = 0101010101010101 +CIPHERTEXT = 0200000000000000 + +COUNT = 7 +KEY = 0101010101010101 +CIPHERTEXT = 0100000000000000 + +COUNT = 8 +KEY = 0101010101010101 +CIPHERTEXT = 0080000000000000 + +COUNT = 9 +KEY = 0101010101010101 +CIPHERTEXT = 0040000000000000 + +COUNT = 10 +KEY = 0101010101010101 +CIPHERTEXT = 0020000000000000 + +COUNT = 11 +KEY = 0101010101010101 +CIPHERTEXT = 0010000000000000 + +COUNT = 12 +KEY = 0101010101010101 +CIPHERTEXT = 0008000000000000 + +COUNT = 13 +KEY = 0101010101010101 +CIPHERTEXT = 0004000000000000 + +COUNT = 14 +KEY = 0101010101010101 +CIPHERTEXT = 0002000000000000 + +COUNT = 15 +KEY = 0101010101010101 +CIPHERTEXT = 0001000000000000 + +COUNT = 16 +KEY = 0101010101010101 +CIPHERTEXT = 0000800000000000 + +COUNT = 17 +KEY = 0101010101010101 +CIPHERTEXT = 0000400000000000 + +COUNT = 18 +KEY = 0101010101010101 +CIPHERTEXT = 0000200000000000 + +COUNT = 19 +KEY = 0101010101010101 +CIPHERTEXT = 0000100000000000 + +COUNT = 20 +KEY = 0101010101010101 +CIPHERTEXT = 0000080000000000 + +COUNT = 21 +KEY = 0101010101010101 +CIPHERTEXT = 0000040000000000 + +COUNT = 22 +KEY = 0101010101010101 +CIPHERTEXT = 0000020000000000 + +COUNT = 23 +KEY = 0101010101010101 +CIPHERTEXT = 0000010000000000 + +COUNT = 24 +KEY = 0101010101010101 +CIPHERTEXT = 0000008000000000 + +COUNT = 25 +KEY = 0101010101010101 +CIPHERTEXT = 0000004000000000 + +COUNT = 26 +KEY = 0101010101010101 +CIPHERTEXT = 0000002000000000 + +COUNT = 27 +KEY = 0101010101010101 +CIPHERTEXT = 0000001000000000 + +COUNT = 28 +KEY = 0101010101010101 +CIPHERTEXT = 0000000800000000 + +COUNT = 29 +KEY = 0101010101010101 +CIPHERTEXT = 0000000400000000 + +COUNT = 30 +KEY = 0101010101010101 +CIPHERTEXT = 0000000200000000 + +COUNT = 31 +KEY = 0101010101010101 +CIPHERTEXT = 0000000100000000 + +COUNT = 32 +KEY = 0101010101010101 +CIPHERTEXT = 0000000080000000 + +COUNT = 33 +KEY = 0101010101010101 +CIPHERTEXT = 0000000040000000 + +COUNT = 34 +KEY = 0101010101010101 +CIPHERTEXT = 0000000020000000 + +COUNT = 35 +KEY = 0101010101010101 +CIPHERTEXT = 0000000010000000 + +COUNT = 36 +KEY = 0101010101010101 +CIPHERTEXT = 0000000008000000 + +COUNT = 37 +KEY = 0101010101010101 +CIPHERTEXT = 0000000004000000 + +COUNT = 38 +KEY = 0101010101010101 +CIPHERTEXT = 0000000002000000 + +COUNT = 39 +KEY = 0101010101010101 +CIPHERTEXT = 0000000001000000 + +COUNT = 40 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000800000 + +COUNT = 41 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000400000 + +COUNT = 42 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000200000 + +COUNT = 43 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000100000 + +COUNT = 44 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000080000 + +COUNT = 45 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000040000 + +COUNT = 46 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000020000 + +COUNT = 47 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000010000 + +COUNT = 48 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000008000 + +COUNT = 49 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000004000 + +COUNT = 50 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000002000 + +COUNT = 51 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000001000 + +COUNT = 52 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000000800 + +COUNT = 53 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000000400 + +COUNT = 54 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000000200 + +COUNT = 55 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000000100 + +COUNT = 56 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000000080 + +COUNT = 57 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000000040 + +COUNT = 58 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000000020 + +COUNT = 59 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000000010 + +COUNT = 60 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000000008 + +COUNT = 61 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000000004 + +COUNT = 62 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000000002 + +COUNT = 63 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000000001 diff --git a/fips/testvectors/des/req/ECBpermop.req b/fips/testvectors/des/req/ECBpermop.req new file mode 100644 index 0000000000..04c1c93ded --- /dev/null +++ b/fips/testvectors/des/req/ECBpermop.req @@ -0,0 +1,264 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# PERMUTATION OPERATION - KAT for ECB +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 1046913489980131 +PLAINTEXT = 0000000000000000 + +COUNT = 1 +KEY = 1007103489988020 +PLAINTEXT = 0000000000000000 + +COUNT = 2 +KEY = 10071034c8980120 +PLAINTEXT = 0000000000000000 + +COUNT = 3 +KEY = 1046103489988020 +PLAINTEXT = 0000000000000000 + +COUNT = 4 +KEY = 1086911519190101 +PLAINTEXT = 0000000000000000 + +COUNT = 5 +KEY = 1086911519580101 +PLAINTEXT = 0000000000000000 + +COUNT = 6 +KEY = 5107b01519580101 +PLAINTEXT = 0000000000000000 + +COUNT = 7 +KEY = 1007b01519190101 +PLAINTEXT = 0000000000000000 + +COUNT = 8 +KEY = 3107915498080101 +PLAINTEXT = 0000000000000000 + +COUNT = 9 +KEY = 3107919498080101 +PLAINTEXT = 0000000000000000 + +COUNT = 10 +KEY = 10079115b9080140 +PLAINTEXT = 0000000000000000 + +COUNT = 11 +KEY = 3107911598080140 +PLAINTEXT = 0000000000000000 + +COUNT = 12 +KEY = 1007d01589980101 +PLAINTEXT = 0000000000000000 + +COUNT = 13 +KEY = 9107911589980101 +PLAINTEXT = 0000000000000000 + +COUNT = 14 +KEY = 9107d01589190101 +PLAINTEXT = 0000000000000000 + +COUNT = 15 +KEY = 1007d01598980120 +PLAINTEXT = 0000000000000000 + +COUNT = 16 +KEY = 1007940498190101 +PLAINTEXT = 0000000000000000 + +COUNT = 17 +KEY = 0107910491190401 +PLAINTEXT = 0000000000000000 + +COUNT = 18 +KEY = 0107910491190101 +PLAINTEXT = 0000000000000000 + +COUNT = 19 +KEY = 0107940491190401 +PLAINTEXT = 0000000000000000 + +COUNT = 20 +KEY = 19079210981a0101 +PLAINTEXT = 0000000000000000 + +COUNT = 21 +KEY = 1007911998190801 +PLAINTEXT = 0000000000000000 + +COUNT = 22 +KEY = 10079119981a0801 +PLAINTEXT = 0000000000000000 + +COUNT = 23 +KEY = 1007921098190101 +PLAINTEXT = 0000000000000000 + +COUNT = 24 +KEY = 100791159819010b +PLAINTEXT = 0000000000000000 + +COUNT = 25 +KEY = 1004801598190101 +PLAINTEXT = 0000000000000000 + +COUNT = 26 +KEY = 1004801598190102 +PLAINTEXT = 0000000000000000 + +COUNT = 27 +KEY = 1004801598190108 +PLAINTEXT = 0000000000000000 + +COUNT = 28 +KEY = 1002911598100104 +PLAINTEXT = 0000000000000000 + +COUNT = 29 +KEY = 1002911598190104 +PLAINTEXT = 0000000000000000 + +COUNT = 30 +KEY = 1002911598100201 +PLAINTEXT = 0000000000000000 + +COUNT = 31 +KEY = 1002911698100101 +PLAINTEXT = 0000000000000000 + + +[DECRYPT] +COUNT = 0 +KEY = 1046913489980131 +CIPHERTEXT = 88d55e54f54c97b4 + +COUNT = 1 +KEY = 1007103489988020 +CIPHERTEXT = 0c0cc00c83ea48fd + +COUNT = 2 +KEY = 10071034c8980120 +CIPHERTEXT = 83bc8ef3a6570183 + +COUNT = 3 +KEY = 1046103489988020 +CIPHERTEXT = df725dcad94ea2e9 + +COUNT = 4 +KEY = 1086911519190101 +CIPHERTEXT = e652b53b550be8b0 + +COUNT = 5 +KEY = 1086911519580101 +CIPHERTEXT = af527120c485cbb0 + +COUNT = 6 +KEY = 5107b01519580101 +CIPHERTEXT = 0f04ce393db926d5 + +COUNT = 7 +KEY = 1007b01519190101 +CIPHERTEXT = c9f00ffc74079067 + +COUNT = 8 +KEY = 3107915498080101 +CIPHERTEXT = 7cfd82a593252b4e + +COUNT = 9 +KEY = 3107919498080101 +CIPHERTEXT = cb49a2f9e91363e3 + +COUNT = 10 +KEY = 10079115b9080140 +CIPHERTEXT = 00b588be70d23f56 + +COUNT = 11 +KEY = 3107911598080140 +CIPHERTEXT = 406a9a6ab43399ae + +COUNT = 12 +KEY = 1007d01589980101 +CIPHERTEXT = 6cb773611dca9ada + +COUNT = 13 +KEY = 9107911589980101 +CIPHERTEXT = 67fd21c17dbb5d70 + +COUNT = 14 +KEY = 9107d01589190101 +CIPHERTEXT = 9592cb4110430787 + +COUNT = 15 +KEY = 1007d01598980120 +CIPHERTEXT = a6b7ff68a318ddd3 + +COUNT = 16 +KEY = 1007940498190101 +CIPHERTEXT = 4d102196c914ca16 + +COUNT = 17 +KEY = 0107910491190401 +CIPHERTEXT = 2dfa9f4573594965 + +COUNT = 18 +KEY = 0107910491190101 +CIPHERTEXT = b46604816c0e0774 + +COUNT = 19 +KEY = 0107940491190401 +CIPHERTEXT = 6e7e6221a4f34e87 + +COUNT = 20 +KEY = 19079210981a0101 +CIPHERTEXT = aa85e74643233199 + +COUNT = 21 +KEY = 1007911998190801 +CIPHERTEXT = 2e5a19db4d1962d6 + +COUNT = 22 +KEY = 10079119981a0801 +CIPHERTEXT = 23a866a809d30894 + +COUNT = 23 +KEY = 1007921098190101 +CIPHERTEXT = d812d961f017d320 + +COUNT = 24 +KEY = 100791159819010b +CIPHERTEXT = 055605816e58608f + +COUNT = 25 +KEY = 1004801598190101 +CIPHERTEXT = abd88e8b1b7716f1 + +COUNT = 26 +KEY = 1004801598190102 +CIPHERTEXT = 537ac95be69da1e1 + +COUNT = 27 +KEY = 1004801598190108 +CIPHERTEXT = aed0f6ae3c25cdd8 + +COUNT = 28 +KEY = 1002911598100104 +CIPHERTEXT = b3e35a5ee53e7b8d + +COUNT = 29 +KEY = 1002911598190104 +CIPHERTEXT = 61c79c71921a2ef8 + +COUNT = 30 +KEY = 1002911598100201 +CIPHERTEXT = e2f5728f0995013c + +COUNT = 31 +KEY = 1002911698100101 +CIPHERTEXT = 1aeac39a61f0a464 diff --git a/fips/testvectors/des/req/ECBsubtab.req b/fips/testvectors/des/req/ECBsubtab.req new file mode 100644 index 0000000000..30ea64c420 --- /dev/null +++ b/fips/testvectors/des/req/ECBsubtab.req @@ -0,0 +1,160 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# SUBSTITUTION TABLE - KAT for ECB +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 7ca110454a1a6e57 +PLAINTEXT = 01a1d6d039776742 + +COUNT = 1 +KEY = 0131d9619dc1376e +PLAINTEXT = 5cd54ca83def57da + +COUNT = 2 +KEY = 07a1133e4a0b2686 +PLAINTEXT = 0248d43806f67172 + +COUNT = 3 +KEY = 3849674c2602319e +PLAINTEXT = 51454b582ddf440a + +COUNT = 4 +KEY = 04b915ba43feb5b6 +PLAINTEXT = 42fd443059577fa2 + +COUNT = 5 +KEY = 0113b970fd34f2ce +PLAINTEXT = 059b5e0851cf143a + +COUNT = 6 +KEY = 0170f175468fb5e6 +PLAINTEXT = 0756d8e0774761d2 + +COUNT = 7 +KEY = 43297fad38e373fe +PLAINTEXT = 762514b829bf486a + +COUNT = 8 +KEY = 07a7137045da2a16 +PLAINTEXT = 3bdd119049372802 + +COUNT = 9 +KEY = 04689104c2fd3b2f +PLAINTEXT = 26955f6835af609a + +COUNT = 10 +KEY = 37d06bb516cb7546 +PLAINTEXT = 164d5e404f275232 + +COUNT = 11 +KEY = 1f08260d1ac2465e +PLAINTEXT = 6b056e18759f5cca + +COUNT = 12 +KEY = 584023641aba6176 +PLAINTEXT = 004bd6ef09176062 + +COUNT = 13 +KEY = 025816164629b007 +PLAINTEXT = 480d39006ee762f2 + +COUNT = 14 +KEY = 49793ebc79b3258f +PLAINTEXT = 437540c8698f3cfa + +COUNT = 15 +KEY = 4fb05e1515ab73a7 +PLAINTEXT = 072d43a077075292 + +COUNT = 16 +KEY = 49e95d6d4ca229bf +PLAINTEXT = 02fe55778117f12a + +COUNT = 17 +KEY = 018310dc409b26d6 +PLAINTEXT = 1d9d5c5018f728c2 + +COUNT = 18 +KEY = 1c587f1c13924fef +PLAINTEXT = 305532286d6f295a + + +[DECRYPT] +COUNT = 0 +KEY = 7ca110454a1a6e57 +CIPHERTEXT = 690f5b0d9a26939b + +COUNT = 1 +KEY = 0131d9619dc1376e +CIPHERTEXT = 7a389d10354bd271 + +COUNT = 2 +KEY = 07a1133e4a0b2686 +CIPHERTEXT = 868ebb51cab4599a + +COUNT = 3 +KEY = 3849674c2602319e +CIPHERTEXT = 7178876e01f19b2a + +COUNT = 4 +KEY = 04b915ba43feb5b6 +CIPHERTEXT = af37fb421f8c4095 + +COUNT = 5 +KEY = 0113b970fd34f2ce +CIPHERTEXT = 86a560f10ec6d85b + +COUNT = 6 +KEY = 0170f175468fb5e6 +CIPHERTEXT = 0cd3da020021dc09 + +COUNT = 7 +KEY = 43297fad38e373fe +CIPHERTEXT = ea676b2cb7db2b7a + +COUNT = 8 +KEY = 07a7137045da2a16 +CIPHERTEXT = dfd64a815caf1a0f + +COUNT = 9 +KEY = 04689104c2fd3b2f +CIPHERTEXT = 5c513c9c4886c088 + +COUNT = 10 +KEY = 37d06bb516cb7546 +CIPHERTEXT = 0a2aeeae3ff4ab77 + +COUNT = 11 +KEY = 1f08260d1ac2465e +CIPHERTEXT = ef1bf03e5dfa575a + +COUNT = 12 +KEY = 584023641aba6176 +CIPHERTEXT = 88bf0db6d70dee56 + +COUNT = 13 +KEY = 025816164629b007 +CIPHERTEXT = a1f9915541020b56 + +COUNT = 14 +KEY = 49793ebc79b3258f +CIPHERTEXT = 6fbf1cafcffd0556 + +COUNT = 15 +KEY = 4fb05e1515ab73a7 +CIPHERTEXT = 2f22e49bab7ca1ac + +COUNT = 16 +KEY = 49e95d6d4ca229bf +CIPHERTEXT = 5a6b612cc26cce4a + +COUNT = 17 +KEY = 018310dc409b26d6 +CIPHERTEXT = 5f4c038ed12b2e41 + +COUNT = 18 +KEY = 1c587f1c13924fef +CIPHERTEXT = 63fac0d034d9f793 diff --git a/fips/testvectors/des/req/ECBvarkey.req b/fips/testvectors/des/req/ECBvarkey.req new file mode 100644 index 0000000000..a256cdafd4 --- /dev/null +++ b/fips/testvectors/des/req/ECBvarkey.req @@ -0,0 +1,456 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# VARIABLE KEY - KAT for ECB +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 8001010101010101 +PLAINTEXT = 0000000000000000 + +COUNT = 1 +KEY = 4001010101010101 +PLAINTEXT = 0000000000000000 + +COUNT = 2 +KEY = 2001010101010101 +PLAINTEXT = 0000000000000000 + +COUNT = 3 +KEY = 1001010101010101 +PLAINTEXT = 0000000000000000 + +COUNT = 4 +KEY = 0801010101010101 +PLAINTEXT = 0000000000000000 + +COUNT = 5 +KEY = 0401010101010101 +PLAINTEXT = 0000000000000000 + +COUNT = 6 +KEY = 0201010101010101 +PLAINTEXT = 0000000000000000 + +COUNT = 7 +KEY = 0180010101010101 +PLAINTEXT = 0000000000000000 + +COUNT = 8 +KEY = 0140010101010101 +PLAINTEXT = 0000000000000000 + +COUNT = 9 +KEY = 0120010101010101 +PLAINTEXT = 0000000000000000 + +COUNT = 10 +KEY = 0110010101010101 +PLAINTEXT = 0000000000000000 + +COUNT = 11 +KEY = 0108010101010101 +PLAINTEXT = 0000000000000000 + +COUNT = 12 +KEY = 0104010101010101 +PLAINTEXT = 0000000000000000 + +COUNT = 13 +KEY = 0102010101010101 +PLAINTEXT = 0000000000000000 + +COUNT = 14 +KEY = 0101800101010101 +PLAINTEXT = 0000000000000000 + +COUNT = 15 +KEY = 0101400101010101 +PLAINTEXT = 0000000000000000 + +COUNT = 16 +KEY = 0101200101010101 +PLAINTEXT = 0000000000000000 + +COUNT = 17 +KEY = 0101100101010101 +PLAINTEXT = 0000000000000000 + +COUNT = 18 +KEY = 0101080101010101 +PLAINTEXT = 0000000000000000 + +COUNT = 19 +KEY = 0101040101010101 +PLAINTEXT = 0000000000000000 + +COUNT = 20 +KEY = 0101020101010101 +PLAINTEXT = 0000000000000000 + +COUNT = 21 +KEY = 0101018001010101 +PLAINTEXT = 0000000000000000 + +COUNT = 22 +KEY = 0101014001010101 +PLAINTEXT = 0000000000000000 + +COUNT = 23 +KEY = 0101012001010101 +PLAINTEXT = 0000000000000000 + +COUNT = 24 +KEY = 0101011001010101 +PLAINTEXT = 0000000000000000 + +COUNT = 25 +KEY = 0101010801010101 +PLAINTEXT = 0000000000000000 + +COUNT = 26 +KEY = 0101010401010101 +PLAINTEXT = 0000000000000000 + +COUNT = 27 +KEY = 0101010201010101 +PLAINTEXT = 0000000000000000 + +COUNT = 28 +KEY = 0101010180010101 +PLAINTEXT = 0000000000000000 + +COUNT = 29 +KEY = 0101010140010101 +PLAINTEXT = 0000000000000000 + +COUNT = 30 +KEY = 0101010120010101 +PLAINTEXT = 0000000000000000 + +COUNT = 31 +KEY = 0101010110010101 +PLAINTEXT = 0000000000000000 + +COUNT = 32 +KEY = 0101010108010101 +PLAINTEXT = 0000000000000000 + +COUNT = 33 +KEY = 0101010104010101 +PLAINTEXT = 0000000000000000 + +COUNT = 34 +KEY = 0101010102010101 +PLAINTEXT = 0000000000000000 + +COUNT = 35 +KEY = 0101010101800101 +PLAINTEXT = 0000000000000000 + +COUNT = 36 +KEY = 0101010101400101 +PLAINTEXT = 0000000000000000 + +COUNT = 37 +KEY = 0101010101200101 +PLAINTEXT = 0000000000000000 + +COUNT = 38 +KEY = 0101010101100101 +PLAINTEXT = 0000000000000000 + +COUNT = 39 +KEY = 0101010101080101 +PLAINTEXT = 0000000000000000 + +COUNT = 40 +KEY = 0101010101040101 +PLAINTEXT = 0000000000000000 + +COUNT = 41 +KEY = 0101010101020101 +PLAINTEXT = 0000000000000000 + +COUNT = 42 +KEY = 0101010101018001 +PLAINTEXT = 0000000000000000 + +COUNT = 43 +KEY = 0101010101014001 +PLAINTEXT = 0000000000000000 + +COUNT = 44 +KEY = 0101010101012001 +PLAINTEXT = 0000000000000000 + +COUNT = 45 +KEY = 0101010101011001 +PLAINTEXT = 0000000000000000 + +COUNT = 46 +KEY = 0101010101010801 +PLAINTEXT = 0000000000000000 + +COUNT = 47 +KEY = 0101010101010401 +PLAINTEXT = 0000000000000000 + +COUNT = 48 +KEY = 0101010101010201 +PLAINTEXT = 0000000000000000 + +COUNT = 49 +KEY = 0101010101010180 +PLAINTEXT = 0000000000000000 + +COUNT = 50 +KEY = 0101010101010140 +PLAINTEXT = 0000000000000000 + +COUNT = 51 +KEY = 0101010101010120 +PLAINTEXT = 0000000000000000 + +COUNT = 52 +KEY = 0101010101010110 +PLAINTEXT = 0000000000000000 + +COUNT = 53 +KEY = 0101010101010108 +PLAINTEXT = 0000000000000000 + +COUNT = 54 +KEY = 0101010101010104 +PLAINTEXT = 0000000000000000 + +COUNT = 55 +KEY = 0101010101010102 +PLAINTEXT = 0000000000000000 + + +[DECRYPT] +COUNT = 0 +KEY = 8001010101010101 +CIPHERTEXT = 95a8d72813daa94d + +COUNT = 1 +KEY = 4001010101010101 +CIPHERTEXT = 0eec1487dd8c26d5 + +COUNT = 2 +KEY = 2001010101010101 +CIPHERTEXT = 7ad16ffb79c45926 + +COUNT = 3 +KEY = 1001010101010101 +CIPHERTEXT = d3746294ca6a6cf3 + +COUNT = 4 +KEY = 0801010101010101 +CIPHERTEXT = 809f5f873c1fd761 + +COUNT = 5 +KEY = 0401010101010101 +CIPHERTEXT = c02faffec989d1fc + +COUNT = 6 +KEY = 0201010101010101 +CIPHERTEXT = 4615aa1d33e72f10 + +COUNT = 7 +KEY = 0180010101010101 +CIPHERTEXT = 2055123350c00858 + +COUNT = 8 +KEY = 0140010101010101 +CIPHERTEXT = df3b99d6577397c8 + +COUNT = 9 +KEY = 0120010101010101 +CIPHERTEXT = 31fe17369b5288c9 + +COUNT = 10 +KEY = 0110010101010101 +CIPHERTEXT = dfdd3cc64dae1642 + +COUNT = 11 +KEY = 0108010101010101 +CIPHERTEXT = 178c83ce2b399d94 + +COUNT = 12 +KEY = 0104010101010101 +CIPHERTEXT = 50f636324a9b7f80 + +COUNT = 13 +KEY = 0102010101010101 +CIPHERTEXT = a8468ee3bc18f06d + +COUNT = 14 +KEY = 0101800101010101 +CIPHERTEXT = a2dc9e92fd3cde92 + +COUNT = 15 +KEY = 0101400101010101 +CIPHERTEXT = cac09f797d031287 + +COUNT = 16 +KEY = 0101200101010101 +CIPHERTEXT = 90ba680b22aeb525 + +COUNT = 17 +KEY = 0101100101010101 +CIPHERTEXT = ce7a24f350e280b6 + +COUNT = 18 +KEY = 0101080101010101 +CIPHERTEXT = 882bff0aa01a0b87 + +COUNT = 19 +KEY = 0101040101010101 +CIPHERTEXT = 25610288924511c2 + +COUNT = 20 +KEY = 0101020101010101 +CIPHERTEXT = c71516c29c75d170 + +COUNT = 21 +KEY = 0101018001010101 +CIPHERTEXT = 5199c29a52c9f059 + +COUNT = 22 +KEY = 0101014001010101 +CIPHERTEXT = c22f0a294a71f29f + +COUNT = 23 +KEY = 0101012001010101 +CIPHERTEXT = ee371483714c02ea + +COUNT = 24 +KEY = 0101011001010101 +CIPHERTEXT = a81fbd448f9e522f + +COUNT = 25 +KEY = 0101010801010101 +CIPHERTEXT = 4f644c92e192dfed + +COUNT = 26 +KEY = 0101010401010101 +CIPHERTEXT = 1afa9a66a6df92ae + +COUNT = 27 +KEY = 0101010201010101 +CIPHERTEXT = b3c1cc715cb879d8 + +COUNT = 28 +KEY = 0101010180010101 +CIPHERTEXT = 19d032e64ab0bd8b + +COUNT = 29 +KEY = 0101010140010101 +CIPHERTEXT = 3cfaa7a7dc8720dc + +COUNT = 30 +KEY = 0101010120010101 +CIPHERTEXT = b7265f7f447ac6f3 + +COUNT = 31 +KEY = 0101010110010101 +CIPHERTEXT = 9db73b3c0d163f54 + +COUNT = 32 +KEY = 0101010108010101 +CIPHERTEXT = 8181b65babf4a975 + +COUNT = 33 +KEY = 0101010104010101 +CIPHERTEXT = 93c9b64042eaa240 + +COUNT = 34 +KEY = 0101010102010101 +CIPHERTEXT = 5570530829705592 + +COUNT = 35 +KEY = 0101010101800101 +CIPHERTEXT = 8638809e878787a0 + +COUNT = 36 +KEY = 0101010101400101 +CIPHERTEXT = 41b9a79af79ac208 + +COUNT = 37 +KEY = 0101010101200101 +CIPHERTEXT = 7a9be42f2009a892 + +COUNT = 38 +KEY = 0101010101100101 +CIPHERTEXT = 29038d56ba6d2745 + +COUNT = 39 +KEY = 0101010101080101 +CIPHERTEXT = 5495c6abf1e5df51 + +COUNT = 40 +KEY = 0101010101040101 +CIPHERTEXT = ae13dbd561488933 + +COUNT = 41 +KEY = 0101010101020101 +CIPHERTEXT = 024d1ffa8904e389 + +COUNT = 42 +KEY = 0101010101018001 +CIPHERTEXT = d1399712f99bf02e + +COUNT = 43 +KEY = 0101010101014001 +CIPHERTEXT = 14c1d7c1cffec79e + +COUNT = 44 +KEY = 0101010101012001 +CIPHERTEXT = 1de5279dae3bed6f + +COUNT = 45 +KEY = 0101010101011001 +CIPHERTEXT = e941a33f85501303 + +COUNT = 46 +KEY = 0101010101010801 +CIPHERTEXT = da99dbbc9a03f379 + +COUNT = 47 +KEY = 0101010101010401 +CIPHERTEXT = b7fc92f91d8e92e9 + +COUNT = 48 +KEY = 0101010101010201 +CIPHERTEXT = ae8e5caa3ca04e85 + +COUNT = 49 +KEY = 0101010101010180 +CIPHERTEXT = 9cc62df43b6eed74 + +COUNT = 50 +KEY = 0101010101010140 +CIPHERTEXT = d863dbb5c59a91a0 + +COUNT = 51 +KEY = 0101010101010120 +CIPHERTEXT = a1ab2190545b91d7 + +COUNT = 52 +KEY = 0101010101010110 +CIPHERTEXT = 0875041e64c570f7 + +COUNT = 53 +KEY = 0101010101010108 +CIPHERTEXT = 5a594528bebef1cc + +COUNT = 54 +KEY = 0101010101010104 +CIPHERTEXT = fcdb3291de21f0c0 + +COUNT = 55 +KEY = 0101010101010102 +CIPHERTEXT = 869efd7f9f265a09 diff --git a/fips/testvectors/des/req/ECBvartext.req b/fips/testvectors/des/req/ECBvartext.req new file mode 100644 index 0000000000..4f68d3bc0f --- /dev/null +++ b/fips/testvectors/des/req/ECBvartext.req @@ -0,0 +1,520 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# VARIABLE PLAINTEXT/CIPHERTEXT - KAT for ECB +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 0101010101010101 +PLAINTEXT = 8000000000000000 + +COUNT = 1 +KEY = 0101010101010101 +PLAINTEXT = 4000000000000000 + +COUNT = 2 +KEY = 0101010101010101 +PLAINTEXT = 2000000000000000 + +COUNT = 3 +KEY = 0101010101010101 +PLAINTEXT = 1000000000000000 + +COUNT = 4 +KEY = 0101010101010101 +PLAINTEXT = 0800000000000000 + +COUNT = 5 +KEY = 0101010101010101 +PLAINTEXT = 0400000000000000 + +COUNT = 6 +KEY = 0101010101010101 +PLAINTEXT = 0200000000000000 + +COUNT = 7 +KEY = 0101010101010101 +PLAINTEXT = 0100000000000000 + +COUNT = 8 +KEY = 0101010101010101 +PLAINTEXT = 0080000000000000 + +COUNT = 9 +KEY = 0101010101010101 +PLAINTEXT = 0040000000000000 + +COUNT = 10 +KEY = 0101010101010101 +PLAINTEXT = 0020000000000000 + +COUNT = 11 +KEY = 0101010101010101 +PLAINTEXT = 0010000000000000 + +COUNT = 12 +KEY = 0101010101010101 +PLAINTEXT = 0008000000000000 + +COUNT = 13 +KEY = 0101010101010101 +PLAINTEXT = 0004000000000000 + +COUNT = 14 +KEY = 0101010101010101 +PLAINTEXT = 0002000000000000 + +COUNT = 15 +KEY = 0101010101010101 +PLAINTEXT = 0001000000000000 + +COUNT = 16 +KEY = 0101010101010101 +PLAINTEXT = 0000800000000000 + +COUNT = 17 +KEY = 0101010101010101 +PLAINTEXT = 0000400000000000 + +COUNT = 18 +KEY = 0101010101010101 +PLAINTEXT = 0000200000000000 + +COUNT = 19 +KEY = 0101010101010101 +PLAINTEXT = 0000100000000000 + +COUNT = 20 +KEY = 0101010101010101 +PLAINTEXT = 0000080000000000 + +COUNT = 21 +KEY = 0101010101010101 +PLAINTEXT = 0000040000000000 + +COUNT = 22 +KEY = 0101010101010101 +PLAINTEXT = 0000020000000000 + +COUNT = 23 +KEY = 0101010101010101 +PLAINTEXT = 0000010000000000 + +COUNT = 24 +KEY = 0101010101010101 +PLAINTEXT = 0000008000000000 + +COUNT = 25 +KEY = 0101010101010101 +PLAINTEXT = 0000004000000000 + +COUNT = 26 +KEY = 0101010101010101 +PLAINTEXT = 0000002000000000 + +COUNT = 27 +KEY = 0101010101010101 +PLAINTEXT = 0000001000000000 + +COUNT = 28 +KEY = 0101010101010101 +PLAINTEXT = 0000000800000000 + +COUNT = 29 +KEY = 0101010101010101 +PLAINTEXT = 0000000400000000 + +COUNT = 30 +KEY = 0101010101010101 +PLAINTEXT = 0000000200000000 + +COUNT = 31 +KEY = 0101010101010101 +PLAINTEXT = 0000000100000000 + +COUNT = 32 +KEY = 0101010101010101 +PLAINTEXT = 0000000080000000 + +COUNT = 33 +KEY = 0101010101010101 +PLAINTEXT = 0000000040000000 + +COUNT = 34 +KEY = 0101010101010101 +PLAINTEXT = 0000000020000000 + +COUNT = 35 +KEY = 0101010101010101 +PLAINTEXT = 0000000010000000 + +COUNT = 36 +KEY = 0101010101010101 +PLAINTEXT = 0000000008000000 + +COUNT = 37 +KEY = 0101010101010101 +PLAINTEXT = 0000000004000000 + +COUNT = 38 +KEY = 0101010101010101 +PLAINTEXT = 0000000002000000 + +COUNT = 39 +KEY = 0101010101010101 +PLAINTEXT = 0000000001000000 + +COUNT = 40 +KEY = 0101010101010101 +PLAINTEXT = 0000000000800000 + +COUNT = 41 +KEY = 0101010101010101 +PLAINTEXT = 0000000000400000 + +COUNT = 42 +KEY = 0101010101010101 +PLAINTEXT = 0000000000200000 + +COUNT = 43 +KEY = 0101010101010101 +PLAINTEXT = 0000000000100000 + +COUNT = 44 +KEY = 0101010101010101 +PLAINTEXT = 0000000000080000 + +COUNT = 45 +KEY = 0101010101010101 +PLAINTEXT = 0000000000040000 + +COUNT = 46 +KEY = 0101010101010101 +PLAINTEXT = 0000000000020000 + +COUNT = 47 +KEY = 0101010101010101 +PLAINTEXT = 0000000000010000 + +COUNT = 48 +KEY = 0101010101010101 +PLAINTEXT = 0000000000008000 + +COUNT = 49 +KEY = 0101010101010101 +PLAINTEXT = 0000000000004000 + +COUNT = 50 +KEY = 0101010101010101 +PLAINTEXT = 0000000000002000 + +COUNT = 51 +KEY = 0101010101010101 +PLAINTEXT = 0000000000001000 + +COUNT = 52 +KEY = 0101010101010101 +PLAINTEXT = 0000000000000800 + +COUNT = 53 +KEY = 0101010101010101 +PLAINTEXT = 0000000000000400 + +COUNT = 54 +KEY = 0101010101010101 +PLAINTEXT = 0000000000000200 + +COUNT = 55 +KEY = 0101010101010101 +PLAINTEXT = 0000000000000100 + +COUNT = 56 +KEY = 0101010101010101 +PLAINTEXT = 0000000000000080 + +COUNT = 57 +KEY = 0101010101010101 +PLAINTEXT = 0000000000000040 + +COUNT = 58 +KEY = 0101010101010101 +PLAINTEXT = 0000000000000020 + +COUNT = 59 +KEY = 0101010101010101 +PLAINTEXT = 0000000000000010 + +COUNT = 60 +KEY = 0101010101010101 +PLAINTEXT = 0000000000000008 + +COUNT = 61 +KEY = 0101010101010101 +PLAINTEXT = 0000000000000004 + +COUNT = 62 +KEY = 0101010101010101 +PLAINTEXT = 0000000000000002 + +COUNT = 63 +KEY = 0101010101010101 +PLAINTEXT = 0000000000000001 + + +[DECRYPT] +COUNT = 0 +KEY = 0101010101010101 +CIPHERTEXT = 95f8a5e5dd31d900 + +COUNT = 1 +KEY = 0101010101010101 +CIPHERTEXT = dd7f121ca5015619 + +COUNT = 2 +KEY = 0101010101010101 +CIPHERTEXT = 2e8653104f3834ea + +COUNT = 3 +KEY = 0101010101010101 +CIPHERTEXT = 4bd388ff6cd81d4f + +COUNT = 4 +KEY = 0101010101010101 +CIPHERTEXT = 20b9e767b2fb1456 + +COUNT = 5 +KEY = 0101010101010101 +CIPHERTEXT = 55579380d77138ef + +COUNT = 6 +KEY = 0101010101010101 +CIPHERTEXT = 6cc5defaaf04512f + +COUNT = 7 +KEY = 0101010101010101 +CIPHERTEXT = 0d9f279ba5d87260 + +COUNT = 8 +KEY = 0101010101010101 +CIPHERTEXT = d9031b0271bd5a0a + +COUNT = 9 +KEY = 0101010101010101 +CIPHERTEXT = 424250b37c3dd951 + +COUNT = 10 +KEY = 0101010101010101 +CIPHERTEXT = b8061b7ecd9a21e5 + +COUNT = 11 +KEY = 0101010101010101 +CIPHERTEXT = f15d0f286b65bd28 + +COUNT = 12 +KEY = 0101010101010101 +CIPHERTEXT = add0cc8d6e5deba1 + +COUNT = 13 +KEY = 0101010101010101 +CIPHERTEXT = e6d5f82752ad63d1 + +COUNT = 14 +KEY = 0101010101010101 +CIPHERTEXT = ecbfe3bd3f591a5e + +COUNT = 15 +KEY = 0101010101010101 +CIPHERTEXT = f356834379d165cd + +COUNT = 16 +KEY = 0101010101010101 +CIPHERTEXT = 2b9f982f20037fa9 + +COUNT = 17 +KEY = 0101010101010101 +CIPHERTEXT = 889de068a16f0be6 + +COUNT = 18 +KEY = 0101010101010101 +CIPHERTEXT = e19e275d846a1298 + +COUNT = 19 +KEY = 0101010101010101 +CIPHERTEXT = 329a8ed523d71aec + +COUNT = 20 +KEY = 0101010101010101 +CIPHERTEXT = e7fce22557d23c97 + +COUNT = 21 +KEY = 0101010101010101 +CIPHERTEXT = 12a9f5817ff2d65d + +COUNT = 22 +KEY = 0101010101010101 +CIPHERTEXT = a484c3ad38dc9c19 + +COUNT = 23 +KEY = 0101010101010101 +CIPHERTEXT = fbe00a8a1ef8ad72 + +COUNT = 24 +KEY = 0101010101010101 +CIPHERTEXT = 750d079407521363 + +COUNT = 25 +KEY = 0101010101010101 +CIPHERTEXT = 64feed9c724c2faf + +COUNT = 26 +KEY = 0101010101010101 +CIPHERTEXT = f02b263b328e2b60 + +COUNT = 27 +KEY = 0101010101010101 +CIPHERTEXT = 9d64555a9a10b852 + +COUNT = 28 +KEY = 0101010101010101 +CIPHERTEXT = d106ff0bed5255d7 + +COUNT = 29 +KEY = 0101010101010101 +CIPHERTEXT = e1652c6b138c64a5 + +COUNT = 30 +KEY = 0101010101010101 +CIPHERTEXT = e428581186ec8f46 + +COUNT = 31 +KEY = 0101010101010101 +CIPHERTEXT = aeb5f5ede22d1a36 + +COUNT = 32 +KEY = 0101010101010101 +CIPHERTEXT = e943d7568aec0c5c + +COUNT = 33 +KEY = 0101010101010101 +CIPHERTEXT = df98c8276f54b04b + +COUNT = 34 +KEY = 0101010101010101 +CIPHERTEXT = b160e4680f6c696f + +COUNT = 35 +KEY = 0101010101010101 +CIPHERTEXT = fa0752b07d9c4ab8 + +COUNT = 36 +KEY = 0101010101010101 +CIPHERTEXT = ca3a2b036dbc8502 + +COUNT = 37 +KEY = 0101010101010101 +CIPHERTEXT = 5e0905517bb59bcf + +COUNT = 38 +KEY = 0101010101010101 +CIPHERTEXT = 814eeb3b91d90726 + +COUNT = 39 +KEY = 0101010101010101 +CIPHERTEXT = 4d49db1532919c9f + +COUNT = 40 +KEY = 0101010101010101 +CIPHERTEXT = 25eb5fc3f8cf0621 + +COUNT = 41 +KEY = 0101010101010101 +CIPHERTEXT = ab6a20c0620d1c6f + +COUNT = 42 +KEY = 0101010101010101 +CIPHERTEXT = 79e90dbc98f92cca + +COUNT = 43 +KEY = 0101010101010101 +CIPHERTEXT = 866ecedd8072bb0e + +COUNT = 44 +KEY = 0101010101010101 +CIPHERTEXT = 8b54536f2f3e64a8 + +COUNT = 45 +KEY = 0101010101010101 +CIPHERTEXT = ea51d3975595b86b + +COUNT = 46 +KEY = 0101010101010101 +CIPHERTEXT = caffc6ac4542de31 + +COUNT = 47 +KEY = 0101010101010101 +CIPHERTEXT = 8dd45a2ddf90796c + +COUNT = 48 +KEY = 0101010101010101 +CIPHERTEXT = 1029d55e880ec2d0 + +COUNT = 49 +KEY = 0101010101010101 +CIPHERTEXT = 5d86cb23639dbea9 + +COUNT = 50 +KEY = 0101010101010101 +CIPHERTEXT = 1d1ca853ae7c0c5f + +COUNT = 51 +KEY = 0101010101010101 +CIPHERTEXT = ce332329248f3228 + +COUNT = 52 +KEY = 0101010101010101 +CIPHERTEXT = 8405d1abe24fb942 + +COUNT = 53 +KEY = 0101010101010101 +CIPHERTEXT = e643d78090ca4207 + +COUNT = 54 +KEY = 0101010101010101 +CIPHERTEXT = 48221b9937748a23 + +COUNT = 55 +KEY = 0101010101010101 +CIPHERTEXT = dd7c0bbd61fafd54 + +COUNT = 56 +KEY = 0101010101010101 +CIPHERTEXT = 2fbc291a570db5c4 + +COUNT = 57 +KEY = 0101010101010101 +CIPHERTEXT = e07c30d7e4e26e12 + +COUNT = 58 +KEY = 0101010101010101 +CIPHERTEXT = 0953e2258e8e90a1 + +COUNT = 59 +KEY = 0101010101010101 +CIPHERTEXT = 5b711bc4ceebf2ee + +COUNT = 60 +KEY = 0101010101010101 +CIPHERTEXT = cc083f1e6d9e85f6 + +COUNT = 61 +KEY = 0101010101010101 +CIPHERTEXT = d2fd8867d50d2dfe + +COUNT = 62 +KEY = 0101010101010101 +CIPHERTEXT = 06e7ea22ce92708f + +COUNT = 63 +KEY = 0101010101010101 +CIPHERTEXT = 166b40b44aba4bd6 diff --git a/fips/testvectors/des/req/OFBMMT.req b/fips/testvectors/des/req/OFBMMT.req new file mode 100644 index 0000000000..4f6106aed5 --- /dev/null +++ b/fips/testvectors/des/req/OFBMMT.req @@ -0,0 +1,109 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# DES Multi Block Message Test for OFB +# State : Encrypt and Decrypt +# Tue Jun 24 03:13:44 PM + +[ENCRYPT] + +COUNT = 0 +KEY = 6198d0bcad68895d +IV = 4114cb436ee58ab1 +PLAINTEXT = ac40e545e9a3b240 + +COUNT = 1 +KEY = cde97acdb58ad54a +IV = 00cb37f85a32dfac +PLAINTEXT = 76a31e9898b9a3f01bd9927baebe4481 + +COUNT = 2 +KEY = 04e0022cec1cb525 +IV = 268890da0ac177b4 +PLAINTEXT = 88aa03eacd0f7ad27442ab26fc57a4d279a0c3c8dddc1ae0 + +COUNT = 3 +KEY = c2ec861f15239ef1 +IV = 4c42fc6807777306 +PLAINTEXT = 0f00c4e0c0358aa08cee45ff030d9e0ec346ca423dd46ac8bc6ab018a36dc4cd + +COUNT = 4 +KEY = 9dabc2e3bf379d2f +IV = 54610aceb70ec59b +PLAINTEXT = 1132bd8564d0625dc91d487e2ce56122ad576d1da3fd1b6ee1f27114394f6d233fe6ed164f33cc67 + +COUNT = 5 +KEY = dfef64fe70ce4a04 +IV = 2f8d6304e46e0493 +PLAINTEXT = 826046fcd3d4f034d12e2aebbd7478e65a33bcd1b60caade476f7daf39a7e8760717505b49c3381ecd12fdfde8d2c3d8 + +COUNT = 6 +KEY = d3f764850d2f523d +IV = 6c8068b76486d244 +PLAINTEXT = 6a4a7dde8423bef8dd616eed2b3017f25f0e4d17d73087ccd5222da330aff2574900640e4108c1db691f0d87faec619107898673afe2c327 + +COUNT = 7 +KEY = 8368d5e6a8ad2ac8 +IV = c03b04a7b8ca35bf +PLAINTEXT = 35bb24a8d26004e0e24b3a9adc20a8c34c53ca7531f33b6da4c67bbfbb9befc8addc296537636a623e8e6536b59646edc11cf3651b0592bdb7884b0ba3854f4d + +COUNT = 8 +KEY = 5ee64f454f10202a +IV = 2d89bb838524431c +PLAINTEXT = 03f7501beada1f846d5cbf746f1f583f84bb35d9615fd39991bc383e6a1e863040dcd008d8f32c511fee0a901c09c483249576a74d9e0ffc25cca80ca387152a5d5ebaf8fcaaa02c + +COUNT = 9 +KEY = 974f9e75167962ae +IV = 06830973751dc9cb +PLAINTEXT = 88fc29f4ce01d21559d24b25f6d6f061fbdbe8a9da5a55e1f5fccd97b45e0ee6d511ed9a04e69094ac68dd710ca932668d42576e5395b1a81255b8fa2349abfbd74c82100b9924d5fc45dabe5d0d03fe + +[DECRYPT] + +COUNT = 0 +KEY = d38a43264c98efea +IV = 66a9aea46526037f +CIPHERTEXT = 044296a2d8d9dee2 + +COUNT = 1 +KEY = cdfdd5867680011a +IV = 2c1405661b22871b +CIPHERTEXT = 6106eb2a560689b8b70762dc7b6d57c7 + +COUNT = 2 +KEY = 58d389f14515ea8c +IV = ec5f0fd52e94bf1c +CIPHERTEXT = bf0226a0784d2543e82f28809b15b750f6e2fcc31a3ec9f2 + +COUNT = 3 +KEY = 5d8c9e3201342f2c +IV = d00717b8962e7e36 +CIPHERTEXT = 7f618bc94eb68b14cf48d188e011c6fbcdb9bd871652d4e073451be4168cf974 + +COUNT = 4 +KEY = ab0bf28c8352fd1a +IV = c9c634664f49aa46 +CIPHERTEXT = a3c723e687948d74be8fff3575bfb4885da086f6ae1b0cc36cb405c3e906f96f8b6c1d38cf02781c + +COUNT = 5 +KEY = d9d5fe1545d37986 +IV = 15b9907579849287 +CIPHERTEXT = b84b4d44d5739b4a372fff9a166a05a0fb172700c822ee2ef9a75a39296384e7d86882076b148b0374435bb534c4d97b + +COUNT = 6 +KEY = ce1c736d7f766ba8 +IV = 0cb0dcbdd689ec04 +CIPHERTEXT = ad5dd5c90962ba7efe848b9f1de578ed30eecfcf16db70f5ce7a813bd12f62d0a53ce397af3fb5cd49fc1fed145df2d08fb7bf19e94f47d0 + +COUNT = 7 +KEY = cb89254a976de5f2 +IV = f6e359322932fbe5 +CIPHERTEXT = e31791d3274b2f86ad25a2698e27f5b040bd6ed36ac40834f64c2303689d7b5e6f7957bdbaa1038e0d9b7f1c94b179b5773d790cae245cdc17a103cec6444c9d + +COUNT = 8 +KEY = df91bfdf38eabcfd +IV = 0fd16dddf3f4d380 +CIPHERTEXT = 1b735b0557255a0e6d8d675879e7201ca34c8761a129a9147eef7e5a9a0c1125f31be006a2578642a9569727ebf4cca07c8d60081b6fb93cfd8e4bf4cd7aba53f08f3ebc0d6b4ce8 + +COUNT = 9 +KEY = d3e9ea4c5e2abc51 +IV = 21674a6dcad30d51 +CIPHERTEXT = 8ea780373be8264a379967d1063d8690aed454aa18b0af11ba84494173beab2eb616797aeb67f7ec12becc1eaab10675d1f35f56ac25be9709ee0134434dfa44662eb72b943c0710a8f73992180627b6 diff --git a/fips/testvectors/des/req/OFBMonte.req b/fips/testvectors/des/req/OFBMonte.req new file mode 100644 index 0000000000..d7f5d12a12 --- /dev/null +++ b/fips/testvectors/des/req/OFBMonte.req @@ -0,0 +1,17 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# DES Monte Carlo (Modes) Test for OFB +# State : Encrypt and Decrypt +# Tue Jun 24 03:13:44 PM + +[ENCRYPT] +KEY = 04fee5ea234f3b51 +IV = a8766778cda73cff +PLAINTEXT = 176e051c37f6f7e9 + + +[DECRYPT] +KEY = 2551b0cdef9726d9 +IV = fdce6ffeea89f87b +CIPHERTEXT = 726b7e7e4a2f8e7b + diff --git a/fips/testvectors/des/req/OFBinvperm.req b/fips/testvectors/des/req/OFBinvperm.req new file mode 100644 index 0000000000..4a33115abc --- /dev/null +++ b/fips/testvectors/des/req/OFBinvperm.req @@ -0,0 +1,648 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# INVERSE PERMUTATION - KAT for OFB +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:52 PM + +[ENCRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 8000000000000000 +PLAINTEXT = 95f8a5e5dd31d900 + +COUNT = 1 +KEY = 0101010101010101 +IV = 4000000000000000 +PLAINTEXT = dd7f121ca5015619 + +COUNT = 2 +KEY = 0101010101010101 +IV = 2000000000000000 +PLAINTEXT = 2e8653104f3834ea + +COUNT = 3 +KEY = 0101010101010101 +IV = 1000000000000000 +PLAINTEXT = 4bd388ff6cd81d4f + +COUNT = 4 +KEY = 0101010101010101 +IV = 0800000000000000 +PLAINTEXT = 20b9e767b2fb1456 + +COUNT = 5 +KEY = 0101010101010101 +IV = 0400000000000000 +PLAINTEXT = 55579380d77138ef + +COUNT = 6 +KEY = 0101010101010101 +IV = 0200000000000000 +PLAINTEXT = 6cc5defaaf04512f + +COUNT = 7 +KEY = 0101010101010101 +IV = 0100000000000000 +PLAINTEXT = 0d9f279ba5d87260 + +COUNT = 8 +KEY = 0101010101010101 +IV = 0080000000000000 +PLAINTEXT = d9031b0271bd5a0a + +COUNT = 9 +KEY = 0101010101010101 +IV = 0040000000000000 +PLAINTEXT = 424250b37c3dd951 + +COUNT = 10 +KEY = 0101010101010101 +IV = 0020000000000000 +PLAINTEXT = b8061b7ecd9a21e5 + +COUNT = 11 +KEY = 0101010101010101 +IV = 0010000000000000 +PLAINTEXT = f15d0f286b65bd28 + +COUNT = 12 +KEY = 0101010101010101 +IV = 0008000000000000 +PLAINTEXT = add0cc8d6e5deba1 + +COUNT = 13 +KEY = 0101010101010101 +IV = 0004000000000000 +PLAINTEXT = e6d5f82752ad63d1 + +COUNT = 14 +KEY = 0101010101010101 +IV = 0002000000000000 +PLAINTEXT = ecbfe3bd3f591a5e + +COUNT = 15 +KEY = 0101010101010101 +IV = 0001000000000000 +PLAINTEXT = f356834379d165cd + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000800000000000 +PLAINTEXT = 2b9f982f20037fa9 + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000400000000000 +PLAINTEXT = 889de068a16f0be6 + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000200000000000 +PLAINTEXT = e19e275d846a1298 + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000100000000000 +PLAINTEXT = 329a8ed523d71aec + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000080000000000 +PLAINTEXT = e7fce22557d23c97 + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000040000000000 +PLAINTEXT = 12a9f5817ff2d65d + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000020000000000 +PLAINTEXT = a484c3ad38dc9c19 + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000010000000000 +PLAINTEXT = fbe00a8a1ef8ad72 + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000008000000000 +PLAINTEXT = 750d079407521363 + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000004000000000 +PLAINTEXT = 64feed9c724c2faf + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000002000000000 +PLAINTEXT = f02b263b328e2b60 + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000001000000000 +PLAINTEXT = 9d64555a9a10b852 + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000800000000 +PLAINTEXT = d106ff0bed5255d7 + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000400000000 +PLAINTEXT = e1652c6b138c64a5 + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000200000000 +PLAINTEXT = e428581186ec8f46 + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000100000000 +PLAINTEXT = aeb5f5ede22d1a36 + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000080000000 +PLAINTEXT = e943d7568aec0c5c + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000040000000 +PLAINTEXT = df98c8276f54b04b + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000020000000 +PLAINTEXT = b160e4680f6c696f + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000010000000 +PLAINTEXT = fa0752b07d9c4ab8 + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000008000000 +PLAINTEXT = ca3a2b036dbc8502 + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000004000000 +PLAINTEXT = 5e0905517bb59bcf + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000002000000 +PLAINTEXT = 814eeb3b91d90726 + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000001000000 +PLAINTEXT = 4d49db1532919c9f + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000800000 +PLAINTEXT = 25eb5fc3f8cf0621 + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000400000 +PLAINTEXT = ab6a20c0620d1c6f + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000200000 +PLAINTEXT = 79e90dbc98f92cca + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000100000 +PLAINTEXT = 866ecedd8072bb0e + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000080000 +PLAINTEXT = 8b54536f2f3e64a8 + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000040000 +PLAINTEXT = ea51d3975595b86b + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000020000 +PLAINTEXT = caffc6ac4542de31 + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000010000 +PLAINTEXT = 8dd45a2ddf90796c + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000008000 +PLAINTEXT = 1029d55e880ec2d0 + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000004000 +PLAINTEXT = 5d86cb23639dbea9 + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000002000 +PLAINTEXT = 1d1ca853ae7c0c5f + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000001000 +PLAINTEXT = ce332329248f3228 + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000800 +PLAINTEXT = 8405d1abe24fb942 + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000400 +PLAINTEXT = e643d78090ca4207 + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000200 +PLAINTEXT = 48221b9937748a23 + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000100 +PLAINTEXT = dd7c0bbd61fafd54 + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000080 +PLAINTEXT = 2fbc291a570db5c4 + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000040 +PLAINTEXT = e07c30d7e4e26e12 + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000020 +PLAINTEXT = 0953e2258e8e90a1 + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000010 +PLAINTEXT = 5b711bc4ceebf2ee + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000008 +PLAINTEXT = cc083f1e6d9e85f6 + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000004 +PLAINTEXT = d2fd8867d50d2dfe + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000002 +PLAINTEXT = 06e7ea22ce92708f + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000001 +PLAINTEXT = 166b40b44aba4bd6 + + +[DECRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 8000000000000000 +CIPHERTEXT = 95f8a5e5dd31d900 + +COUNT = 1 +KEY = 0101010101010101 +IV = 4000000000000000 +CIPHERTEXT = dd7f121ca5015619 + +COUNT = 2 +KEY = 0101010101010101 +IV = 2000000000000000 +CIPHERTEXT = 2e8653104f3834ea + +COUNT = 3 +KEY = 0101010101010101 +IV = 1000000000000000 +CIPHERTEXT = 4bd388ff6cd81d4f + +COUNT = 4 +KEY = 0101010101010101 +IV = 0800000000000000 +CIPHERTEXT = 20b9e767b2fb1456 + +COUNT = 5 +KEY = 0101010101010101 +IV = 0400000000000000 +CIPHERTEXT = 55579380d77138ef + +COUNT = 6 +KEY = 0101010101010101 +IV = 0200000000000000 +CIPHERTEXT = 6cc5defaaf04512f + +COUNT = 7 +KEY = 0101010101010101 +IV = 0100000000000000 +CIPHERTEXT = 0d9f279ba5d87260 + +COUNT = 8 +KEY = 0101010101010101 +IV = 0080000000000000 +CIPHERTEXT = d9031b0271bd5a0a + +COUNT = 9 +KEY = 0101010101010101 +IV = 0040000000000000 +CIPHERTEXT = 424250b37c3dd951 + +COUNT = 10 +KEY = 0101010101010101 +IV = 0020000000000000 +CIPHERTEXT = b8061b7ecd9a21e5 + +COUNT = 11 +KEY = 0101010101010101 +IV = 0010000000000000 +CIPHERTEXT = f15d0f286b65bd28 + +COUNT = 12 +KEY = 0101010101010101 +IV = 0008000000000000 +CIPHERTEXT = add0cc8d6e5deba1 + +COUNT = 13 +KEY = 0101010101010101 +IV = 0004000000000000 +CIPHERTEXT = e6d5f82752ad63d1 + +COUNT = 14 +KEY = 0101010101010101 +IV = 0002000000000000 +CIPHERTEXT = ecbfe3bd3f591a5e + +COUNT = 15 +KEY = 0101010101010101 +IV = 0001000000000000 +CIPHERTEXT = f356834379d165cd + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000800000000000 +CIPHERTEXT = 2b9f982f20037fa9 + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000400000000000 +CIPHERTEXT = 889de068a16f0be6 + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000200000000000 +CIPHERTEXT = e19e275d846a1298 + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000100000000000 +CIPHERTEXT = 329a8ed523d71aec + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000080000000000 +CIPHERTEXT = e7fce22557d23c97 + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000040000000000 +CIPHERTEXT = 12a9f5817ff2d65d + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000020000000000 +CIPHERTEXT = a484c3ad38dc9c19 + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000010000000000 +CIPHERTEXT = fbe00a8a1ef8ad72 + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000008000000000 +CIPHERTEXT = 750d079407521363 + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000004000000000 +CIPHERTEXT = 64feed9c724c2faf + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000002000000000 +CIPHERTEXT = f02b263b328e2b60 + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000001000000000 +CIPHERTEXT = 9d64555a9a10b852 + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000800000000 +CIPHERTEXT = d106ff0bed5255d7 + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000400000000 +CIPHERTEXT = e1652c6b138c64a5 + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000200000000 +CIPHERTEXT = e428581186ec8f46 + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000100000000 +CIPHERTEXT = aeb5f5ede22d1a36 + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000080000000 +CIPHERTEXT = e943d7568aec0c5c + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000040000000 +CIPHERTEXT = df98c8276f54b04b + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000020000000 +CIPHERTEXT = b160e4680f6c696f + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000010000000 +CIPHERTEXT = fa0752b07d9c4ab8 + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000008000000 +CIPHERTEXT = ca3a2b036dbc8502 + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000004000000 +CIPHERTEXT = 5e0905517bb59bcf + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000002000000 +CIPHERTEXT = 814eeb3b91d90726 + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000001000000 +CIPHERTEXT = 4d49db1532919c9f + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000800000 +CIPHERTEXT = 25eb5fc3f8cf0621 + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000400000 +CIPHERTEXT = ab6a20c0620d1c6f + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000200000 +CIPHERTEXT = 79e90dbc98f92cca + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000100000 +CIPHERTEXT = 866ecedd8072bb0e + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000080000 +CIPHERTEXT = 8b54536f2f3e64a8 + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000040000 +CIPHERTEXT = ea51d3975595b86b + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000020000 +CIPHERTEXT = caffc6ac4542de31 + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000010000 +CIPHERTEXT = 8dd45a2ddf90796c + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000008000 +CIPHERTEXT = 1029d55e880ec2d0 + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000004000 +CIPHERTEXT = 5d86cb23639dbea9 + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000002000 +CIPHERTEXT = 1d1ca853ae7c0c5f + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000001000 +CIPHERTEXT = ce332329248f3228 + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000800 +CIPHERTEXT = 8405d1abe24fb942 + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000400 +CIPHERTEXT = e643d78090ca4207 + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000200 +CIPHERTEXT = 48221b9937748a23 + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000100 +CIPHERTEXT = dd7c0bbd61fafd54 + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000080 +CIPHERTEXT = 2fbc291a570db5c4 + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000040 +CIPHERTEXT = e07c30d7e4e26e12 + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000020 +CIPHERTEXT = 0953e2258e8e90a1 + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000010 +CIPHERTEXT = 5b711bc4ceebf2ee + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000008 +CIPHERTEXT = cc083f1e6d9e85f6 + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000004 +CIPHERTEXT = d2fd8867d50d2dfe + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000002 +CIPHERTEXT = 06e7ea22ce92708f + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000001 +CIPHERTEXT = 166b40b44aba4bd6 diff --git a/fips/testvectors/des/req/OFBpermop.req b/fips/testvectors/des/req/OFBpermop.req new file mode 100644 index 0000000000..8a045ba7ba --- /dev/null +++ b/fips/testvectors/des/req/OFBpermop.req @@ -0,0 +1,328 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# PERMUTATION OPERATION - KAT for OFB +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:52 PM + +[ENCRYPT] +COUNT = 0 +KEY = 1046913489980131 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 1 +KEY = 1007103489988020 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 2 +KEY = 10071034c8980120 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 3 +KEY = 1046103489988020 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 4 +KEY = 1086911519190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 5 +KEY = 1086911519580101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 6 +KEY = 5107b01519580101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 7 +KEY = 1007b01519190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 8 +KEY = 3107915498080101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 9 +KEY = 3107919498080101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 10 +KEY = 10079115b9080140 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 11 +KEY = 3107911598080140 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 12 +KEY = 1007d01589980101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 13 +KEY = 9107911589980101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 14 +KEY = 9107d01589190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 15 +KEY = 1007d01598980120 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 16 +KEY = 1007940498190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 17 +KEY = 0107910491190401 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 18 +KEY = 0107910491190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 19 +KEY = 0107940491190401 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 20 +KEY = 19079210981a0101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 21 +KEY = 1007911998190801 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 22 +KEY = 10079119981a0801 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 23 +KEY = 1007921098190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 24 +KEY = 100791159819010b +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 25 +KEY = 1004801598190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 26 +KEY = 1004801598190102 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 27 +KEY = 1004801598190108 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 28 +KEY = 1002911598100104 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 29 +KEY = 1002911598190104 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 30 +KEY = 1002911598100201 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 31 +KEY = 1002911698100101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + + +[DECRYPT] +COUNT = 0 +KEY = 1046913489980131 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 1 +KEY = 1007103489988020 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 2 +KEY = 10071034c8980120 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 3 +KEY = 1046103489988020 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 4 +KEY = 1086911519190101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 5 +KEY = 1086911519580101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 6 +KEY = 5107b01519580101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 7 +KEY = 1007b01519190101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 8 +KEY = 3107915498080101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 9 +KEY = 3107919498080101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 10 +KEY = 10079115b9080140 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 11 +KEY = 3107911598080140 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 12 +KEY = 1007d01589980101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 13 +KEY = 9107911589980101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 14 +KEY = 9107d01589190101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 15 +KEY = 1007d01598980120 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 16 +KEY = 1007940498190101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 17 +KEY = 0107910491190401 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 18 +KEY = 0107910491190101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 19 +KEY = 0107940491190401 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 20 +KEY = 19079210981a0101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 21 +KEY = 1007911998190801 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 22 +KEY = 10079119981a0801 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 23 +KEY = 1007921098190101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 24 +KEY = 100791159819010b +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 25 +KEY = 1004801598190101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 26 +KEY = 1004801598190102 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 27 +KEY = 1004801598190108 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 28 +KEY = 1002911598100104 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 29 +KEY = 1002911598190104 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 30 +KEY = 1002911598100201 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 31 +KEY = 1002911698100101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 diff --git a/fips/testvectors/des/req/OFBsubtab.req b/fips/testvectors/des/req/OFBsubtab.req new file mode 100644 index 0000000000..291af44dd0 --- /dev/null +++ b/fips/testvectors/des/req/OFBsubtab.req @@ -0,0 +1,198 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# SUBSTITUTION TABLE - KAT for OFB +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:52 PM + +[ENCRYPT] +COUNT = 0 +KEY = 7ca110454a1a6e57 +IV = 01a1d6d039776742 +PLAINTEXT = 0000000000000000 + +COUNT = 1 +KEY = 0131d9619dc1376e +IV = 5cd54ca83def57da +PLAINTEXT = 0000000000000000 + +COUNT = 2 +KEY = 07a1133e4a0b2686 +IV = 0248d43806f67172 +PLAINTEXT = 0000000000000000 + +COUNT = 3 +KEY = 3849674c2602319e +IV = 51454b582ddf440a +PLAINTEXT = 0000000000000000 + +COUNT = 4 +KEY = 04b915ba43feb5b6 +IV = 42fd443059577fa2 +PLAINTEXT = 0000000000000000 + +COUNT = 5 +KEY = 0113b970fd34f2ce +IV = 059b5e0851cf143a +PLAINTEXT = 0000000000000000 + +COUNT = 6 +KEY = 0170f175468fb5e6 +IV = 0756d8e0774761d2 +PLAINTEXT = 0000000000000000 + +COUNT = 7 +KEY = 43297fad38e373fe +IV = 762514b829bf486a +PLAINTEXT = 0000000000000000 + +COUNT = 8 +KEY = 07a7137045da2a16 +IV = 3bdd119049372802 +PLAINTEXT = 0000000000000000 + +COUNT = 9 +KEY = 04689104c2fd3b2f +IV = 26955f6835af609a +PLAINTEXT = 0000000000000000 + +COUNT = 10 +KEY = 37d06bb516cb7546 +IV = 164d5e404f275232 +PLAINTEXT = 0000000000000000 + +COUNT = 11 +KEY = 1f08260d1ac2465e +IV = 6b056e18759f5cca +PLAINTEXT = 0000000000000000 + +COUNT = 12 +KEY = 584023641aba6176 +IV = 004bd6ef09176062 +PLAINTEXT = 0000000000000000 + +COUNT = 13 +KEY = 025816164629b007 +IV = 480d39006ee762f2 +PLAINTEXT = 0000000000000000 + +COUNT = 14 +KEY = 49793ebc79b3258f +IV = 437540c8698f3cfa +PLAINTEXT = 0000000000000000 + +COUNT = 15 +KEY = 4fb05e1515ab73a7 +IV = 072d43a077075292 +PLAINTEXT = 0000000000000000 + +COUNT = 16 +KEY = 49e95d6d4ca229bf +IV = 02fe55778117f12a +PLAINTEXT = 0000000000000000 + +COUNT = 17 +KEY = 018310dc409b26d6 +IV = 1d9d5c5018f728c2 +PLAINTEXT = 0000000000000000 + +COUNT = 18 +KEY = 1c587f1c13924fef +IV = 305532286d6f295a +PLAINTEXT = 0000000000000000 + + +[DECRYPT] +COUNT = 0 +KEY = 7ca110454a1a6e57 +IV = 01a1d6d039776742 +CIPHERTEXT = 0000000000000000 + +COUNT = 1 +KEY = 0131d9619dc1376e +IV = 5cd54ca83def57da +CIPHERTEXT = 0000000000000000 + +COUNT = 2 +KEY = 07a1133e4a0b2686 +IV = 0248d43806f67172 +CIPHERTEXT = 0000000000000000 + +COUNT = 3 +KEY = 3849674c2602319e +IV = 51454b582ddf440a +CIPHERTEXT = 0000000000000000 + +COUNT = 4 +KEY = 04b915ba43feb5b6 +IV = 42fd443059577fa2 +CIPHERTEXT = 0000000000000000 + +COUNT = 5 +KEY = 0113b970fd34f2ce +IV = 059b5e0851cf143a +CIPHERTEXT = 0000000000000000 + +COUNT = 6 +KEY = 0170f175468fb5e6 +IV = 0756d8e0774761d2 +CIPHERTEXT = 0000000000000000 + +COUNT = 7 +KEY = 43297fad38e373fe +IV = 762514b829bf486a +CIPHERTEXT = 0000000000000000 + +COUNT = 8 +KEY = 07a7137045da2a16 +IV = 3bdd119049372802 +CIPHERTEXT = 0000000000000000 + +COUNT = 9 +KEY = 04689104c2fd3b2f +IV = 26955f6835af609a +CIPHERTEXT = 0000000000000000 + +COUNT = 10 +KEY = 37d06bb516cb7546 +IV = 164d5e404f275232 +CIPHERTEXT = 0000000000000000 + +COUNT = 11 +KEY = 1f08260d1ac2465e +IV = 6b056e18759f5cca +CIPHERTEXT = 0000000000000000 + +COUNT = 12 +KEY = 584023641aba6176 +IV = 004bd6ef09176062 +CIPHERTEXT = 0000000000000000 + +COUNT = 13 +KEY = 025816164629b007 +IV = 480d39006ee762f2 +CIPHERTEXT = 0000000000000000 + +COUNT = 14 +KEY = 49793ebc79b3258f +IV = 437540c8698f3cfa +CIPHERTEXT = 0000000000000000 + +COUNT = 15 +KEY = 4fb05e1515ab73a7 +IV = 072d43a077075292 +CIPHERTEXT = 0000000000000000 + +COUNT = 16 +KEY = 49e95d6d4ca229bf +IV = 02fe55778117f12a +CIPHERTEXT = 0000000000000000 + +COUNT = 17 +KEY = 018310dc409b26d6 +IV = 1d9d5c5018f728c2 +CIPHERTEXT = 0000000000000000 + +COUNT = 18 +KEY = 1c587f1c13924fef +IV = 305532286d6f295a +CIPHERTEXT = 0000000000000000 diff --git a/fips/testvectors/des/req/OFBvarkey.req b/fips/testvectors/des/req/OFBvarkey.req new file mode 100644 index 0000000000..f52caf4f8e --- /dev/null +++ b/fips/testvectors/des/req/OFBvarkey.req @@ -0,0 +1,568 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# VARIABLE KEY - KAT for OFB +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:52 PM + +[ENCRYPT] +COUNT = 0 +KEY = 8001010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 1 +KEY = 4001010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 2 +KEY = 2001010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 3 +KEY = 1001010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 4 +KEY = 0801010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 5 +KEY = 0401010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 6 +KEY = 0201010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 7 +KEY = 0180010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 8 +KEY = 0140010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 9 +KEY = 0120010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 10 +KEY = 0110010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 11 +KEY = 0108010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 12 +KEY = 0104010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 13 +KEY = 0102010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 14 +KEY = 0101800101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 15 +KEY = 0101400101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 16 +KEY = 0101200101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 17 +KEY = 0101100101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 18 +KEY = 0101080101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 19 +KEY = 0101040101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 20 +KEY = 0101020101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 21 +KEY = 0101018001010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 22 +KEY = 0101014001010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 23 +KEY = 0101012001010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 24 +KEY = 0101011001010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 25 +KEY = 0101010801010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 26 +KEY = 0101010401010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 27 +KEY = 0101010201010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 28 +KEY = 0101010180010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 29 +KEY = 0101010140010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 30 +KEY = 0101010120010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 31 +KEY = 0101010110010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 32 +KEY = 0101010108010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 33 +KEY = 0101010104010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 34 +KEY = 0101010102010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 35 +KEY = 0101010101800101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 36 +KEY = 0101010101400101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 37 +KEY = 0101010101200101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 38 +KEY = 0101010101100101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 39 +KEY = 0101010101080101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 40 +KEY = 0101010101040101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 41 +KEY = 0101010101020101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 42 +KEY = 0101010101018001 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 43 +KEY = 0101010101014001 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 44 +KEY = 0101010101012001 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 45 +KEY = 0101010101011001 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 46 +KEY = 0101010101010801 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 47 +KEY = 0101010101010401 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 48 +KEY = 0101010101010201 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 49 +KEY = 0101010101010180 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 50 +KEY = 0101010101010140 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 51 +KEY = 0101010101010120 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 52 +KEY = 0101010101010110 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 53 +KEY = 0101010101010108 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 54 +KEY = 0101010101010104 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 55 +KEY = 0101010101010102 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 + + +[DECRYPT] +COUNT = 0 +KEY = 8001010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 1 +KEY = 4001010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 2 +KEY = 2001010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 3 +KEY = 1001010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 4 +KEY = 0801010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 5 +KEY = 0401010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 6 +KEY = 0201010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 7 +KEY = 0180010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 8 +KEY = 0140010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 9 +KEY = 0120010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 10 +KEY = 0110010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 11 +KEY = 0108010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 12 +KEY = 0104010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 13 +KEY = 0102010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 14 +KEY = 0101800101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 15 +KEY = 0101400101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 16 +KEY = 0101200101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 17 +KEY = 0101100101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 18 +KEY = 0101080101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 19 +KEY = 0101040101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 20 +KEY = 0101020101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 21 +KEY = 0101018001010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 22 +KEY = 0101014001010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 23 +KEY = 0101012001010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 24 +KEY = 0101011001010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 25 +KEY = 0101010801010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 26 +KEY = 0101010401010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 27 +KEY = 0101010201010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 28 +KEY = 0101010180010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 29 +KEY = 0101010140010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 30 +KEY = 0101010120010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 31 +KEY = 0101010110010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 32 +KEY = 0101010108010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 33 +KEY = 0101010104010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 34 +KEY = 0101010102010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 35 +KEY = 0101010101800101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 36 +KEY = 0101010101400101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 37 +KEY = 0101010101200101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 38 +KEY = 0101010101100101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 39 +KEY = 0101010101080101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 40 +KEY = 0101010101040101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 41 +KEY = 0101010101020101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 42 +KEY = 0101010101018001 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 43 +KEY = 0101010101014001 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 44 +KEY = 0101010101012001 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 45 +KEY = 0101010101011001 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 46 +KEY = 0101010101010801 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 47 +KEY = 0101010101010401 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 48 +KEY = 0101010101010201 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 49 +KEY = 0101010101010180 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 50 +KEY = 0101010101010140 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 51 +KEY = 0101010101010120 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 52 +KEY = 0101010101010110 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 53 +KEY = 0101010101010108 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 54 +KEY = 0101010101010104 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 55 +KEY = 0101010101010102 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 diff --git a/fips/testvectors/des/req/OFBvartext.req b/fips/testvectors/des/req/OFBvartext.req new file mode 100644 index 0000000000..d9f2466043 --- /dev/null +++ b/fips/testvectors/des/req/OFBvartext.req @@ -0,0 +1,648 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# VARIABLE PLAINTEXT/CIPHERTEXT - KAT for OFB +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:52 PM + +[ENCRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 8000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 1 +KEY = 0101010101010101 +IV = 4000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 2 +KEY = 0101010101010101 +IV = 2000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 3 +KEY = 0101010101010101 +IV = 1000000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 4 +KEY = 0101010101010101 +IV = 0800000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 5 +KEY = 0101010101010101 +IV = 0400000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 6 +KEY = 0101010101010101 +IV = 0200000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 7 +KEY = 0101010101010101 +IV = 0100000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 8 +KEY = 0101010101010101 +IV = 0080000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 9 +KEY = 0101010101010101 +IV = 0040000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 10 +KEY = 0101010101010101 +IV = 0020000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 11 +KEY = 0101010101010101 +IV = 0010000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 12 +KEY = 0101010101010101 +IV = 0008000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 13 +KEY = 0101010101010101 +IV = 0004000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 14 +KEY = 0101010101010101 +IV = 0002000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 15 +KEY = 0101010101010101 +IV = 0001000000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000800000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000400000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000200000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000100000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000080000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000040000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000020000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000010000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000008000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000004000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000002000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000001000000000 +PLAINTEXT = 0000000000000000 + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000800000000 +PLAINTEXT = 0000000000000000 + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000400000000 +PLAINTEXT = 0000000000000000 + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000200000000 +PLAINTEXT = 0000000000000000 + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000100000000 +PLAINTEXT = 0000000000000000 + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000080000000 +PLAINTEXT = 0000000000000000 + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000040000000 +PLAINTEXT = 0000000000000000 + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000020000000 +PLAINTEXT = 0000000000000000 + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000010000000 +PLAINTEXT = 0000000000000000 + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000008000000 +PLAINTEXT = 0000000000000000 + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000004000000 +PLAINTEXT = 0000000000000000 + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000002000000 +PLAINTEXT = 0000000000000000 + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000001000000 +PLAINTEXT = 0000000000000000 + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000800000 +PLAINTEXT = 0000000000000000 + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000400000 +PLAINTEXT = 0000000000000000 + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000200000 +PLAINTEXT = 0000000000000000 + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000100000 +PLAINTEXT = 0000000000000000 + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000080000 +PLAINTEXT = 0000000000000000 + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000040000 +PLAINTEXT = 0000000000000000 + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000020000 +PLAINTEXT = 0000000000000000 + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000010000 +PLAINTEXT = 0000000000000000 + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000008000 +PLAINTEXT = 0000000000000000 + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000004000 +PLAINTEXT = 0000000000000000 + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000002000 +PLAINTEXT = 0000000000000000 + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000001000 +PLAINTEXT = 0000000000000000 + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000800 +PLAINTEXT = 0000000000000000 + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000400 +PLAINTEXT = 0000000000000000 + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000200 +PLAINTEXT = 0000000000000000 + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000100 +PLAINTEXT = 0000000000000000 + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000080 +PLAINTEXT = 0000000000000000 + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000040 +PLAINTEXT = 0000000000000000 + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000020 +PLAINTEXT = 0000000000000000 + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000010 +PLAINTEXT = 0000000000000000 + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000008 +PLAINTEXT = 0000000000000000 + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000004 +PLAINTEXT = 0000000000000000 + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000002 +PLAINTEXT = 0000000000000000 + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000001 +PLAINTEXT = 0000000000000000 + + +[DECRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 8000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 1 +KEY = 0101010101010101 +IV = 4000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 2 +KEY = 0101010101010101 +IV = 2000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 3 +KEY = 0101010101010101 +IV = 1000000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 4 +KEY = 0101010101010101 +IV = 0800000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 5 +KEY = 0101010101010101 +IV = 0400000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 6 +KEY = 0101010101010101 +IV = 0200000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 7 +KEY = 0101010101010101 +IV = 0100000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 8 +KEY = 0101010101010101 +IV = 0080000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 9 +KEY = 0101010101010101 +IV = 0040000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 10 +KEY = 0101010101010101 +IV = 0020000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 11 +KEY = 0101010101010101 +IV = 0010000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 12 +KEY = 0101010101010101 +IV = 0008000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 13 +KEY = 0101010101010101 +IV = 0004000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 14 +KEY = 0101010101010101 +IV = 0002000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 15 +KEY = 0101010101010101 +IV = 0001000000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000800000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000400000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000200000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000100000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000080000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000040000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000020000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000010000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000008000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000004000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000002000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000001000000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000800000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000400000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000200000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000100000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000080000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000040000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000020000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000010000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000008000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000004000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000002000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000001000000 +CIPHERTEXT = 0000000000000000 + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000800000 +CIPHERTEXT = 0000000000000000 + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000400000 +CIPHERTEXT = 0000000000000000 + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000200000 +CIPHERTEXT = 0000000000000000 + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000100000 +CIPHERTEXT = 0000000000000000 + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000080000 +CIPHERTEXT = 0000000000000000 + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000040000 +CIPHERTEXT = 0000000000000000 + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000020000 +CIPHERTEXT = 0000000000000000 + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000010000 +CIPHERTEXT = 0000000000000000 + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000008000 +CIPHERTEXT = 0000000000000000 + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000004000 +CIPHERTEXT = 0000000000000000 + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000002000 +CIPHERTEXT = 0000000000000000 + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000001000 +CIPHERTEXT = 0000000000000000 + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000800 +CIPHERTEXT = 0000000000000000 + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000400 +CIPHERTEXT = 0000000000000000 + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000200 +CIPHERTEXT = 0000000000000000 + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000100 +CIPHERTEXT = 0000000000000000 + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000080 +CIPHERTEXT = 0000000000000000 + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000040 +CIPHERTEXT = 0000000000000000 + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000020 +CIPHERTEXT = 0000000000000000 + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000010 +CIPHERTEXT = 0000000000000000 + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000008 +CIPHERTEXT = 0000000000000000 + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000004 +CIPHERTEXT = 0000000000000000 + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000002 +CIPHERTEXT = 0000000000000000 + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000001 +CIPHERTEXT = 0000000000000000 diff --git a/fips/testvectors/des/sample/CBCMMT.sam b/fips/testvectors/des/sample/CBCMMT.sam new file mode 100644 index 0000000000..922e19a11f --- /dev/null +++ b/fips/testvectors/des/sample/CBCMMT.sam @@ -0,0 +1,46 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# DES Multi Block Message Test for CBC +# State : Encrypt and Decrypt +# Tue Jun 24 03:12:34 PM + +[ENCRYPT] + +COUNT = 0 +KEY = 0beaf8ab2f4ab529 +IV = 03c605dd0725e975 +PLAINTEXT = 20979b8b3577e339 +CIPHERTEXT = edef276fb2199246 + +COUNT = 1 +KEY = 1c232f1acd4562f1 +IV = 553e35e8fb6e859e +PLAINTEXT = cfd02cea6b26eca97a5e595ea1566d73 +CIPHERTEXT = 44d1f3f0d2aae72dcb82d5ebfcc0c292 + +COUNT = 2 +KEY = 7f6d13c7e645a210 +IV = 8ec669cf1e5d0bf0 +PLAINTEXT = 93b764fe7b95414457331504a4e66ceb686d9c49c632f872 +CIPHERTEXT = 2d28d9b62c8afc86d7d4bc0a4e7990eeea8401cbfdbdf7a8 + +[DECRYPT] + +COUNT = 0 +KEY = 377679d67f734389 +IV = abb7da496aeb27e8 +CIPHERTEXT = d6652f60526035a4 +PLAINTEXT = 601182ba1bd80741 + +COUNT = 1 +KEY = 57bf7308d6ad98fb +IV = cc62620a4c47c7e1 +CIPHERTEXT = 97c29b6f8a657cae625d5cfcf572f103 +PLAINTEXT = e56054c723c7b9bb647cacad6173e957 + +COUNT = 2 +KEY = 1a4cdf9d3d3d589b +IV = 681a7773f6fd6429 +CIPHERTEXT = bb7c53b06399f41977a920c3367fac39c5388fa8757045a8 +PLAINTEXT = 750d313b9e8e1491dc03617451ab62708910e9086691de0a + diff --git a/fips/testvectors/des/sample/CBCMonte.sam b/fips/testvectors/des/sample/CBCMonte.sam new file mode 100644 index 0000000000..c6832ebcc9 --- /dev/null +++ b/fips/testvectors/des/sample/CBCMonte.sam @@ -0,0 +1,58 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# DES Monte Carlo (Modes) Test for CBC +# State : Encrypt and Decrypt +# Tue Jun 24 03:12:34 PM + +[ENCRYPT] + +COUNT = 0 +KEY = 98a275e5da515da2 +IV = f58d8cada3a4248a +PLAINTEXT = 96d1169b840e8fdb +CIPHERTEXT = 1d08db382bc89ef7 + +COUNT = 1 +KEY = 85abaedcf198c254 +IV = 1d08db382bc89ef7 +PLAINTEXT = 2b4866e04322388f +CIPHERTEXT = d00a1df6c39fcb5a + +COUNT = 2 +KEY = 54a1b32a3207080e +IV = d00a1df6c39fcb5a +PLAINTEXT = 174856c0df145232 +CIPHERTEXT = d8acd5efcaf57dd8 + +COUNT = 3 +KEY = 8c0d67c4f8f275d6 +IV = d8acd5efcaf57dd8 +PLAINTEXT = 39303c314f212bf2 +CIPHERTEXT = 11abe77808e2b5c5 + +[DECRYPT] + +COUNT = 0 +KEY = fde0d679bc5d67fd +IV = 753ce88d8bfcdc54 +CIPHERTEXT = cacec93587bec613 +PLAINTEXT = 76d509493735a4b7 + +COUNT = 1 +KEY = 8a34df318a68c24a +IV = 949e73c7abbc9c23 +CIPHERTEXT = 76d509493735a4b7 +PLAINTEXT = bc2ef270b80bcb38 + +COUNT = 2 +KEY = 371a2c4032620873 +IV = e4c0ca0136c65d2d +CIPHERTEXT = bc2ef270b80bcb38 +PLAINTEXT = 697d2230a9611467 + +COUNT = 3 +KEY = 5e670e709b021c15 +IV = 67699ba46acc8a56 +CIPHERTEXT = 697d2230a9611467 +PLAINTEXT = 87b0a6469ad76952 + diff --git a/fips/testvectors/des/sample/CBCinvperm.sam b/fips/testvectors/des/sample/CBCinvperm.sam new file mode 100644 index 0000000000..f434c6c31e --- /dev/null +++ b/fips/testvectors/des/sample/CBCinvperm.sam @@ -0,0 +1,776 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# INVERSE PERMUTATION - KAT for CBC +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 95f8a5e5dd31d900 +CIPHERTEXT = ? + +COUNT = 1 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = dd7f121ca5015619 +CIPHERTEXT = ? + +COUNT = 2 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 2e8653104f3834ea +CIPHERTEXT = ? + +COUNT = 3 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 4bd388ff6cd81d4f +CIPHERTEXT = ? + +COUNT = 4 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 20b9e767b2fb1456 +CIPHERTEXT = ? + +COUNT = 5 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 55579380d77138ef +CIPHERTEXT = ? + +COUNT = 6 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 6cc5defaaf04512f +CIPHERTEXT = ? + +COUNT = 7 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0d9f279ba5d87260 +CIPHERTEXT = ? + +COUNT = 8 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = d9031b0271bd5a0a +CIPHERTEXT = ? + +COUNT = 9 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 424250b37c3dd951 +CIPHERTEXT = ? + +COUNT = 10 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = b8061b7ecd9a21e5 +CIPHERTEXT = ? + +COUNT = 11 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = f15d0f286b65bd28 +CIPHERTEXT = ? + +COUNT = 12 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = add0cc8d6e5deba1 +CIPHERTEXT = ? + +COUNT = 13 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = e6d5f82752ad63d1 +CIPHERTEXT = ? + +COUNT = 14 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = ecbfe3bd3f591a5e +CIPHERTEXT = ? + +COUNT = 15 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = f356834379d165cd +CIPHERTEXT = ? + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 2b9f982f20037fa9 +CIPHERTEXT = ? + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 889de068a16f0be6 +CIPHERTEXT = ? + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = e19e275d846a1298 +CIPHERTEXT = ? + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 329a8ed523d71aec +CIPHERTEXT = ? + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = e7fce22557d23c97 +CIPHERTEXT = ? + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 12a9f5817ff2d65d +CIPHERTEXT = ? + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = a484c3ad38dc9c19 +CIPHERTEXT = ? + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = fbe00a8a1ef8ad72 +CIPHERTEXT = ? + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 750d079407521363 +CIPHERTEXT = ? + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 64feed9c724c2faf +CIPHERTEXT = ? + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = f02b263b328e2b60 +CIPHERTEXT = ? + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 9d64555a9a10b852 +CIPHERTEXT = ? + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = d106ff0bed5255d7 +CIPHERTEXT = ? + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = e1652c6b138c64a5 +CIPHERTEXT = ? + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = e428581186ec8f46 +CIPHERTEXT = ? + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = aeb5f5ede22d1a36 +CIPHERTEXT = ? + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = e943d7568aec0c5c +CIPHERTEXT = ? + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = df98c8276f54b04b +CIPHERTEXT = ? + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = b160e4680f6c696f +CIPHERTEXT = ? + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = fa0752b07d9c4ab8 +CIPHERTEXT = ? + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = ca3a2b036dbc8502 +CIPHERTEXT = ? + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 5e0905517bb59bcf +CIPHERTEXT = ? + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 814eeb3b91d90726 +CIPHERTEXT = ? + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 4d49db1532919c9f +CIPHERTEXT = ? + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 25eb5fc3f8cf0621 +CIPHERTEXT = ? + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = ab6a20c0620d1c6f +CIPHERTEXT = ? + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 79e90dbc98f92cca +CIPHERTEXT = ? + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 866ecedd8072bb0e +CIPHERTEXT = ? + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 8b54536f2f3e64a8 +CIPHERTEXT = ? + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = ea51d3975595b86b +CIPHERTEXT = ? + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = caffc6ac4542de31 +CIPHERTEXT = ? + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 8dd45a2ddf90796c +CIPHERTEXT = ? + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 1029d55e880ec2d0 +CIPHERTEXT = ? + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 5d86cb23639dbea9 +CIPHERTEXT = ? + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 1d1ca853ae7c0c5f +CIPHERTEXT = ? + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = ce332329248f3228 +CIPHERTEXT = ? + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 8405d1abe24fb942 +CIPHERTEXT = ? + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = e643d78090ca4207 +CIPHERTEXT = ? + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 48221b9937748a23 +CIPHERTEXT = ? + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = dd7c0bbd61fafd54 +CIPHERTEXT = ? + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 2fbc291a570db5c4 +CIPHERTEXT = ? + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = e07c30d7e4e26e12 +CIPHERTEXT = ? + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0953e2258e8e90a1 +CIPHERTEXT = ? + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 5b711bc4ceebf2ee +CIPHERTEXT = ? + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = cc083f1e6d9e85f6 +CIPHERTEXT = ? + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = d2fd8867d50d2dfe +CIPHERTEXT = ? + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 06e7ea22ce92708f +CIPHERTEXT = ? + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 166b40b44aba4bd6 +CIPHERTEXT = ? + + +[DECRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 8000000000000000 +PLAINTEXT = ? + +COUNT = 1 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 4000000000000000 +PLAINTEXT = ? + +COUNT = 2 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 2000000000000000 +PLAINTEXT = ? + +COUNT = 3 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 1000000000000000 +PLAINTEXT = ? + +COUNT = 4 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0800000000000000 +PLAINTEXT = ? + +COUNT = 5 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0400000000000000 +PLAINTEXT = ? + +COUNT = 6 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0200000000000000 +PLAINTEXT = ? + +COUNT = 7 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0100000000000000 +PLAINTEXT = ? + +COUNT = 8 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0080000000000000 +PLAINTEXT = ? + +COUNT = 9 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0040000000000000 +PLAINTEXT = ? + +COUNT = 10 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0020000000000000 +PLAINTEXT = ? + +COUNT = 11 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0010000000000000 +PLAINTEXT = ? + +COUNT = 12 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0008000000000000 +PLAINTEXT = ? + +COUNT = 13 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0004000000000000 +PLAINTEXT = ? + +COUNT = 14 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0002000000000000 +PLAINTEXT = ? + +COUNT = 15 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0001000000000000 +PLAINTEXT = ? + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000800000000000 +PLAINTEXT = ? + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000400000000000 +PLAINTEXT = ? + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000200000000000 +PLAINTEXT = ? + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000100000000000 +PLAINTEXT = ? + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000080000000000 +PLAINTEXT = ? + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000040000000000 +PLAINTEXT = ? + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000020000000000 +PLAINTEXT = ? + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000010000000000 +PLAINTEXT = ? + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000008000000000 +PLAINTEXT = ? + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000004000000000 +PLAINTEXT = ? + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000002000000000 +PLAINTEXT = ? + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000001000000000 +PLAINTEXT = ? + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000800000000 +PLAINTEXT = ? + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000400000000 +PLAINTEXT = ? + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000200000000 +PLAINTEXT = ? + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000100000000 +PLAINTEXT = ? + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000080000000 +PLAINTEXT = ? + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000040000000 +PLAINTEXT = ? + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000020000000 +PLAINTEXT = ? + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000010000000 +PLAINTEXT = ? + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000008000000 +PLAINTEXT = ? + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000004000000 +PLAINTEXT = ? + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000002000000 +PLAINTEXT = ? + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000001000000 +PLAINTEXT = ? + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000800000 +PLAINTEXT = ? + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000400000 +PLAINTEXT = ? + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000200000 +PLAINTEXT = ? + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000100000 +PLAINTEXT = ? + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000080000 +PLAINTEXT = ? + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000040000 +PLAINTEXT = ? + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000020000 +PLAINTEXT = ? + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000010000 +PLAINTEXT = ? + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000008000 +PLAINTEXT = ? + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000004000 +PLAINTEXT = ? + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000002000 +PLAINTEXT = ? + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000001000 +PLAINTEXT = ? + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000800 +PLAINTEXT = ? + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000400 +PLAINTEXT = ? + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000200 +PLAINTEXT = ? + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000100 +PLAINTEXT = ? + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000080 +PLAINTEXT = ? + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000040 +PLAINTEXT = ? + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000020 +PLAINTEXT = ? + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000010 +PLAINTEXT = ? + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000008 +PLAINTEXT = ? + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000004 +PLAINTEXT = ? + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000002 +PLAINTEXT = ? + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000001 +PLAINTEXT = ? diff --git a/fips/testvectors/des/sample/CBCpermop.sam b/fips/testvectors/des/sample/CBCpermop.sam new file mode 100644 index 0000000000..844fcbc91b --- /dev/null +++ b/fips/testvectors/des/sample/CBCpermop.sam @@ -0,0 +1,392 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# PERMUTATION OPERATION - KAT for CBC +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 1046913489980131 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 1 +KEY = 1007103489988020 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 2 +KEY = 10071034c8980120 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 3 +KEY = 1046103489988020 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 4 +KEY = 1086911519190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 5 +KEY = 1086911519580101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 6 +KEY = 5107b01519580101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 7 +KEY = 1007b01519190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 8 +KEY = 3107915498080101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 9 +KEY = 3107919498080101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 10 +KEY = 10079115b9080140 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 11 +KEY = 3107911598080140 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 12 +KEY = 1007d01589980101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 13 +KEY = 9107911589980101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 14 +KEY = 9107d01589190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 15 +KEY = 1007d01598980120 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 16 +KEY = 1007940498190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 17 +KEY = 0107910491190401 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 18 +KEY = 0107910491190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 19 +KEY = 0107940491190401 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 20 +KEY = 19079210981a0101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 21 +KEY = 1007911998190801 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 22 +KEY = 10079119981a0801 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 23 +KEY = 1007921098190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 24 +KEY = 100791159819010b +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 25 +KEY = 1004801598190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 26 +KEY = 1004801598190102 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 27 +KEY = 1004801598190108 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 28 +KEY = 1002911598100104 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 29 +KEY = 1002911598190104 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 30 +KEY = 1002911598100201 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 31 +KEY = 1002911698100101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + + +[DECRYPT] +COUNT = 0 +KEY = 1046913489980131 +IV = 0000000000000000 +CIPHERTEXT = 88d55e54f54c97b4 +PLAINTEXT = ? + +COUNT = 1 +KEY = 1007103489988020 +IV = 0000000000000000 +CIPHERTEXT = 0c0cc00c83ea48fd +PLAINTEXT = ? + +COUNT = 2 +KEY = 10071034c8980120 +IV = 0000000000000000 +CIPHERTEXT = 83bc8ef3a6570183 +PLAINTEXT = ? + +COUNT = 3 +KEY = 1046103489988020 +IV = 0000000000000000 +CIPHERTEXT = df725dcad94ea2e9 +PLAINTEXT = ? + +COUNT = 4 +KEY = 1086911519190101 +IV = 0000000000000000 +CIPHERTEXT = e652b53b550be8b0 +PLAINTEXT = ? + +COUNT = 5 +KEY = 1086911519580101 +IV = 0000000000000000 +CIPHERTEXT = af527120c485cbb0 +PLAINTEXT = ? + +COUNT = 6 +KEY = 5107b01519580101 +IV = 0000000000000000 +CIPHERTEXT = 0f04ce393db926d5 +PLAINTEXT = ? + +COUNT = 7 +KEY = 1007b01519190101 +IV = 0000000000000000 +CIPHERTEXT = c9f00ffc74079067 +PLAINTEXT = ? + +COUNT = 8 +KEY = 3107915498080101 +IV = 0000000000000000 +CIPHERTEXT = 7cfd82a593252b4e +PLAINTEXT = ? + +COUNT = 9 +KEY = 3107919498080101 +IV = 0000000000000000 +CIPHERTEXT = cb49a2f9e91363e3 +PLAINTEXT = ? + +COUNT = 10 +KEY = 10079115b9080140 +IV = 0000000000000000 +CIPHERTEXT = 00b588be70d23f56 +PLAINTEXT = ? + +COUNT = 11 +KEY = 3107911598080140 +IV = 0000000000000000 +CIPHERTEXT = 406a9a6ab43399ae +PLAINTEXT = ? + +COUNT = 12 +KEY = 1007d01589980101 +IV = 0000000000000000 +CIPHERTEXT = 6cb773611dca9ada +PLAINTEXT = ? + +COUNT = 13 +KEY = 9107911589980101 +IV = 0000000000000000 +CIPHERTEXT = 67fd21c17dbb5d70 +PLAINTEXT = ? + +COUNT = 14 +KEY = 9107d01589190101 +IV = 0000000000000000 +CIPHERTEXT = 9592cb4110430787 +PLAINTEXT = ? + +COUNT = 15 +KEY = 1007d01598980120 +IV = 0000000000000000 +CIPHERTEXT = a6b7ff68a318ddd3 +PLAINTEXT = ? + +COUNT = 16 +KEY = 1007940498190101 +IV = 0000000000000000 +CIPHERTEXT = 4d102196c914ca16 +PLAINTEXT = ? + +COUNT = 17 +KEY = 0107910491190401 +IV = 0000000000000000 +CIPHERTEXT = 2dfa9f4573594965 +PLAINTEXT = ? + +COUNT = 18 +KEY = 0107910491190101 +IV = 0000000000000000 +CIPHERTEXT = b46604816c0e0774 +PLAINTEXT = ? + +COUNT = 19 +KEY = 0107940491190401 +IV = 0000000000000000 +CIPHERTEXT = 6e7e6221a4f34e87 +PLAINTEXT = ? + +COUNT = 20 +KEY = 19079210981a0101 +IV = 0000000000000000 +CIPHERTEXT = aa85e74643233199 +PLAINTEXT = ? + +COUNT = 21 +KEY = 1007911998190801 +IV = 0000000000000000 +CIPHERTEXT = 2e5a19db4d1962d6 +PLAINTEXT = ? + +COUNT = 22 +KEY = 10079119981a0801 +IV = 0000000000000000 +CIPHERTEXT = 23a866a809d30894 +PLAINTEXT = ? + +COUNT = 23 +KEY = 1007921098190101 +IV = 0000000000000000 +CIPHERTEXT = d812d961f017d320 +PLAINTEXT = ? + +COUNT = 24 +KEY = 100791159819010b +IV = 0000000000000000 +CIPHERTEXT = 055605816e58608f +PLAINTEXT = ? + +COUNT = 25 +KEY = 1004801598190101 +IV = 0000000000000000 +CIPHERTEXT = abd88e8b1b7716f1 +PLAINTEXT = ? + +COUNT = 26 +KEY = 1004801598190102 +IV = 0000000000000000 +CIPHERTEXT = 537ac95be69da1e1 +PLAINTEXT = ? + +COUNT = 27 +KEY = 1004801598190108 +IV = 0000000000000000 +CIPHERTEXT = aed0f6ae3c25cdd8 +PLAINTEXT = ? + +COUNT = 28 +KEY = 1002911598100104 +IV = 0000000000000000 +CIPHERTEXT = b3e35a5ee53e7b8d +PLAINTEXT = ? + +COUNT = 29 +KEY = 1002911598190104 +IV = 0000000000000000 +CIPHERTEXT = 61c79c71921a2ef8 +PLAINTEXT = ? + +COUNT = 30 +KEY = 1002911598100201 +IV = 0000000000000000 +CIPHERTEXT = e2f5728f0995013c +PLAINTEXT = ? + +COUNT = 31 +KEY = 1002911698100101 +IV = 0000000000000000 +CIPHERTEXT = 1aeac39a61f0a464 +PLAINTEXT = ? diff --git a/fips/testvectors/des/sample/CBCsubtab.sam b/fips/testvectors/des/sample/CBCsubtab.sam new file mode 100644 index 0000000000..4df24c3f65 --- /dev/null +++ b/fips/testvectors/des/sample/CBCsubtab.sam @@ -0,0 +1,236 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# SUBSTITUTION TABLE - KAT for CBC +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 7ca110454a1a6e57 +IV = 0000000000000000 +PLAINTEXT = 01a1d6d039776742 +CIPHERTEXT = ? + +COUNT = 1 +KEY = 0131d9619dc1376e +IV = 0000000000000000 +PLAINTEXT = 5cd54ca83def57da +CIPHERTEXT = ? + +COUNT = 2 +KEY = 07a1133e4a0b2686 +IV = 0000000000000000 +PLAINTEXT = 0248d43806f67172 +CIPHERTEXT = ? + +COUNT = 3 +KEY = 3849674c2602319e +IV = 0000000000000000 +PLAINTEXT = 51454b582ddf440a +CIPHERTEXT = ? + +COUNT = 4 +KEY = 04b915ba43feb5b6 +IV = 0000000000000000 +PLAINTEXT = 42fd443059577fa2 +CIPHERTEXT = ? + +COUNT = 5 +KEY = 0113b970fd34f2ce +IV = 0000000000000000 +PLAINTEXT = 059b5e0851cf143a +CIPHERTEXT = ? + +COUNT = 6 +KEY = 0170f175468fb5e6 +IV = 0000000000000000 +PLAINTEXT = 0756d8e0774761d2 +CIPHERTEXT = ? + +COUNT = 7 +KEY = 43297fad38e373fe +IV = 0000000000000000 +PLAINTEXT = 762514b829bf486a +CIPHERTEXT = ? + +COUNT = 8 +KEY = 07a7137045da2a16 +IV = 0000000000000000 +PLAINTEXT = 3bdd119049372802 +CIPHERTEXT = ? + +COUNT = 9 +KEY = 04689104c2fd3b2f +IV = 0000000000000000 +PLAINTEXT = 26955f6835af609a +CIPHERTEXT = ? + +COUNT = 10 +KEY = 37d06bb516cb7546 +IV = 0000000000000000 +PLAINTEXT = 164d5e404f275232 +CIPHERTEXT = ? + +COUNT = 11 +KEY = 1f08260d1ac2465e +IV = 0000000000000000 +PLAINTEXT = 6b056e18759f5cca +CIPHERTEXT = ? + +COUNT = 12 +KEY = 584023641aba6176 +IV = 0000000000000000 +PLAINTEXT = 004bd6ef09176062 +CIPHERTEXT = ? + +COUNT = 13 +KEY = 025816164629b007 +IV = 0000000000000000 +PLAINTEXT = 480d39006ee762f2 +CIPHERTEXT = ? + +COUNT = 14 +KEY = 49793ebc79b3258f +IV = 0000000000000000 +PLAINTEXT = 437540c8698f3cfa +CIPHERTEXT = ? + +COUNT = 15 +KEY = 4fb05e1515ab73a7 +IV = 0000000000000000 +PLAINTEXT = 072d43a077075292 +CIPHERTEXT = ? + +COUNT = 16 +KEY = 49e95d6d4ca229bf +IV = 0000000000000000 +PLAINTEXT = 02fe55778117f12a +CIPHERTEXT = ? + +COUNT = 17 +KEY = 018310dc409b26d6 +IV = 0000000000000000 +PLAINTEXT = 1d9d5c5018f728c2 +CIPHERTEXT = ? + +COUNT = 18 +KEY = 1c587f1c13924fef +IV = 0000000000000000 +PLAINTEXT = 305532286d6f295a +CIPHERTEXT = ? + + +[DECRYPT] +COUNT = 0 +KEY = 7ca110454a1a6e57 +IV = 0000000000000000 +CIPHERTEXT = 690f5b0d9a26939b +PLAINTEXT = ? + +COUNT = 1 +KEY = 0131d9619dc1376e +IV = 0000000000000000 +CIPHERTEXT = 7a389d10354bd271 +PLAINTEXT = ? + +COUNT = 2 +KEY = 07a1133e4a0b2686 +IV = 0000000000000000 +CIPHERTEXT = 868ebb51cab4599a +PLAINTEXT = ? + +COUNT = 3 +KEY = 3849674c2602319e +IV = 0000000000000000 +CIPHERTEXT = 7178876e01f19b2a +PLAINTEXT = ? + +COUNT = 4 +KEY = 04b915ba43feb5b6 +IV = 0000000000000000 +CIPHERTEXT = af37fb421f8c4095 +PLAINTEXT = ? + +COUNT = 5 +KEY = 0113b970fd34f2ce +IV = 0000000000000000 +CIPHERTEXT = 86a560f10ec6d85b +PLAINTEXT = ? + +COUNT = 6 +KEY = 0170f175468fb5e6 +IV = 0000000000000000 +CIPHERTEXT = 0cd3da020021dc09 +PLAINTEXT = ? + +COUNT = 7 +KEY = 43297fad38e373fe +IV = 0000000000000000 +CIPHERTEXT = ea676b2cb7db2b7a +PLAINTEXT = ? + +COUNT = 8 +KEY = 07a7137045da2a16 +IV = 0000000000000000 +CIPHERTEXT = dfd64a815caf1a0f +PLAINTEXT = ? + +COUNT = 9 +KEY = 04689104c2fd3b2f +IV = 0000000000000000 +CIPHERTEXT = 5c513c9c4886c088 +PLAINTEXT = ? + +COUNT = 10 +KEY = 37d06bb516cb7546 +IV = 0000000000000000 +CIPHERTEXT = 0a2aeeae3ff4ab77 +PLAINTEXT = ? + +COUNT = 11 +KEY = 1f08260d1ac2465e +IV = 0000000000000000 +CIPHERTEXT = ef1bf03e5dfa575a +PLAINTEXT = ? + +COUNT = 12 +KEY = 584023641aba6176 +IV = 0000000000000000 +CIPHERTEXT = 88bf0db6d70dee56 +PLAINTEXT = ? + +COUNT = 13 +KEY = 025816164629b007 +IV = 0000000000000000 +CIPHERTEXT = a1f9915541020b56 +PLAINTEXT = ? + +COUNT = 14 +KEY = 49793ebc79b3258f +IV = 0000000000000000 +CIPHERTEXT = 6fbf1cafcffd0556 +PLAINTEXT = ? + +COUNT = 15 +KEY = 4fb05e1515ab73a7 +IV = 0000000000000000 +CIPHERTEXT = 2f22e49bab7ca1ac +PLAINTEXT = ? + +COUNT = 16 +KEY = 49e95d6d4ca229bf +IV = 0000000000000000 +CIPHERTEXT = 5a6b612cc26cce4a +PLAINTEXT = ? + +COUNT = 17 +KEY = 018310dc409b26d6 +IV = 0000000000000000 +CIPHERTEXT = 5f4c038ed12b2e41 +PLAINTEXT = ? + +COUNT = 18 +KEY = 1c587f1c13924fef +IV = 0000000000000000 +CIPHERTEXT = 63fac0d034d9f793 +PLAINTEXT = ? diff --git a/fips/testvectors/des/sample/CBCvarkey.sam b/fips/testvectors/des/sample/CBCvarkey.sam new file mode 100644 index 0000000000..f88f06afc9 --- /dev/null +++ b/fips/testvectors/des/sample/CBCvarkey.sam @@ -0,0 +1,680 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# VARIABLE KEY - KAT for CBC +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 8001010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 1 +KEY = 4001010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 2 +KEY = 2001010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 3 +KEY = 1001010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 4 +KEY = 0801010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 5 +KEY = 0401010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 6 +KEY = 0201010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 7 +KEY = 0180010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 8 +KEY = 0140010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 9 +KEY = 0120010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 10 +KEY = 0110010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 11 +KEY = 0108010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 12 +KEY = 0104010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 13 +KEY = 0102010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 14 +KEY = 0101800101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 15 +KEY = 0101400101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 16 +KEY = 0101200101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 17 +KEY = 0101100101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 18 +KEY = 0101080101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 19 +KEY = 0101040101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 20 +KEY = 0101020101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 21 +KEY = 0101018001010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 22 +KEY = 0101014001010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 23 +KEY = 0101012001010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 24 +KEY = 0101011001010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 25 +KEY = 0101010801010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 26 +KEY = 0101010401010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 27 +KEY = 0101010201010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 28 +KEY = 0101010180010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 29 +KEY = 0101010140010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 30 +KEY = 0101010120010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 31 +KEY = 0101010110010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 32 +KEY = 0101010108010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 33 +KEY = 0101010104010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 34 +KEY = 0101010102010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 35 +KEY = 0101010101800101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 36 +KEY = 0101010101400101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 37 +KEY = 0101010101200101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 38 +KEY = 0101010101100101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 39 +KEY = 0101010101080101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 40 +KEY = 0101010101040101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 41 +KEY = 0101010101020101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 42 +KEY = 0101010101018001 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 43 +KEY = 0101010101014001 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 44 +KEY = 0101010101012001 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 45 +KEY = 0101010101011001 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 46 +KEY = 0101010101010801 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 47 +KEY = 0101010101010401 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 48 +KEY = 0101010101010201 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 49 +KEY = 0101010101010180 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 50 +KEY = 0101010101010140 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 51 +KEY = 0101010101010120 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 52 +KEY = 0101010101010110 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 53 +KEY = 0101010101010108 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 54 +KEY = 0101010101010104 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 55 +KEY = 0101010101010102 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + + +[DECRYPT] +COUNT = 0 +KEY = 8001010101010101 +IV = 0000000000000000 +CIPHERTEXT = 95a8d72813daa94d +PLAINTEXT = ? + +COUNT = 1 +KEY = 4001010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0eec1487dd8c26d5 +PLAINTEXT = ? + +COUNT = 2 +KEY = 2001010101010101 +IV = 0000000000000000 +CIPHERTEXT = 7ad16ffb79c45926 +PLAINTEXT = ? + +COUNT = 3 +KEY = 1001010101010101 +IV = 0000000000000000 +CIPHERTEXT = d3746294ca6a6cf3 +PLAINTEXT = ? + +COUNT = 4 +KEY = 0801010101010101 +IV = 0000000000000000 +CIPHERTEXT = 809f5f873c1fd761 +PLAINTEXT = ? + +COUNT = 5 +KEY = 0401010101010101 +IV = 0000000000000000 +CIPHERTEXT = c02faffec989d1fc +PLAINTEXT = ? + +COUNT = 6 +KEY = 0201010101010101 +IV = 0000000000000000 +CIPHERTEXT = 4615aa1d33e72f10 +PLAINTEXT = ? + +COUNT = 7 +KEY = 0180010101010101 +IV = 0000000000000000 +CIPHERTEXT = 2055123350c00858 +PLAINTEXT = ? + +COUNT = 8 +KEY = 0140010101010101 +IV = 0000000000000000 +CIPHERTEXT = df3b99d6577397c8 +PLAINTEXT = ? + +COUNT = 9 +KEY = 0120010101010101 +IV = 0000000000000000 +CIPHERTEXT = 31fe17369b5288c9 +PLAINTEXT = ? + +COUNT = 10 +KEY = 0110010101010101 +IV = 0000000000000000 +CIPHERTEXT = dfdd3cc64dae1642 +PLAINTEXT = ? + +COUNT = 11 +KEY = 0108010101010101 +IV = 0000000000000000 +CIPHERTEXT = 178c83ce2b399d94 +PLAINTEXT = ? + +COUNT = 12 +KEY = 0104010101010101 +IV = 0000000000000000 +CIPHERTEXT = 50f636324a9b7f80 +PLAINTEXT = ? + +COUNT = 13 +KEY = 0102010101010101 +IV = 0000000000000000 +CIPHERTEXT = a8468ee3bc18f06d +PLAINTEXT = ? + +COUNT = 14 +KEY = 0101800101010101 +IV = 0000000000000000 +CIPHERTEXT = a2dc9e92fd3cde92 +PLAINTEXT = ? + +COUNT = 15 +KEY = 0101400101010101 +IV = 0000000000000000 +CIPHERTEXT = cac09f797d031287 +PLAINTEXT = ? + +COUNT = 16 +KEY = 0101200101010101 +IV = 0000000000000000 +CIPHERTEXT = 90ba680b22aeb525 +PLAINTEXT = ? + +COUNT = 17 +KEY = 0101100101010101 +IV = 0000000000000000 +CIPHERTEXT = ce7a24f350e280b6 +PLAINTEXT = ? + +COUNT = 18 +KEY = 0101080101010101 +IV = 0000000000000000 +CIPHERTEXT = 882bff0aa01a0b87 +PLAINTEXT = ? + +COUNT = 19 +KEY = 0101040101010101 +IV = 0000000000000000 +CIPHERTEXT = 25610288924511c2 +PLAINTEXT = ? + +COUNT = 20 +KEY = 0101020101010101 +IV = 0000000000000000 +CIPHERTEXT = c71516c29c75d170 +PLAINTEXT = ? + +COUNT = 21 +KEY = 0101018001010101 +IV = 0000000000000000 +CIPHERTEXT = 5199c29a52c9f059 +PLAINTEXT = ? + +COUNT = 22 +KEY = 0101014001010101 +IV = 0000000000000000 +CIPHERTEXT = c22f0a294a71f29f +PLAINTEXT = ? + +COUNT = 23 +KEY = 0101012001010101 +IV = 0000000000000000 +CIPHERTEXT = ee371483714c02ea +PLAINTEXT = ? + +COUNT = 24 +KEY = 0101011001010101 +IV = 0000000000000000 +CIPHERTEXT = a81fbd448f9e522f +PLAINTEXT = ? + +COUNT = 25 +KEY = 0101010801010101 +IV = 0000000000000000 +CIPHERTEXT = 4f644c92e192dfed +PLAINTEXT = ? + +COUNT = 26 +KEY = 0101010401010101 +IV = 0000000000000000 +CIPHERTEXT = 1afa9a66a6df92ae +PLAINTEXT = ? + +COUNT = 27 +KEY = 0101010201010101 +IV = 0000000000000000 +CIPHERTEXT = b3c1cc715cb879d8 +PLAINTEXT = ? + +COUNT = 28 +KEY = 0101010180010101 +IV = 0000000000000000 +CIPHERTEXT = 19d032e64ab0bd8b +PLAINTEXT = ? + +COUNT = 29 +KEY = 0101010140010101 +IV = 0000000000000000 +CIPHERTEXT = 3cfaa7a7dc8720dc +PLAINTEXT = ? + +COUNT = 30 +KEY = 0101010120010101 +IV = 0000000000000000 +CIPHERTEXT = b7265f7f447ac6f3 +PLAINTEXT = ? + +COUNT = 31 +KEY = 0101010110010101 +IV = 0000000000000000 +CIPHERTEXT = 9db73b3c0d163f54 +PLAINTEXT = ? + +COUNT = 32 +KEY = 0101010108010101 +IV = 0000000000000000 +CIPHERTEXT = 8181b65babf4a975 +PLAINTEXT = ? + +COUNT = 33 +KEY = 0101010104010101 +IV = 0000000000000000 +CIPHERTEXT = 93c9b64042eaa240 +PLAINTEXT = ? + +COUNT = 34 +KEY = 0101010102010101 +IV = 0000000000000000 +CIPHERTEXT = 5570530829705592 +PLAINTEXT = ? + +COUNT = 35 +KEY = 0101010101800101 +IV = 0000000000000000 +CIPHERTEXT = 8638809e878787a0 +PLAINTEXT = ? + +COUNT = 36 +KEY = 0101010101400101 +IV = 0000000000000000 +CIPHERTEXT = 41b9a79af79ac208 +PLAINTEXT = ? + +COUNT = 37 +KEY = 0101010101200101 +IV = 0000000000000000 +CIPHERTEXT = 7a9be42f2009a892 +PLAINTEXT = ? + +COUNT = 38 +KEY = 0101010101100101 +IV = 0000000000000000 +CIPHERTEXT = 29038d56ba6d2745 +PLAINTEXT = ? + +COUNT = 39 +KEY = 0101010101080101 +IV = 0000000000000000 +CIPHERTEXT = 5495c6abf1e5df51 +PLAINTEXT = ? + +COUNT = 40 +KEY = 0101010101040101 +IV = 0000000000000000 +CIPHERTEXT = ae13dbd561488933 +PLAINTEXT = ? + +COUNT = 41 +KEY = 0101010101020101 +IV = 0000000000000000 +CIPHERTEXT = 024d1ffa8904e389 +PLAINTEXT = ? + +COUNT = 42 +KEY = 0101010101018001 +IV = 0000000000000000 +CIPHERTEXT = d1399712f99bf02e +PLAINTEXT = ? + +COUNT = 43 +KEY = 0101010101014001 +IV = 0000000000000000 +CIPHERTEXT = 14c1d7c1cffec79e +PLAINTEXT = ? + +COUNT = 44 +KEY = 0101010101012001 +IV = 0000000000000000 +CIPHERTEXT = 1de5279dae3bed6f +PLAINTEXT = ? + +COUNT = 45 +KEY = 0101010101011001 +IV = 0000000000000000 +CIPHERTEXT = e941a33f85501303 +PLAINTEXT = ? + +COUNT = 46 +KEY = 0101010101010801 +IV = 0000000000000000 +CIPHERTEXT = da99dbbc9a03f379 +PLAINTEXT = ? + +COUNT = 47 +KEY = 0101010101010401 +IV = 0000000000000000 +CIPHERTEXT = b7fc92f91d8e92e9 +PLAINTEXT = ? + +COUNT = 48 +KEY = 0101010101010201 +IV = 0000000000000000 +CIPHERTEXT = ae8e5caa3ca04e85 +PLAINTEXT = ? + +COUNT = 49 +KEY = 0101010101010180 +IV = 0000000000000000 +CIPHERTEXT = 9cc62df43b6eed74 +PLAINTEXT = ? + +COUNT = 50 +KEY = 0101010101010140 +IV = 0000000000000000 +CIPHERTEXT = d863dbb5c59a91a0 +PLAINTEXT = ? + +COUNT = 51 +KEY = 0101010101010120 +IV = 0000000000000000 +CIPHERTEXT = a1ab2190545b91d7 +PLAINTEXT = ? + +COUNT = 52 +KEY = 0101010101010110 +IV = 0000000000000000 +CIPHERTEXT = 0875041e64c570f7 +PLAINTEXT = ? + +COUNT = 53 +KEY = 0101010101010108 +IV = 0000000000000000 +CIPHERTEXT = 5a594528bebef1cc +PLAINTEXT = ? + +COUNT = 54 +KEY = 0101010101010104 +IV = 0000000000000000 +CIPHERTEXT = fcdb3291de21f0c0 +PLAINTEXT = ? + +COUNT = 55 +KEY = 0101010101010102 +IV = 0000000000000000 +CIPHERTEXT = 869efd7f9f265a09 +PLAINTEXT = ? diff --git a/fips/testvectors/des/sample/CBCvartext.sam b/fips/testvectors/des/sample/CBCvartext.sam new file mode 100644 index 0000000000..829b4e0e0a --- /dev/null +++ b/fips/testvectors/des/sample/CBCvartext.sam @@ -0,0 +1,776 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# VARIABLE PLAINTEXT/CIPHERTEXT - KAT for CBC +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 8000000000000000 +CIPHERTEXT = ? + +COUNT = 1 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 4000000000000000 +CIPHERTEXT = ? + +COUNT = 2 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 2000000000000000 +CIPHERTEXT = ? + +COUNT = 3 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 1000000000000000 +CIPHERTEXT = ? + +COUNT = 4 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0800000000000000 +CIPHERTEXT = ? + +COUNT = 5 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0400000000000000 +CIPHERTEXT = ? + +COUNT = 6 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0200000000000000 +CIPHERTEXT = ? + +COUNT = 7 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0100000000000000 +CIPHERTEXT = ? + +COUNT = 8 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0080000000000000 +CIPHERTEXT = ? + +COUNT = 9 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0040000000000000 +CIPHERTEXT = ? + +COUNT = 10 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0020000000000000 +CIPHERTEXT = ? + +COUNT = 11 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0010000000000000 +CIPHERTEXT = ? + +COUNT = 12 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0008000000000000 +CIPHERTEXT = ? + +COUNT = 13 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0004000000000000 +CIPHERTEXT = ? + +COUNT = 14 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0002000000000000 +CIPHERTEXT = ? + +COUNT = 15 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0001000000000000 +CIPHERTEXT = ? + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000800000000000 +CIPHERTEXT = ? + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000400000000000 +CIPHERTEXT = ? + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000200000000000 +CIPHERTEXT = ? + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000100000000000 +CIPHERTEXT = ? + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000080000000000 +CIPHERTEXT = ? + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000040000000000 +CIPHERTEXT = ? + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000020000000000 +CIPHERTEXT = ? + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000010000000000 +CIPHERTEXT = ? + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000008000000000 +CIPHERTEXT = ? + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000004000000000 +CIPHERTEXT = ? + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000002000000000 +CIPHERTEXT = ? + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000001000000000 +CIPHERTEXT = ? + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000800000000 +CIPHERTEXT = ? + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000400000000 +CIPHERTEXT = ? + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000200000000 +CIPHERTEXT = ? + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000100000000 +CIPHERTEXT = ? + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000080000000 +CIPHERTEXT = ? + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000040000000 +CIPHERTEXT = ? + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000020000000 +CIPHERTEXT = ? + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000010000000 +CIPHERTEXT = ? + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000008000000 +CIPHERTEXT = ? + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000004000000 +CIPHERTEXT = ? + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000002000000 +CIPHERTEXT = ? + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000001000000 +CIPHERTEXT = ? + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000800000 +CIPHERTEXT = ? + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000400000 +CIPHERTEXT = ? + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000200000 +CIPHERTEXT = ? + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000100000 +CIPHERTEXT = ? + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000080000 +CIPHERTEXT = ? + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000040000 +CIPHERTEXT = ? + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000020000 +CIPHERTEXT = ? + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000010000 +CIPHERTEXT = ? + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000008000 +CIPHERTEXT = ? + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000004000 +CIPHERTEXT = ? + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000002000 +CIPHERTEXT = ? + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000001000 +CIPHERTEXT = ? + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000800 +CIPHERTEXT = ? + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000400 +CIPHERTEXT = ? + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000200 +CIPHERTEXT = ? + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000100 +CIPHERTEXT = ? + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000080 +CIPHERTEXT = ? + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000040 +CIPHERTEXT = ? + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000020 +CIPHERTEXT = ? + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000010 +CIPHERTEXT = ? + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000008 +CIPHERTEXT = ? + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000004 +CIPHERTEXT = ? + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000002 +CIPHERTEXT = ? + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000001 +CIPHERTEXT = ? + + +[DECRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 95f8a5e5dd31d900 +PLAINTEXT = ? + +COUNT = 1 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = dd7f121ca5015619 +PLAINTEXT = ? + +COUNT = 2 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 2e8653104f3834ea +PLAINTEXT = ? + +COUNT = 3 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 4bd388ff6cd81d4f +PLAINTEXT = ? + +COUNT = 4 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 20b9e767b2fb1456 +PLAINTEXT = ? + +COUNT = 5 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 55579380d77138ef +PLAINTEXT = ? + +COUNT = 6 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 6cc5defaaf04512f +PLAINTEXT = ? + +COUNT = 7 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0d9f279ba5d87260 +PLAINTEXT = ? + +COUNT = 8 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = d9031b0271bd5a0a +PLAINTEXT = ? + +COUNT = 9 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 424250b37c3dd951 +PLAINTEXT = ? + +COUNT = 10 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = b8061b7ecd9a21e5 +PLAINTEXT = ? + +COUNT = 11 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = f15d0f286b65bd28 +PLAINTEXT = ? + +COUNT = 12 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = add0cc8d6e5deba1 +PLAINTEXT = ? + +COUNT = 13 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = e6d5f82752ad63d1 +PLAINTEXT = ? + +COUNT = 14 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = ecbfe3bd3f591a5e +PLAINTEXT = ? + +COUNT = 15 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = f356834379d165cd +PLAINTEXT = ? + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 2b9f982f20037fa9 +PLAINTEXT = ? + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 889de068a16f0be6 +PLAINTEXT = ? + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = e19e275d846a1298 +PLAINTEXT = ? + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 329a8ed523d71aec +PLAINTEXT = ? + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = e7fce22557d23c97 +PLAINTEXT = ? + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 12a9f5817ff2d65d +PLAINTEXT = ? + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = a484c3ad38dc9c19 +PLAINTEXT = ? + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = fbe00a8a1ef8ad72 +PLAINTEXT = ? + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 750d079407521363 +PLAINTEXT = ? + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 64feed9c724c2faf +PLAINTEXT = ? + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = f02b263b328e2b60 +PLAINTEXT = ? + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 9d64555a9a10b852 +PLAINTEXT = ? + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = d106ff0bed5255d7 +PLAINTEXT = ? + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = e1652c6b138c64a5 +PLAINTEXT = ? + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = e428581186ec8f46 +PLAINTEXT = ? + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = aeb5f5ede22d1a36 +PLAINTEXT = ? + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = e943d7568aec0c5c +PLAINTEXT = ? + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = df98c8276f54b04b +PLAINTEXT = ? + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = b160e4680f6c696f +PLAINTEXT = ? + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = fa0752b07d9c4ab8 +PLAINTEXT = ? + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = ca3a2b036dbc8502 +PLAINTEXT = ? + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 5e0905517bb59bcf +PLAINTEXT = ? + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 814eeb3b91d90726 +PLAINTEXT = ? + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 4d49db1532919c9f +PLAINTEXT = ? + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 25eb5fc3f8cf0621 +PLAINTEXT = ? + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = ab6a20c0620d1c6f +PLAINTEXT = ? + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 79e90dbc98f92cca +PLAINTEXT = ? + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 866ecedd8072bb0e +PLAINTEXT = ? + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 8b54536f2f3e64a8 +PLAINTEXT = ? + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = ea51d3975595b86b +PLAINTEXT = ? + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = caffc6ac4542de31 +PLAINTEXT = ? + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 8dd45a2ddf90796c +PLAINTEXT = ? + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 1029d55e880ec2d0 +PLAINTEXT = ? + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 5d86cb23639dbea9 +PLAINTEXT = ? + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 1d1ca853ae7c0c5f +PLAINTEXT = ? + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = ce332329248f3228 +PLAINTEXT = ? + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 8405d1abe24fb942 +PLAINTEXT = ? + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = e643d78090ca4207 +PLAINTEXT = ? + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 48221b9937748a23 +PLAINTEXT = ? + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = dd7c0bbd61fafd54 +PLAINTEXT = ? + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 2fbc291a570db5c4 +PLAINTEXT = ? + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = e07c30d7e4e26e12 +PLAINTEXT = ? + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0953e2258e8e90a1 +PLAINTEXT = ? + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 5b711bc4ceebf2ee +PLAINTEXT = ? + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = cc083f1e6d9e85f6 +PLAINTEXT = ? + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = d2fd8867d50d2dfe +PLAINTEXT = ? + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 06e7ea22ce92708f +PLAINTEXT = ? + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000000 +CIPHERTEXT = 166b40b44aba4bd6 +PLAINTEXT = ? diff --git a/fips/testvectors/des/sample/CFB1MMT.sam b/fips/testvectors/des/sample/CFB1MMT.sam new file mode 100644 index 0000000000..3bdf9d7ee4 --- /dev/null +++ b/fips/testvectors/des/sample/CFB1MMT.sam @@ -0,0 +1,46 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# DES Multi Block Message Test for CFB1 +# State : Encrypt and Decrypt +# Tue Jun 24 03:13:00 PM + +[ENCRYPT] + +COUNT = 0 +KEY = f43d5ebc3e16ea0e +IV = 282d971ab9154bfc +PLAINTEXT = 0 +CIPHERTEXT = 0 + +COUNT = 1 +KEY = dc8f0897ef167a75 +IV = 1ee325df9c573d77 +PLAINTEXT = 00 +CIPHERTEXT = 11 + +COUNT = 2 +KEY = 7075571523d902c8 +IV = 9a0ca30a85714205 +PLAINTEXT = 010 +CIPHERTEXT = 001 + +[DECRYPT] + +COUNT = 0 +KEY = 206b37bca2fe68a8 +IV = 7a5e281a43fba6de +CIPHERTEXT = 0 +PLAINTEXT = 0 + +COUNT = 1 +KEY = 2c7f2ca464a78a46 +IV = d59d5ffaf74a6212 +CIPHERTEXT = 00 +PLAINTEXT = 11 + +COUNT = 2 +KEY = ab67ae5ee00b2fcd +IV = 00c74aaa81068455 +CIPHERTEXT = 110 +PLAINTEXT = 000 + diff --git a/fips/testvectors/des/sample/CFB1Monte.sam b/fips/testvectors/des/sample/CFB1Monte.sam new file mode 100644 index 0000000000..94a01c0196 --- /dev/null +++ b/fips/testvectors/des/sample/CFB1Monte.sam @@ -0,0 +1,58 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# DES Monte Carlo (Modes) Test for CFB1 +# State : Encrypt and Decrypt +# Tue Jun 24 03:13:00 PM + +[ENCRYPT] + +COUNT = 0 +KEY = 51f146dad579c26b +IV = 2bba4a92bc69556a +PLAINTEXT = 0 +CIPHERTEXT = 1 + +COUNT = 1 +KEY = d5d34f75f8ad9264 +IV = 842309af2cd4510f +PLAINTEXT = 1 +CIPHERTEXT = 1 + +COUNT = 2 +KEY = 800edab6ab7f4051 +IV = 54dc94c253d3d235 +PLAINTEXT = 0 +CIPHERTEXT = 1 + +COUNT = 3 +KEY = 7079fb32e6157ff7 +IV = f17721844c6b3ea7 +PLAINTEXT = 1 +CIPHERTEXT = 1 + +[DECRYPT] + +COUNT = 0 +KEY = c238cda129731cf1 +IV = 3cef8cc26b4042e6 +CIPHERTEXT = 0 +PLAINTEXT = 0 + +COUNT = 1 +KEY = a80e048aec1c2fdc +IV = 26edb819bcdaee1b +CIPHERTEXT = 1 +PLAINTEXT = 0 + +COUNT = 2 +KEY = f2383b98ad9267cb +IV = 3612150ec085380d +CIPHERTEXT = 1 +PLAINTEXT = 1 + +COUNT = 3 +KEY = 294c8f2f4f76a4e0 +IV = b6d36c6da15c4119 +CIPHERTEXT = 0 +PLAINTEXT = 1 + diff --git a/fips/testvectors/des/sample/CFB1invperm.sam b/fips/testvectors/des/sample/CFB1invperm.sam new file mode 100644 index 0000000000..836c28806c --- /dev/null +++ b/fips/testvectors/des/sample/CFB1invperm.sam @@ -0,0 +1,776 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# INVERSE PERMUTATION - KAT for CFB1 +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 8000000000000000 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 1 +KEY = 0101010101010101 +IV = 4000000000000000 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 2 +KEY = 0101010101010101 +IV = 2000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 3 +KEY = 0101010101010101 +IV = 1000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 4 +KEY = 0101010101010101 +IV = 0800000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 5 +KEY = 0101010101010101 +IV = 0400000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 6 +KEY = 0101010101010101 +IV = 0200000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 7 +KEY = 0101010101010101 +IV = 0100000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 8 +KEY = 0101010101010101 +IV = 0080000000000000 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 9 +KEY = 0101010101010101 +IV = 0040000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 10 +KEY = 0101010101010101 +IV = 0020000000000000 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 11 +KEY = 0101010101010101 +IV = 0010000000000000 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 12 +KEY = 0101010101010101 +IV = 0008000000000000 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 13 +KEY = 0101010101010101 +IV = 0004000000000000 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 14 +KEY = 0101010101010101 +IV = 0002000000000000 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 15 +KEY = 0101010101010101 +IV = 0001000000000000 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000800000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000400000000000 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000200000000000 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000100000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000080000000000 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000040000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000020000000000 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000010000000000 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000008000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000004000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000002000000000 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000001000000000 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000800000000 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000400000000 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000200000000 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000100000000 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000080000000 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000040000000 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000020000000 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000010000000 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000008000000 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000004000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000002000000 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000001000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000800000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000400000 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000200000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000100000 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000080000 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000040000 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000020000 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000010000 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000008000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000004000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000002000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000001000 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000800 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000400 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000200 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000100 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000080 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000040 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000020 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000010 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000008 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000004 +PLAINTEXT = 1 +CIPHERTEXT = ? + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000002 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000001 +PLAINTEXT = 0 +CIPHERTEXT = ? + + +[DECRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 8000000000000000 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 1 +KEY = 0101010101010101 +IV = 4000000000000000 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 2 +KEY = 0101010101010101 +IV = 2000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 3 +KEY = 0101010101010101 +IV = 1000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 4 +KEY = 0101010101010101 +IV = 0800000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 5 +KEY = 0101010101010101 +IV = 0400000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 6 +KEY = 0101010101010101 +IV = 0200000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 7 +KEY = 0101010101010101 +IV = 0100000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 8 +KEY = 0101010101010101 +IV = 0080000000000000 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 9 +KEY = 0101010101010101 +IV = 0040000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 10 +KEY = 0101010101010101 +IV = 0020000000000000 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 11 +KEY = 0101010101010101 +IV = 0010000000000000 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 12 +KEY = 0101010101010101 +IV = 0008000000000000 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 13 +KEY = 0101010101010101 +IV = 0004000000000000 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 14 +KEY = 0101010101010101 +IV = 0002000000000000 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 15 +KEY = 0101010101010101 +IV = 0001000000000000 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000800000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000400000000000 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000200000000000 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000100000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000080000000000 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000040000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000020000000000 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000010000000000 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000008000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000004000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000002000000000 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000001000000000 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000800000000 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000400000000 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000200000000 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000100000000 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000080000000 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000040000000 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000020000000 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000010000000 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000008000000 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000004000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000002000000 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000001000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000800000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000400000 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000200000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000100000 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000080000 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000040000 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000020000 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000010000 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000008000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000004000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000002000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000001000 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000800 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000400 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000200 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000100 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000080 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000040 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000020 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000010 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000008 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000004 +CIPHERTEXT = 1 +PLAINTEXT = ? + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000002 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000001 +CIPHERTEXT = 0 +PLAINTEXT = ? diff --git a/fips/testvectors/des/sample/CFB1permop.sam b/fips/testvectors/des/sample/CFB1permop.sam new file mode 100644 index 0000000000..f5e9664706 --- /dev/null +++ b/fips/testvectors/des/sample/CFB1permop.sam @@ -0,0 +1,392 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# PERMUTATION OPERATION - KAT for CFB1 +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 1046913489980131 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 1 +KEY = 1007103489988020 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 2 +KEY = 10071034c8980120 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 3 +KEY = 1046103489988020 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 4 +KEY = 1086911519190101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 5 +KEY = 1086911519580101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 6 +KEY = 5107b01519580101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 7 +KEY = 1007b01519190101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 8 +KEY = 3107915498080101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 9 +KEY = 3107919498080101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 10 +KEY = 10079115b9080140 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 11 +KEY = 3107911598080140 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 12 +KEY = 1007d01589980101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 13 +KEY = 9107911589980101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 14 +KEY = 9107d01589190101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 15 +KEY = 1007d01598980120 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 16 +KEY = 1007940498190101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 17 +KEY = 0107910491190401 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 18 +KEY = 0107910491190101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 19 +KEY = 0107940491190401 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 20 +KEY = 19079210981a0101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 21 +KEY = 1007911998190801 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 22 +KEY = 10079119981a0801 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 23 +KEY = 1007921098190101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 24 +KEY = 100791159819010b +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 25 +KEY = 1004801598190101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 26 +KEY = 1004801598190102 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 27 +KEY = 1004801598190108 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 28 +KEY = 1002911598100104 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 29 +KEY = 1002911598190104 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 30 +KEY = 1002911598100201 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 31 +KEY = 1002911698100101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + + +[DECRYPT] +COUNT = 0 +KEY = 1046913489980131 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 1 +KEY = 1007103489988020 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 2 +KEY = 10071034c8980120 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 3 +KEY = 1046103489988020 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 4 +KEY = 1086911519190101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 5 +KEY = 1086911519580101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 6 +KEY = 5107b01519580101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 7 +KEY = 1007b01519190101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 8 +KEY = 3107915498080101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 9 +KEY = 3107919498080101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 10 +KEY = 10079115b9080140 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 11 +KEY = 3107911598080140 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 12 +KEY = 1007d01589980101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 13 +KEY = 9107911589980101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 14 +KEY = 9107d01589190101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 15 +KEY = 1007d01598980120 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 16 +KEY = 1007940498190101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 17 +KEY = 0107910491190401 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 18 +KEY = 0107910491190101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 19 +KEY = 0107940491190401 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 20 +KEY = 19079210981a0101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 21 +KEY = 1007911998190801 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 22 +KEY = 10079119981a0801 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 23 +KEY = 1007921098190101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 24 +KEY = 100791159819010b +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 25 +KEY = 1004801598190101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 26 +KEY = 1004801598190102 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 27 +KEY = 1004801598190108 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 28 +KEY = 1002911598100104 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 29 +KEY = 1002911598190104 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 30 +KEY = 1002911598100201 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 31 +KEY = 1002911698100101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? diff --git a/fips/testvectors/des/sample/CFB1subtab.sam b/fips/testvectors/des/sample/CFB1subtab.sam new file mode 100644 index 0000000000..54aff220da --- /dev/null +++ b/fips/testvectors/des/sample/CFB1subtab.sam @@ -0,0 +1,236 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# SUBSTITUTION TABLE - KAT for CFB1 +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 7ca110454a1a6e57 +IV = 01a1d6d039776742 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 1 +KEY = 0131d9619dc1376e +IV = 5cd54ca83def57da +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 2 +KEY = 07a1133e4a0b2686 +IV = 0248d43806f67172 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 3 +KEY = 3849674c2602319e +IV = 51454b582ddf440a +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 4 +KEY = 04b915ba43feb5b6 +IV = 42fd443059577fa2 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 5 +KEY = 0113b970fd34f2ce +IV = 059b5e0851cf143a +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 6 +KEY = 0170f175468fb5e6 +IV = 0756d8e0774761d2 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 7 +KEY = 43297fad38e373fe +IV = 762514b829bf486a +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 8 +KEY = 07a7137045da2a16 +IV = 3bdd119049372802 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 9 +KEY = 04689104c2fd3b2f +IV = 26955f6835af609a +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 10 +KEY = 37d06bb516cb7546 +IV = 164d5e404f275232 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 11 +KEY = 1f08260d1ac2465e +IV = 6b056e18759f5cca +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 12 +KEY = 584023641aba6176 +IV = 004bd6ef09176062 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 13 +KEY = 025816164629b007 +IV = 480d39006ee762f2 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 14 +KEY = 49793ebc79b3258f +IV = 437540c8698f3cfa +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 15 +KEY = 4fb05e1515ab73a7 +IV = 072d43a077075292 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 16 +KEY = 49e95d6d4ca229bf +IV = 02fe55778117f12a +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 17 +KEY = 018310dc409b26d6 +IV = 1d9d5c5018f728c2 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 18 +KEY = 1c587f1c13924fef +IV = 305532286d6f295a +PLAINTEXT = 0 +CIPHERTEXT = ? + + +[DECRYPT] +COUNT = 0 +KEY = 7ca110454a1a6e57 +IV = 01a1d6d039776742 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 1 +KEY = 0131d9619dc1376e +IV = 5cd54ca83def57da +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 2 +KEY = 07a1133e4a0b2686 +IV = 0248d43806f67172 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 3 +KEY = 3849674c2602319e +IV = 51454b582ddf440a +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 4 +KEY = 04b915ba43feb5b6 +IV = 42fd443059577fa2 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 5 +KEY = 0113b970fd34f2ce +IV = 059b5e0851cf143a +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 6 +KEY = 0170f175468fb5e6 +IV = 0756d8e0774761d2 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 7 +KEY = 43297fad38e373fe +IV = 762514b829bf486a +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 8 +KEY = 07a7137045da2a16 +IV = 3bdd119049372802 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 9 +KEY = 04689104c2fd3b2f +IV = 26955f6835af609a +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 10 +KEY = 37d06bb516cb7546 +IV = 164d5e404f275232 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 11 +KEY = 1f08260d1ac2465e +IV = 6b056e18759f5cca +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 12 +KEY = 584023641aba6176 +IV = 004bd6ef09176062 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 13 +KEY = 025816164629b007 +IV = 480d39006ee762f2 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 14 +KEY = 49793ebc79b3258f +IV = 437540c8698f3cfa +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 15 +KEY = 4fb05e1515ab73a7 +IV = 072d43a077075292 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 16 +KEY = 49e95d6d4ca229bf +IV = 02fe55778117f12a +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 17 +KEY = 018310dc409b26d6 +IV = 1d9d5c5018f728c2 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 18 +KEY = 1c587f1c13924fef +IV = 305532286d6f295a +CIPHERTEXT = 0 +PLAINTEXT = ? diff --git a/fips/testvectors/des/sample/CFB1varkey.sam b/fips/testvectors/des/sample/CFB1varkey.sam new file mode 100644 index 0000000000..12897b5194 --- /dev/null +++ b/fips/testvectors/des/sample/CFB1varkey.sam @@ -0,0 +1,680 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# VARIABLE KEY - KAT for CFB1 +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 8001010101010101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 1 +KEY = 4001010101010101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 2 +KEY = 2001010101010101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 3 +KEY = 1001010101010101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 4 +KEY = 0801010101010101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 5 +KEY = 0401010101010101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 6 +KEY = 0201010101010101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 7 +KEY = 0180010101010101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 8 +KEY = 0140010101010101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 9 +KEY = 0120010101010101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 10 +KEY = 0110010101010101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 11 +KEY = 0108010101010101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 12 +KEY = 0104010101010101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 13 +KEY = 0102010101010101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 14 +KEY = 0101800101010101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 15 +KEY = 0101400101010101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 16 +KEY = 0101200101010101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 17 +KEY = 0101100101010101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 18 +KEY = 0101080101010101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 19 +KEY = 0101040101010101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 20 +KEY = 0101020101010101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 21 +KEY = 0101018001010101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 22 +KEY = 0101014001010101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 23 +KEY = 0101012001010101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 24 +KEY = 0101011001010101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 25 +KEY = 0101010801010101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 26 +KEY = 0101010401010101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 27 +KEY = 0101010201010101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 28 +KEY = 0101010180010101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 29 +KEY = 0101010140010101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 30 +KEY = 0101010120010101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 31 +KEY = 0101010110010101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 32 +KEY = 0101010108010101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 33 +KEY = 0101010104010101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 34 +KEY = 0101010102010101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 35 +KEY = 0101010101800101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 36 +KEY = 0101010101400101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 37 +KEY = 0101010101200101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 38 +KEY = 0101010101100101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 39 +KEY = 0101010101080101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 40 +KEY = 0101010101040101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 41 +KEY = 0101010101020101 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 42 +KEY = 0101010101018001 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 43 +KEY = 0101010101014001 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 44 +KEY = 0101010101012001 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 45 +KEY = 0101010101011001 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 46 +KEY = 0101010101010801 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 47 +KEY = 0101010101010401 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 48 +KEY = 0101010101010201 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 49 +KEY = 0101010101010180 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 50 +KEY = 0101010101010140 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 51 +KEY = 0101010101010120 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 52 +KEY = 0101010101010110 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 53 +KEY = 0101010101010108 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 54 +KEY = 0101010101010104 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 55 +KEY = 0101010101010102 +IV = 0000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + + +[DECRYPT] +COUNT = 0 +KEY = 8001010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 1 +KEY = 4001010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 2 +KEY = 2001010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 3 +KEY = 1001010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 4 +KEY = 0801010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 5 +KEY = 0401010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 6 +KEY = 0201010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 7 +KEY = 0180010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 8 +KEY = 0140010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 9 +KEY = 0120010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 10 +KEY = 0110010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 11 +KEY = 0108010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 12 +KEY = 0104010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 13 +KEY = 0102010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 14 +KEY = 0101800101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 15 +KEY = 0101400101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 16 +KEY = 0101200101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 17 +KEY = 0101100101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 18 +KEY = 0101080101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 19 +KEY = 0101040101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 20 +KEY = 0101020101010101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 21 +KEY = 0101018001010101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 22 +KEY = 0101014001010101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 23 +KEY = 0101012001010101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 24 +KEY = 0101011001010101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 25 +KEY = 0101010801010101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 26 +KEY = 0101010401010101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 27 +KEY = 0101010201010101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 28 +KEY = 0101010180010101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 29 +KEY = 0101010140010101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 30 +KEY = 0101010120010101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 31 +KEY = 0101010110010101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 32 +KEY = 0101010108010101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 33 +KEY = 0101010104010101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 34 +KEY = 0101010102010101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 35 +KEY = 0101010101800101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 36 +KEY = 0101010101400101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 37 +KEY = 0101010101200101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 38 +KEY = 0101010101100101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 39 +KEY = 0101010101080101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 40 +KEY = 0101010101040101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 41 +KEY = 0101010101020101 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 42 +KEY = 0101010101018001 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 43 +KEY = 0101010101014001 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 44 +KEY = 0101010101012001 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 45 +KEY = 0101010101011001 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 46 +KEY = 0101010101010801 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 47 +KEY = 0101010101010401 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 48 +KEY = 0101010101010201 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 49 +KEY = 0101010101010180 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 50 +KEY = 0101010101010140 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 51 +KEY = 0101010101010120 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 52 +KEY = 0101010101010110 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 53 +KEY = 0101010101010108 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 54 +KEY = 0101010101010104 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 55 +KEY = 0101010101010102 +IV = 0000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? diff --git a/fips/testvectors/des/sample/CFB1vartext.sam b/fips/testvectors/des/sample/CFB1vartext.sam new file mode 100644 index 0000000000..429cf371e2 --- /dev/null +++ b/fips/testvectors/des/sample/CFB1vartext.sam @@ -0,0 +1,776 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# VARIABLE PLAINTEXT/CIPHERTEXT - KAT for CFB1 +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 8000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 1 +KEY = 0101010101010101 +IV = 4000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 2 +KEY = 0101010101010101 +IV = 2000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 3 +KEY = 0101010101010101 +IV = 1000000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 4 +KEY = 0101010101010101 +IV = 0800000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 5 +KEY = 0101010101010101 +IV = 0400000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 6 +KEY = 0101010101010101 +IV = 0200000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 7 +KEY = 0101010101010101 +IV = 0100000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 8 +KEY = 0101010101010101 +IV = 0080000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 9 +KEY = 0101010101010101 +IV = 0040000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 10 +KEY = 0101010101010101 +IV = 0020000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 11 +KEY = 0101010101010101 +IV = 0010000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 12 +KEY = 0101010101010101 +IV = 0008000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 13 +KEY = 0101010101010101 +IV = 0004000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 14 +KEY = 0101010101010101 +IV = 0002000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 15 +KEY = 0101010101010101 +IV = 0001000000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000800000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000400000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000200000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000100000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000080000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000040000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000020000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000010000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000008000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000004000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000002000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000001000000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000800000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000400000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000200000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000100000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000080000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000040000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000020000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000010000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000008000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000004000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000002000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000001000000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000800000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000400000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000200000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000100000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000080000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000040000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000020000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000010000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000008000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000004000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000002000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000001000 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000800 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000400 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000200 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000100 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000080 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000040 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000020 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000010 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000008 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000004 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000002 +PLAINTEXT = 0 +CIPHERTEXT = ? + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000001 +PLAINTEXT = 0 +CIPHERTEXT = ? + + +[DECRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 8000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 1 +KEY = 0101010101010101 +IV = 4000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 2 +KEY = 0101010101010101 +IV = 2000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 3 +KEY = 0101010101010101 +IV = 1000000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 4 +KEY = 0101010101010101 +IV = 0800000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 5 +KEY = 0101010101010101 +IV = 0400000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 6 +KEY = 0101010101010101 +IV = 0200000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 7 +KEY = 0101010101010101 +IV = 0100000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 8 +KEY = 0101010101010101 +IV = 0080000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 9 +KEY = 0101010101010101 +IV = 0040000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 10 +KEY = 0101010101010101 +IV = 0020000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 11 +KEY = 0101010101010101 +IV = 0010000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 12 +KEY = 0101010101010101 +IV = 0008000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 13 +KEY = 0101010101010101 +IV = 0004000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 14 +KEY = 0101010101010101 +IV = 0002000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 15 +KEY = 0101010101010101 +IV = 0001000000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000800000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000400000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000200000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000100000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000080000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000040000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000020000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000010000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000008000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000004000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000002000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000001000000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000800000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000400000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000200000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000100000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000080000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000040000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000020000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000010000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000008000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000004000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000002000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000001000000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000800000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000400000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000200000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000100000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000080000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000040000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000020000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000010000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000008000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000004000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000002000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000001000 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000800 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000400 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000200 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000100 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000080 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000040 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000020 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000010 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000008 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000004 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000002 +CIPHERTEXT = 0 +PLAINTEXT = ? + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000001 +CIPHERTEXT = 0 +PLAINTEXT = ? diff --git a/fips/testvectors/des/sample/CFB64MMT.sam b/fips/testvectors/des/sample/CFB64MMT.sam new file mode 100644 index 0000000000..12c85b09d5 --- /dev/null +++ b/fips/testvectors/des/sample/CFB64MMT.sam @@ -0,0 +1,46 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# DES Multi Block Message Test for CFB64 +# State : Encrypt and Decrypt +# Tue Jun 24 03:13:44 PM + +[ENCRYPT] + +COUNT = 0 +KEY = fef7df9b403b377c +IV = 20b77d3db64fe6a6 +PLAINTEXT = 6a0bb874a8c575bd +CIPHERTEXT = e68af8741b59768a + +COUNT = 1 +KEY = 9b162a071f015802 +IV = 2f83cf4060546a84 +PLAINTEXT = 4b45f67cca2d506e2d9a8c7623ccf57f +CIPHERTEXT = 1b917a00a1ca396fdca8359f1c152784 + +COUNT = 2 +KEY = 57c258704f3d1319 +IV = ad5be18ff3ed3c90 +PLAINTEXT = 38d9c87916a0900608427eff0f8fb05f53e0adddb8579b58 +CIPHERTEXT = a18dd6783fcfae6aada094a1410981c06bfe701fefefcabd + +[DECRYPT] + +COUNT = 0 +KEY = 1f51404c46f73dd3 +IV = df2f2488c53ef366 +CIPHERTEXT = fd9938732ea86716 +PLAINTEXT = 09642c008e9c5399 + +COUNT = 1 +KEY = 64f8e07351a2dcd5 +IV = e1a6cddf44b62d55 +CIPHERTEXT = 2b0883480a8210f83784af6936d12b0f +PLAINTEXT = 6c369448ce057f653ec8d18a790bbcaf + +COUNT = 2 +KEY = e640b6bca27ff16e +IV = 4bb9f172626c2a0e +CIPHERTEXT = b27e2115d13ec5ba71f7159a9c5697761ec992ca9741c3ae +PLAINTEXT = 347889c0b86d54846b63b0dff4fef57cb03472f697bf312a + diff --git a/fips/testvectors/des/sample/CFB64Monte.sam b/fips/testvectors/des/sample/CFB64Monte.sam new file mode 100644 index 0000000000..dcc49ad554 --- /dev/null +++ b/fips/testvectors/des/sample/CFB64Monte.sam @@ -0,0 +1,58 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# DES Monte Carlo (Modes) Test for CFB64 +# State : Encrypt and Decrypt +# Tue Jun 24 03:13:44 PM + +[ENCRYPT] + +COUNT = 0 +KEY = 62d65740708019f1 +IV = 14544ea4813c49d9 +PLAINTEXT = c3acc89b9b6037ef +CIPHERTEXT = 7971feb937b59ea6 + +COUNT = 1 +KEY = 1aa7a8f846348657 +IV = 7971feb937b59ea6 +PLAINTEXT = 5fef272cad05c503 +CIPHERTEXT = 31a740d9628e6891 + +COUNT = 2 +KEY = 2a01e92025baefc7 +IV = 31a740d9628e6891 +PLAINTEXT = 30a0cbd9f6ba53c0 +CIPHERTEXT = 2ef096c959e1ce8d + +COUNT = 3 +KEY = 04f17fe97c5b204a +IV = 2ef096c959e1ce8d +PLAINTEXT = 414deedf626f2c69 +CIPHERTEXT = 743c364c6d0ae969 + +[DECRYPT] + +COUNT = 0 +KEY = 1938ce9d3170e943 +IV = 50da37dea25a9471 +CIPHERTEXT = ac81a4c963661942 +PLAINTEXT = 1fe83b43a29911d7 + +COUNT = 1 +KEY = 07d0f4df92e9f894 +IV = 244612f97ea1411c +CIPHERTEXT = 3bae29badc3850cb +PLAINTEXT = dfa1ee0c6766bd6a + +COUNT = 2 +KEY = d9701ad3f48f45fe +IV = e27febcc6224e3e5 +CIPHERTEXT = 3dde05c005425e8f +PLAINTEXT = f3298b575c718315 + +COUNT = 3 +KEY = 2a589185a8fec7ea +IV = 079aecf37685fa02 +CIPHERTEXT = f4b367a42af47917 +PLAINTEXT = 90409dfa9fff0d6d + diff --git a/fips/testvectors/des/sample/CFB64invperm.sam b/fips/testvectors/des/sample/CFB64invperm.sam new file mode 100644 index 0000000000..3f591752a7 --- /dev/null +++ b/fips/testvectors/des/sample/CFB64invperm.sam @@ -0,0 +1,776 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# INVERSE PERMUTATION - KAT for CFB64 +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 8000000000000000 +PLAINTEXT = 95f8a5e5dd31d900 +CIPHERTEXT = ? + +COUNT = 1 +KEY = 0101010101010101 +IV = 4000000000000000 +PLAINTEXT = dd7f121ca5015619 +CIPHERTEXT = ? + +COUNT = 2 +KEY = 0101010101010101 +IV = 2000000000000000 +PLAINTEXT = 2e8653104f3834ea +CIPHERTEXT = ? + +COUNT = 3 +KEY = 0101010101010101 +IV = 1000000000000000 +PLAINTEXT = 4bd388ff6cd81d4f +CIPHERTEXT = ? + +COUNT = 4 +KEY = 0101010101010101 +IV = 0800000000000000 +PLAINTEXT = 20b9e767b2fb1456 +CIPHERTEXT = ? + +COUNT = 5 +KEY = 0101010101010101 +IV = 0400000000000000 +PLAINTEXT = 55579380d77138ef +CIPHERTEXT = ? + +COUNT = 6 +KEY = 0101010101010101 +IV = 0200000000000000 +PLAINTEXT = 6cc5defaaf04512f +CIPHERTEXT = ? + +COUNT = 7 +KEY = 0101010101010101 +IV = 0100000000000000 +PLAINTEXT = 0d9f279ba5d87260 +CIPHERTEXT = ? + +COUNT = 8 +KEY = 0101010101010101 +IV = 0080000000000000 +PLAINTEXT = d9031b0271bd5a0a +CIPHERTEXT = ? + +COUNT = 9 +KEY = 0101010101010101 +IV = 0040000000000000 +PLAINTEXT = 424250b37c3dd951 +CIPHERTEXT = ? + +COUNT = 10 +KEY = 0101010101010101 +IV = 0020000000000000 +PLAINTEXT = b8061b7ecd9a21e5 +CIPHERTEXT = ? + +COUNT = 11 +KEY = 0101010101010101 +IV = 0010000000000000 +PLAINTEXT = f15d0f286b65bd28 +CIPHERTEXT = ? + +COUNT = 12 +KEY = 0101010101010101 +IV = 0008000000000000 +PLAINTEXT = add0cc8d6e5deba1 +CIPHERTEXT = ? + +COUNT = 13 +KEY = 0101010101010101 +IV = 0004000000000000 +PLAINTEXT = e6d5f82752ad63d1 +CIPHERTEXT = ? + +COUNT = 14 +KEY = 0101010101010101 +IV = 0002000000000000 +PLAINTEXT = ecbfe3bd3f591a5e +CIPHERTEXT = ? + +COUNT = 15 +KEY = 0101010101010101 +IV = 0001000000000000 +PLAINTEXT = f356834379d165cd +CIPHERTEXT = ? + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000800000000000 +PLAINTEXT = 2b9f982f20037fa9 +CIPHERTEXT = ? + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000400000000000 +PLAINTEXT = 889de068a16f0be6 +CIPHERTEXT = ? + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000200000000000 +PLAINTEXT = e19e275d846a1298 +CIPHERTEXT = ? + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000100000000000 +PLAINTEXT = 329a8ed523d71aec +CIPHERTEXT = ? + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000080000000000 +PLAINTEXT = e7fce22557d23c97 +CIPHERTEXT = ? + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000040000000000 +PLAINTEXT = 12a9f5817ff2d65d +CIPHERTEXT = ? + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000020000000000 +PLAINTEXT = a484c3ad38dc9c19 +CIPHERTEXT = ? + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000010000000000 +PLAINTEXT = fbe00a8a1ef8ad72 +CIPHERTEXT = ? + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000008000000000 +PLAINTEXT = 750d079407521363 +CIPHERTEXT = ? + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000004000000000 +PLAINTEXT = 64feed9c724c2faf +CIPHERTEXT = ? + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000002000000000 +PLAINTEXT = f02b263b328e2b60 +CIPHERTEXT = ? + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000001000000000 +PLAINTEXT = 9d64555a9a10b852 +CIPHERTEXT = ? + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000800000000 +PLAINTEXT = d106ff0bed5255d7 +CIPHERTEXT = ? + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000400000000 +PLAINTEXT = e1652c6b138c64a5 +CIPHERTEXT = ? + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000200000000 +PLAINTEXT = e428581186ec8f46 +CIPHERTEXT = ? + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000100000000 +PLAINTEXT = aeb5f5ede22d1a36 +CIPHERTEXT = ? + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000080000000 +PLAINTEXT = e943d7568aec0c5c +CIPHERTEXT = ? + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000040000000 +PLAINTEXT = df98c8276f54b04b +CIPHERTEXT = ? + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000020000000 +PLAINTEXT = b160e4680f6c696f +CIPHERTEXT = ? + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000010000000 +PLAINTEXT = fa0752b07d9c4ab8 +CIPHERTEXT = ? + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000008000000 +PLAINTEXT = ca3a2b036dbc8502 +CIPHERTEXT = ? + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000004000000 +PLAINTEXT = 5e0905517bb59bcf +CIPHERTEXT = ? + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000002000000 +PLAINTEXT = 814eeb3b91d90726 +CIPHERTEXT = ? + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000001000000 +PLAINTEXT = 4d49db1532919c9f +CIPHERTEXT = ? + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000800000 +PLAINTEXT = 25eb5fc3f8cf0621 +CIPHERTEXT = ? + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000400000 +PLAINTEXT = ab6a20c0620d1c6f +CIPHERTEXT = ? + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000200000 +PLAINTEXT = 79e90dbc98f92cca +CIPHERTEXT = ? + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000100000 +PLAINTEXT = 866ecedd8072bb0e +CIPHERTEXT = ? + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000080000 +PLAINTEXT = 8b54536f2f3e64a8 +CIPHERTEXT = ? + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000040000 +PLAINTEXT = ea51d3975595b86b +CIPHERTEXT = ? + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000020000 +PLAINTEXT = caffc6ac4542de31 +CIPHERTEXT = ? + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000010000 +PLAINTEXT = 8dd45a2ddf90796c +CIPHERTEXT = ? + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000008000 +PLAINTEXT = 1029d55e880ec2d0 +CIPHERTEXT = ? + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000004000 +PLAINTEXT = 5d86cb23639dbea9 +CIPHERTEXT = ? + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000002000 +PLAINTEXT = 1d1ca853ae7c0c5f +CIPHERTEXT = ? + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000001000 +PLAINTEXT = ce332329248f3228 +CIPHERTEXT = ? + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000800 +PLAINTEXT = 8405d1abe24fb942 +CIPHERTEXT = ? + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000400 +PLAINTEXT = e643d78090ca4207 +CIPHERTEXT = ? + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000200 +PLAINTEXT = 48221b9937748a23 +CIPHERTEXT = ? + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000100 +PLAINTEXT = dd7c0bbd61fafd54 +CIPHERTEXT = ? + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000080 +PLAINTEXT = 2fbc291a570db5c4 +CIPHERTEXT = ? + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000040 +PLAINTEXT = e07c30d7e4e26e12 +CIPHERTEXT = ? + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000020 +PLAINTEXT = 0953e2258e8e90a1 +CIPHERTEXT = ? + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000010 +PLAINTEXT = 5b711bc4ceebf2ee +CIPHERTEXT = ? + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000008 +PLAINTEXT = cc083f1e6d9e85f6 +CIPHERTEXT = ? + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000004 +PLAINTEXT = d2fd8867d50d2dfe +CIPHERTEXT = ? + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000002 +PLAINTEXT = 06e7ea22ce92708f +CIPHERTEXT = ? + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000001 +PLAINTEXT = 166b40b44aba4bd6 +CIPHERTEXT = ? + + +[DECRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 8000000000000000 +CIPHERTEXT = 95f8a5e5dd31d900 +PLAINTEXT = ? + +COUNT = 1 +KEY = 0101010101010101 +IV = 4000000000000000 +CIPHERTEXT = dd7f121ca5015619 +PLAINTEXT = ? + +COUNT = 2 +KEY = 0101010101010101 +IV = 2000000000000000 +CIPHERTEXT = 2e8653104f3834ea +PLAINTEXT = ? + +COUNT = 3 +KEY = 0101010101010101 +IV = 1000000000000000 +CIPHERTEXT = 4bd388ff6cd81d4f +PLAINTEXT = ? + +COUNT = 4 +KEY = 0101010101010101 +IV = 0800000000000000 +CIPHERTEXT = 20b9e767b2fb1456 +PLAINTEXT = ? + +COUNT = 5 +KEY = 0101010101010101 +IV = 0400000000000000 +CIPHERTEXT = 55579380d77138ef +PLAINTEXT = ? + +COUNT = 6 +KEY = 0101010101010101 +IV = 0200000000000000 +CIPHERTEXT = 6cc5defaaf04512f +PLAINTEXT = ? + +COUNT = 7 +KEY = 0101010101010101 +IV = 0100000000000000 +CIPHERTEXT = 0d9f279ba5d87260 +PLAINTEXT = ? + +COUNT = 8 +KEY = 0101010101010101 +IV = 0080000000000000 +CIPHERTEXT = d9031b0271bd5a0a +PLAINTEXT = ? + +COUNT = 9 +KEY = 0101010101010101 +IV = 0040000000000000 +CIPHERTEXT = 424250b37c3dd951 +PLAINTEXT = ? + +COUNT = 10 +KEY = 0101010101010101 +IV = 0020000000000000 +CIPHERTEXT = b8061b7ecd9a21e5 +PLAINTEXT = ? + +COUNT = 11 +KEY = 0101010101010101 +IV = 0010000000000000 +CIPHERTEXT = f15d0f286b65bd28 +PLAINTEXT = ? + +COUNT = 12 +KEY = 0101010101010101 +IV = 0008000000000000 +CIPHERTEXT = add0cc8d6e5deba1 +PLAINTEXT = ? + +COUNT = 13 +KEY = 0101010101010101 +IV = 0004000000000000 +CIPHERTEXT = e6d5f82752ad63d1 +PLAINTEXT = ? + +COUNT = 14 +KEY = 0101010101010101 +IV = 0002000000000000 +CIPHERTEXT = ecbfe3bd3f591a5e +PLAINTEXT = ? + +COUNT = 15 +KEY = 0101010101010101 +IV = 0001000000000000 +CIPHERTEXT = f356834379d165cd +PLAINTEXT = ? + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000800000000000 +CIPHERTEXT = 2b9f982f20037fa9 +PLAINTEXT = ? + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000400000000000 +CIPHERTEXT = 889de068a16f0be6 +PLAINTEXT = ? + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000200000000000 +CIPHERTEXT = e19e275d846a1298 +PLAINTEXT = ? + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000100000000000 +CIPHERTEXT = 329a8ed523d71aec +PLAINTEXT = ? + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000080000000000 +CIPHERTEXT = e7fce22557d23c97 +PLAINTEXT = ? + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000040000000000 +CIPHERTEXT = 12a9f5817ff2d65d +PLAINTEXT = ? + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000020000000000 +CIPHERTEXT = a484c3ad38dc9c19 +PLAINTEXT = ? + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000010000000000 +CIPHERTEXT = fbe00a8a1ef8ad72 +PLAINTEXT = ? + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000008000000000 +CIPHERTEXT = 750d079407521363 +PLAINTEXT = ? + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000004000000000 +CIPHERTEXT = 64feed9c724c2faf +PLAINTEXT = ? + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000002000000000 +CIPHERTEXT = f02b263b328e2b60 +PLAINTEXT = ? + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000001000000000 +CIPHERTEXT = 9d64555a9a10b852 +PLAINTEXT = ? + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000800000000 +CIPHERTEXT = d106ff0bed5255d7 +PLAINTEXT = ? + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000400000000 +CIPHERTEXT = e1652c6b138c64a5 +PLAINTEXT = ? + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000200000000 +CIPHERTEXT = e428581186ec8f46 +PLAINTEXT = ? + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000100000000 +CIPHERTEXT = aeb5f5ede22d1a36 +PLAINTEXT = ? + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000080000000 +CIPHERTEXT = e943d7568aec0c5c +PLAINTEXT = ? + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000040000000 +CIPHERTEXT = df98c8276f54b04b +PLAINTEXT = ? + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000020000000 +CIPHERTEXT = b160e4680f6c696f +PLAINTEXT = ? + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000010000000 +CIPHERTEXT = fa0752b07d9c4ab8 +PLAINTEXT = ? + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000008000000 +CIPHERTEXT = ca3a2b036dbc8502 +PLAINTEXT = ? + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000004000000 +CIPHERTEXT = 5e0905517bb59bcf +PLAINTEXT = ? + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000002000000 +CIPHERTEXT = 814eeb3b91d90726 +PLAINTEXT = ? + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000001000000 +CIPHERTEXT = 4d49db1532919c9f +PLAINTEXT = ? + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000800000 +CIPHERTEXT = 25eb5fc3f8cf0621 +PLAINTEXT = ? + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000400000 +CIPHERTEXT = ab6a20c0620d1c6f +PLAINTEXT = ? + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000200000 +CIPHERTEXT = 79e90dbc98f92cca +PLAINTEXT = ? + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000100000 +CIPHERTEXT = 866ecedd8072bb0e +PLAINTEXT = ? + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000080000 +CIPHERTEXT = 8b54536f2f3e64a8 +PLAINTEXT = ? + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000040000 +CIPHERTEXT = ea51d3975595b86b +PLAINTEXT = ? + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000020000 +CIPHERTEXT = caffc6ac4542de31 +PLAINTEXT = ? + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000010000 +CIPHERTEXT = 8dd45a2ddf90796c +PLAINTEXT = ? + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000008000 +CIPHERTEXT = 1029d55e880ec2d0 +PLAINTEXT = ? + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000004000 +CIPHERTEXT = 5d86cb23639dbea9 +PLAINTEXT = ? + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000002000 +CIPHERTEXT = 1d1ca853ae7c0c5f +PLAINTEXT = ? + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000001000 +CIPHERTEXT = ce332329248f3228 +PLAINTEXT = ? + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000800 +CIPHERTEXT = 8405d1abe24fb942 +PLAINTEXT = ? + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000400 +CIPHERTEXT = e643d78090ca4207 +PLAINTEXT = ? + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000200 +CIPHERTEXT = 48221b9937748a23 +PLAINTEXT = ? + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000100 +CIPHERTEXT = dd7c0bbd61fafd54 +PLAINTEXT = ? + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000080 +CIPHERTEXT = 2fbc291a570db5c4 +PLAINTEXT = ? + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000040 +CIPHERTEXT = e07c30d7e4e26e12 +PLAINTEXT = ? + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000020 +CIPHERTEXT = 0953e2258e8e90a1 +PLAINTEXT = ? + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000010 +CIPHERTEXT = 5b711bc4ceebf2ee +PLAINTEXT = ? + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000008 +CIPHERTEXT = cc083f1e6d9e85f6 +PLAINTEXT = ? + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000004 +CIPHERTEXT = d2fd8867d50d2dfe +PLAINTEXT = ? + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000002 +CIPHERTEXT = 06e7ea22ce92708f +PLAINTEXT = ? + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000001 +CIPHERTEXT = 166b40b44aba4bd6 +PLAINTEXT = ? diff --git a/fips/testvectors/des/sample/CFB64permop.sam b/fips/testvectors/des/sample/CFB64permop.sam new file mode 100644 index 0000000000..08ef179148 --- /dev/null +++ b/fips/testvectors/des/sample/CFB64permop.sam @@ -0,0 +1,392 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# PERMUTATION OPERATION - KAT for CFB64 +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:52 PM + +[ENCRYPT] +COUNT = 0 +KEY = 1046913489980131 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 1 +KEY = 1007103489988020 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 2 +KEY = 10071034c8980120 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 3 +KEY = 1046103489988020 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 4 +KEY = 1086911519190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 5 +KEY = 1086911519580101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 6 +KEY = 5107b01519580101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 7 +KEY = 1007b01519190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 8 +KEY = 3107915498080101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 9 +KEY = 3107919498080101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 10 +KEY = 10079115b9080140 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 11 +KEY = 3107911598080140 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 12 +KEY = 1007d01589980101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 13 +KEY = 9107911589980101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 14 +KEY = 9107d01589190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 15 +KEY = 1007d01598980120 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 16 +KEY = 1007940498190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 17 +KEY = 0107910491190401 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 18 +KEY = 0107910491190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 19 +KEY = 0107940491190401 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 20 +KEY = 19079210981a0101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 21 +KEY = 1007911998190801 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 22 +KEY = 10079119981a0801 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 23 +KEY = 1007921098190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 24 +KEY = 100791159819010b +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 25 +KEY = 1004801598190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 26 +KEY = 1004801598190102 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 27 +KEY = 1004801598190108 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 28 +KEY = 1002911598100104 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 29 +KEY = 1002911598190104 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 30 +KEY = 1002911598100201 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 31 +KEY = 1002911698100101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + + +[DECRYPT] +COUNT = 0 +KEY = 1046913489980131 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 1 +KEY = 1007103489988020 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 2 +KEY = 10071034c8980120 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 3 +KEY = 1046103489988020 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 4 +KEY = 1086911519190101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 5 +KEY = 1086911519580101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 6 +KEY = 5107b01519580101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 7 +KEY = 1007b01519190101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 8 +KEY = 3107915498080101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 9 +KEY = 3107919498080101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 10 +KEY = 10079115b9080140 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 11 +KEY = 3107911598080140 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 12 +KEY = 1007d01589980101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 13 +KEY = 9107911589980101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 14 +KEY = 9107d01589190101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 15 +KEY = 1007d01598980120 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 16 +KEY = 1007940498190101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 17 +KEY = 0107910491190401 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 18 +KEY = 0107910491190101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 19 +KEY = 0107940491190401 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 20 +KEY = 19079210981a0101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 21 +KEY = 1007911998190801 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 22 +KEY = 10079119981a0801 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 23 +KEY = 1007921098190101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 24 +KEY = 100791159819010b +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 25 +KEY = 1004801598190101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 26 +KEY = 1004801598190102 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 27 +KEY = 1004801598190108 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 28 +KEY = 1002911598100104 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 29 +KEY = 1002911598190104 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 30 +KEY = 1002911598100201 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 31 +KEY = 1002911698100101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? diff --git a/fips/testvectors/des/sample/CFB64subtab.sam b/fips/testvectors/des/sample/CFB64subtab.sam new file mode 100644 index 0000000000..a76e789b22 --- /dev/null +++ b/fips/testvectors/des/sample/CFB64subtab.sam @@ -0,0 +1,236 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# SUBSTITUTION TABLE - KAT for CFB64 +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:52 PM + +[ENCRYPT] +COUNT = 0 +KEY = 7ca110454a1a6e57 +IV = 01a1d6d039776742 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 1 +KEY = 0131d9619dc1376e +IV = 5cd54ca83def57da +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 2 +KEY = 07a1133e4a0b2686 +IV = 0248d43806f67172 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 3 +KEY = 3849674c2602319e +IV = 51454b582ddf440a +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 4 +KEY = 04b915ba43feb5b6 +IV = 42fd443059577fa2 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 5 +KEY = 0113b970fd34f2ce +IV = 059b5e0851cf143a +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 6 +KEY = 0170f175468fb5e6 +IV = 0756d8e0774761d2 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 7 +KEY = 43297fad38e373fe +IV = 762514b829bf486a +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 8 +KEY = 07a7137045da2a16 +IV = 3bdd119049372802 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 9 +KEY = 04689104c2fd3b2f +IV = 26955f6835af609a +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 10 +KEY = 37d06bb516cb7546 +IV = 164d5e404f275232 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 11 +KEY = 1f08260d1ac2465e +IV = 6b056e18759f5cca +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 12 +KEY = 584023641aba6176 +IV = 004bd6ef09176062 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 13 +KEY = 025816164629b007 +IV = 480d39006ee762f2 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 14 +KEY = 49793ebc79b3258f +IV = 437540c8698f3cfa +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 15 +KEY = 4fb05e1515ab73a7 +IV = 072d43a077075292 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 16 +KEY = 49e95d6d4ca229bf +IV = 02fe55778117f12a +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 17 +KEY = 018310dc409b26d6 +IV = 1d9d5c5018f728c2 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 18 +KEY = 1c587f1c13924fef +IV = 305532286d6f295a +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + + +[DECRYPT] +COUNT = 0 +KEY = 7ca110454a1a6e57 +IV = 01a1d6d039776742 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 1 +KEY = 0131d9619dc1376e +IV = 5cd54ca83def57da +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 2 +KEY = 07a1133e4a0b2686 +IV = 0248d43806f67172 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 3 +KEY = 3849674c2602319e +IV = 51454b582ddf440a +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 4 +KEY = 04b915ba43feb5b6 +IV = 42fd443059577fa2 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 5 +KEY = 0113b970fd34f2ce +IV = 059b5e0851cf143a +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 6 +KEY = 0170f175468fb5e6 +IV = 0756d8e0774761d2 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 7 +KEY = 43297fad38e373fe +IV = 762514b829bf486a +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 8 +KEY = 07a7137045da2a16 +IV = 3bdd119049372802 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 9 +KEY = 04689104c2fd3b2f +IV = 26955f6835af609a +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 10 +KEY = 37d06bb516cb7546 +IV = 164d5e404f275232 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 11 +KEY = 1f08260d1ac2465e +IV = 6b056e18759f5cca +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 12 +KEY = 584023641aba6176 +IV = 004bd6ef09176062 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 13 +KEY = 025816164629b007 +IV = 480d39006ee762f2 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 14 +KEY = 49793ebc79b3258f +IV = 437540c8698f3cfa +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 15 +KEY = 4fb05e1515ab73a7 +IV = 072d43a077075292 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 16 +KEY = 49e95d6d4ca229bf +IV = 02fe55778117f12a +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 17 +KEY = 018310dc409b26d6 +IV = 1d9d5c5018f728c2 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 18 +KEY = 1c587f1c13924fef +IV = 305532286d6f295a +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? diff --git a/fips/testvectors/des/sample/CFB64varkey.sam b/fips/testvectors/des/sample/CFB64varkey.sam new file mode 100644 index 0000000000..299e7f5ef4 --- /dev/null +++ b/fips/testvectors/des/sample/CFB64varkey.sam @@ -0,0 +1,680 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# VARIABLE KEY - KAT for CFB64 +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:52 PM + +[ENCRYPT] +COUNT = 0 +KEY = 8001010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 1 +KEY = 4001010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 2 +KEY = 2001010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 3 +KEY = 1001010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 4 +KEY = 0801010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 5 +KEY = 0401010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 6 +KEY = 0201010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 7 +KEY = 0180010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 8 +KEY = 0140010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 9 +KEY = 0120010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 10 +KEY = 0110010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 11 +KEY = 0108010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 12 +KEY = 0104010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 13 +KEY = 0102010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 14 +KEY = 0101800101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 15 +KEY = 0101400101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 16 +KEY = 0101200101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 17 +KEY = 0101100101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 18 +KEY = 0101080101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 19 +KEY = 0101040101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 20 +KEY = 0101020101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 21 +KEY = 0101018001010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 22 +KEY = 0101014001010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 23 +KEY = 0101012001010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 24 +KEY = 0101011001010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 25 +KEY = 0101010801010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 26 +KEY = 0101010401010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 27 +KEY = 0101010201010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 28 +KEY = 0101010180010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 29 +KEY = 0101010140010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 30 +KEY = 0101010120010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 31 +KEY = 0101010110010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 32 +KEY = 0101010108010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 33 +KEY = 0101010104010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 34 +KEY = 0101010102010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 35 +KEY = 0101010101800101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 36 +KEY = 0101010101400101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 37 +KEY = 0101010101200101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 38 +KEY = 0101010101100101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 39 +KEY = 0101010101080101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 40 +KEY = 0101010101040101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 41 +KEY = 0101010101020101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 42 +KEY = 0101010101018001 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 43 +KEY = 0101010101014001 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 44 +KEY = 0101010101012001 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 45 +KEY = 0101010101011001 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 46 +KEY = 0101010101010801 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 47 +KEY = 0101010101010401 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 48 +KEY = 0101010101010201 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 49 +KEY = 0101010101010180 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 50 +KEY = 0101010101010140 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 51 +KEY = 0101010101010120 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 52 +KEY = 0101010101010110 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 53 +KEY = 0101010101010108 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 54 +KEY = 0101010101010104 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 55 +KEY = 0101010101010102 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + + +[DECRYPT] +COUNT = 0 +KEY = 8001010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 1 +KEY = 4001010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 2 +KEY = 2001010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 3 +KEY = 1001010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 4 +KEY = 0801010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 5 +KEY = 0401010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 6 +KEY = 0201010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 7 +KEY = 0180010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 8 +KEY = 0140010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 9 +KEY = 0120010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 10 +KEY = 0110010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 11 +KEY = 0108010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 12 +KEY = 0104010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 13 +KEY = 0102010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 14 +KEY = 0101800101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 15 +KEY = 0101400101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 16 +KEY = 0101200101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 17 +KEY = 0101100101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 18 +KEY = 0101080101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 19 +KEY = 0101040101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 20 +KEY = 0101020101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 21 +KEY = 0101018001010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 22 +KEY = 0101014001010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 23 +KEY = 0101012001010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 24 +KEY = 0101011001010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 25 +KEY = 0101010801010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 26 +KEY = 0101010401010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 27 +KEY = 0101010201010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 28 +KEY = 0101010180010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 29 +KEY = 0101010140010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 30 +KEY = 0101010120010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 31 +KEY = 0101010110010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 32 +KEY = 0101010108010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 33 +KEY = 0101010104010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 34 +KEY = 0101010102010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 35 +KEY = 0101010101800101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 36 +KEY = 0101010101400101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 37 +KEY = 0101010101200101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 38 +KEY = 0101010101100101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 39 +KEY = 0101010101080101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 40 +KEY = 0101010101040101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 41 +KEY = 0101010101020101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 42 +KEY = 0101010101018001 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 43 +KEY = 0101010101014001 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 44 +KEY = 0101010101012001 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 45 +KEY = 0101010101011001 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 46 +KEY = 0101010101010801 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 47 +KEY = 0101010101010401 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 48 +KEY = 0101010101010201 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 49 +KEY = 0101010101010180 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 50 +KEY = 0101010101010140 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 51 +KEY = 0101010101010120 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 52 +KEY = 0101010101010110 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 53 +KEY = 0101010101010108 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 54 +KEY = 0101010101010104 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 55 +KEY = 0101010101010102 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? diff --git a/fips/testvectors/des/sample/CFB64vartext.sam b/fips/testvectors/des/sample/CFB64vartext.sam new file mode 100644 index 0000000000..c7f4536549 --- /dev/null +++ b/fips/testvectors/des/sample/CFB64vartext.sam @@ -0,0 +1,776 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# VARIABLE PLAINTEXT/CIPHERTEXT - KAT for CFB64 +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 8000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 1 +KEY = 0101010101010101 +IV = 4000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 2 +KEY = 0101010101010101 +IV = 2000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 3 +KEY = 0101010101010101 +IV = 1000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 4 +KEY = 0101010101010101 +IV = 0800000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 5 +KEY = 0101010101010101 +IV = 0400000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 6 +KEY = 0101010101010101 +IV = 0200000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 7 +KEY = 0101010101010101 +IV = 0100000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 8 +KEY = 0101010101010101 +IV = 0080000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 9 +KEY = 0101010101010101 +IV = 0040000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 10 +KEY = 0101010101010101 +IV = 0020000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 11 +KEY = 0101010101010101 +IV = 0010000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 12 +KEY = 0101010101010101 +IV = 0008000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 13 +KEY = 0101010101010101 +IV = 0004000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 14 +KEY = 0101010101010101 +IV = 0002000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 15 +KEY = 0101010101010101 +IV = 0001000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000800000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000400000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000200000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000100000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000080000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000040000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000020000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000010000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000008000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000004000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000002000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000001000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000800000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000400000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000200000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000100000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000080000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000040000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000020000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000010000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000008000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000004000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000002000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000001000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000800000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000400000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000200000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000100000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000080000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000040000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000020000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000010000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000008000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000004000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000002000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000001000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000800 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000400 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000200 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000100 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000080 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000040 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000020 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000010 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000008 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000004 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000002 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000001 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + + +[DECRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 8000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 1 +KEY = 0101010101010101 +IV = 4000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 2 +KEY = 0101010101010101 +IV = 2000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 3 +KEY = 0101010101010101 +IV = 1000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 4 +KEY = 0101010101010101 +IV = 0800000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 5 +KEY = 0101010101010101 +IV = 0400000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 6 +KEY = 0101010101010101 +IV = 0200000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 7 +KEY = 0101010101010101 +IV = 0100000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 8 +KEY = 0101010101010101 +IV = 0080000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 9 +KEY = 0101010101010101 +IV = 0040000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 10 +KEY = 0101010101010101 +IV = 0020000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 11 +KEY = 0101010101010101 +IV = 0010000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 12 +KEY = 0101010101010101 +IV = 0008000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 13 +KEY = 0101010101010101 +IV = 0004000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 14 +KEY = 0101010101010101 +IV = 0002000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 15 +KEY = 0101010101010101 +IV = 0001000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000800000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000400000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000200000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000100000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000080000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000040000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000020000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000010000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000008000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000004000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000002000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000001000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000800000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000400000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000200000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000100000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000080000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000040000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000020000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000010000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000008000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000004000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000002000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000001000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000800000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000400000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000200000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000100000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000080000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000040000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000020000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000010000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000008000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000004000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000002000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000001000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000800 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000400 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000200 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000100 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000080 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000040 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000020 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000010 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000008 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000004 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000002 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000001 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? diff --git a/fips/testvectors/des/sample/CFB8MMT.sam b/fips/testvectors/des/sample/CFB8MMT.sam new file mode 100644 index 0000000000..49da98e1bf --- /dev/null +++ b/fips/testvectors/des/sample/CFB8MMT.sam @@ -0,0 +1,46 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# DES Multi Block Message Test for CFB8 +# State : Encrypt and Decrypt +# Tue Jun 24 03:13:22 PM + +[ENCRYPT] + +COUNT = 0 +KEY = b0ba3719ecb66b46 +IV = dfbf15e1062a751d +PLAINTEXT = a4 +CIPHERTEXT = df + +COUNT = 1 +KEY = 0862e3efa1b5ea1f +IV = 31c349f7613537a6 +PLAINTEXT = 1102 +CIPHERTEXT = e565 + +COUNT = 2 +KEY = d6a4f2c254103d80 +IV = f58c9293054006c2 +PLAINTEXT = 9e9376 +CIPHERTEXT = 99b36a + +[DECRYPT] + +COUNT = 0 +KEY = a225d0ec2315fdb5 +IV = 92ed9b845dc8904a +CIPHERTEXT = dc +PLAINTEXT = e2 + +COUNT = 1 +KEY = 9238e00b4ac751a8 +IV = 681d64c6a9d600df +CIPHERTEXT = 4135 +PLAINTEXT = 8ebd + +COUNT = 2 +KEY = 3eb37ca1d9b63d32 +IV = 0c20eb65969c6a4d +CIPHERTEXT = 04ed83 +PLAINTEXT = 9b25d5 + diff --git a/fips/testvectors/des/sample/CFB8Monte.sam b/fips/testvectors/des/sample/CFB8Monte.sam new file mode 100644 index 0000000000..ce8e81d94e --- /dev/null +++ b/fips/testvectors/des/sample/CFB8Monte.sam @@ -0,0 +1,58 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# DES Monte Carlo (Modes) Test for CFB8 +# State : Encrypt and Decrypt +# Tue Jun 24 03:13:22 PM + +[ENCRYPT] + +COUNT = 0 +KEY = 64102f5b75b507d5 +IV = 626e2715ecb2f12d +PLAINTEXT = fc +CIPHERTEXT = a1 + +COUNT = 1 +KEY = 9b02dfef3413e375 +IV = fe12f0b440a7e5a1 +PLAINTEXT = a9 +CIPHERTEXT = 90 + +COUNT = 2 +KEY = 70cb9113efbccee5 +IV = eac94ffddaaf2d90 +PLAINTEXT = 9d +CIPHERTEXT = fb + +COUNT = 3 +KEY = 136d52b9ae38161f +IV = 62a7c2aa4084d9fb +PLAINTEXT = 04 +CIPHERTEXT = 17 + +[DECRYPT] + +COUNT = 0 +KEY = 6bab1f1f3419ab26 +IV = 86e32d9e0f5dc507 +CIPHERTEXT = d9 +PLAINTEXT = 3d + +COUNT = 1 +KEY = 7fd07694c13bea1a +IV = f6e298f17b8eadec +CIPHERTEXT = d1 +PLAINTEXT = ef + +COUNT = 2 +KEY = 4649386eb53b85f4 +IV = f7ce5618e29796f9 +CIPHERTEXT = 16 +PLAINTEXT = 20 + +COUNT = 3 +KEY = 497fbf13731532d5 +IV = 26291e99e4230cba +CIPHERTEXT = 9a +PLAINTEXT = 00 + diff --git a/fips/testvectors/des/sample/CFB8invperm.sam b/fips/testvectors/des/sample/CFB8invperm.sam new file mode 100644 index 0000000000..1814241cd1 --- /dev/null +++ b/fips/testvectors/des/sample/CFB8invperm.sam @@ -0,0 +1,776 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# INVERSE PERMUTATION - KAT for CFB8 +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 8000000000000000 +PLAINTEXT = 95 +CIPHERTEXT = ? + +COUNT = 1 +KEY = 0101010101010101 +IV = 4000000000000000 +PLAINTEXT = dd +CIPHERTEXT = ? + +COUNT = 2 +KEY = 0101010101010101 +IV = 2000000000000000 +PLAINTEXT = 2e +CIPHERTEXT = ? + +COUNT = 3 +KEY = 0101010101010101 +IV = 1000000000000000 +PLAINTEXT = 4b +CIPHERTEXT = ? + +COUNT = 4 +KEY = 0101010101010101 +IV = 0800000000000000 +PLAINTEXT = 20 +CIPHERTEXT = ? + +COUNT = 5 +KEY = 0101010101010101 +IV = 0400000000000000 +PLAINTEXT = 55 +CIPHERTEXT = ? + +COUNT = 6 +KEY = 0101010101010101 +IV = 0200000000000000 +PLAINTEXT = 6c +CIPHERTEXT = ? + +COUNT = 7 +KEY = 0101010101010101 +IV = 0100000000000000 +PLAINTEXT = 0d +CIPHERTEXT = ? + +COUNT = 8 +KEY = 0101010101010101 +IV = 0080000000000000 +PLAINTEXT = d9 +CIPHERTEXT = ? + +COUNT = 9 +KEY = 0101010101010101 +IV = 0040000000000000 +PLAINTEXT = 42 +CIPHERTEXT = ? + +COUNT = 10 +KEY = 0101010101010101 +IV = 0020000000000000 +PLAINTEXT = b8 +CIPHERTEXT = ? + +COUNT = 11 +KEY = 0101010101010101 +IV = 0010000000000000 +PLAINTEXT = f1 +CIPHERTEXT = ? + +COUNT = 12 +KEY = 0101010101010101 +IV = 0008000000000000 +PLAINTEXT = ad +CIPHERTEXT = ? + +COUNT = 13 +KEY = 0101010101010101 +IV = 0004000000000000 +PLAINTEXT = e6 +CIPHERTEXT = ? + +COUNT = 14 +KEY = 0101010101010101 +IV = 0002000000000000 +PLAINTEXT = ec +CIPHERTEXT = ? + +COUNT = 15 +KEY = 0101010101010101 +IV = 0001000000000000 +PLAINTEXT = f3 +CIPHERTEXT = ? + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000800000000000 +PLAINTEXT = 2b +CIPHERTEXT = ? + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000400000000000 +PLAINTEXT = 88 +CIPHERTEXT = ? + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000200000000000 +PLAINTEXT = e1 +CIPHERTEXT = ? + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000100000000000 +PLAINTEXT = 32 +CIPHERTEXT = ? + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000080000000000 +PLAINTEXT = e7 +CIPHERTEXT = ? + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000040000000000 +PLAINTEXT = 12 +CIPHERTEXT = ? + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000020000000000 +PLAINTEXT = a4 +CIPHERTEXT = ? + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000010000000000 +PLAINTEXT = fb +CIPHERTEXT = ? + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000008000000000 +PLAINTEXT = 75 +CIPHERTEXT = ? + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000004000000000 +PLAINTEXT = 64 +CIPHERTEXT = ? + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000002000000000 +PLAINTEXT = f0 +CIPHERTEXT = ? + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000001000000000 +PLAINTEXT = 9d +CIPHERTEXT = ? + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000800000000 +PLAINTEXT = d1 +CIPHERTEXT = ? + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000400000000 +PLAINTEXT = e1 +CIPHERTEXT = ? + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000200000000 +PLAINTEXT = e4 +CIPHERTEXT = ? + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000100000000 +PLAINTEXT = ae +CIPHERTEXT = ? + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000080000000 +PLAINTEXT = e9 +CIPHERTEXT = ? + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000040000000 +PLAINTEXT = df +CIPHERTEXT = ? + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000020000000 +PLAINTEXT = b1 +CIPHERTEXT = ? + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000010000000 +PLAINTEXT = fa +CIPHERTEXT = ? + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000008000000 +PLAINTEXT = ca +CIPHERTEXT = ? + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000004000000 +PLAINTEXT = 5e +CIPHERTEXT = ? + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000002000000 +PLAINTEXT = 81 +CIPHERTEXT = ? + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000001000000 +PLAINTEXT = 4d +CIPHERTEXT = ? + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000800000 +PLAINTEXT = 25 +CIPHERTEXT = ? + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000400000 +PLAINTEXT = ab +CIPHERTEXT = ? + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000200000 +PLAINTEXT = 79 +CIPHERTEXT = ? + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000100000 +PLAINTEXT = 86 +CIPHERTEXT = ? + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000080000 +PLAINTEXT = 8b +CIPHERTEXT = ? + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000040000 +PLAINTEXT = ea +CIPHERTEXT = ? + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000020000 +PLAINTEXT = ca +CIPHERTEXT = ? + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000010000 +PLAINTEXT = 8d +CIPHERTEXT = ? + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000008000 +PLAINTEXT = 10 +CIPHERTEXT = ? + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000004000 +PLAINTEXT = 5d +CIPHERTEXT = ? + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000002000 +PLAINTEXT = 1d +CIPHERTEXT = ? + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000001000 +PLAINTEXT = ce +CIPHERTEXT = ? + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000800 +PLAINTEXT = 84 +CIPHERTEXT = ? + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000400 +PLAINTEXT = e6 +CIPHERTEXT = ? + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000200 +PLAINTEXT = 48 +CIPHERTEXT = ? + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000100 +PLAINTEXT = dd +CIPHERTEXT = ? + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000080 +PLAINTEXT = 2f +CIPHERTEXT = ? + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000040 +PLAINTEXT = e0 +CIPHERTEXT = ? + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000020 +PLAINTEXT = 09 +CIPHERTEXT = ? + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000010 +PLAINTEXT = 5b +CIPHERTEXT = ? + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000008 +PLAINTEXT = cc +CIPHERTEXT = ? + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000004 +PLAINTEXT = d2 +CIPHERTEXT = ? + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000002 +PLAINTEXT = 06 +CIPHERTEXT = ? + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000001 +PLAINTEXT = 16 +CIPHERTEXT = ? + + +[DECRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 8000000000000000 +CIPHERTEXT = 95 +PLAINTEXT = ? + +COUNT = 1 +KEY = 0101010101010101 +IV = 4000000000000000 +CIPHERTEXT = dd +PLAINTEXT = ? + +COUNT = 2 +KEY = 0101010101010101 +IV = 2000000000000000 +CIPHERTEXT = 2e +PLAINTEXT = ? + +COUNT = 3 +KEY = 0101010101010101 +IV = 1000000000000000 +CIPHERTEXT = 4b +PLAINTEXT = ? + +COUNT = 4 +KEY = 0101010101010101 +IV = 0800000000000000 +CIPHERTEXT = 20 +PLAINTEXT = ? + +COUNT = 5 +KEY = 0101010101010101 +IV = 0400000000000000 +CIPHERTEXT = 55 +PLAINTEXT = ? + +COUNT = 6 +KEY = 0101010101010101 +IV = 0200000000000000 +CIPHERTEXT = 6c +PLAINTEXT = ? + +COUNT = 7 +KEY = 0101010101010101 +IV = 0100000000000000 +CIPHERTEXT = 0d +PLAINTEXT = ? + +COUNT = 8 +KEY = 0101010101010101 +IV = 0080000000000000 +CIPHERTEXT = d9 +PLAINTEXT = ? + +COUNT = 9 +KEY = 0101010101010101 +IV = 0040000000000000 +CIPHERTEXT = 42 +PLAINTEXT = ? + +COUNT = 10 +KEY = 0101010101010101 +IV = 0020000000000000 +CIPHERTEXT = b8 +PLAINTEXT = ? + +COUNT = 11 +KEY = 0101010101010101 +IV = 0010000000000000 +CIPHERTEXT = f1 +PLAINTEXT = ? + +COUNT = 12 +KEY = 0101010101010101 +IV = 0008000000000000 +CIPHERTEXT = ad +PLAINTEXT = ? + +COUNT = 13 +KEY = 0101010101010101 +IV = 0004000000000000 +CIPHERTEXT = e6 +PLAINTEXT = ? + +COUNT = 14 +KEY = 0101010101010101 +IV = 0002000000000000 +CIPHERTEXT = ec +PLAINTEXT = ? + +COUNT = 15 +KEY = 0101010101010101 +IV = 0001000000000000 +CIPHERTEXT = f3 +PLAINTEXT = ? + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000800000000000 +CIPHERTEXT = 2b +PLAINTEXT = ? + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000400000000000 +CIPHERTEXT = 88 +PLAINTEXT = ? + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000200000000000 +CIPHERTEXT = e1 +PLAINTEXT = ? + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000100000000000 +CIPHERTEXT = 32 +PLAINTEXT = ? + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000080000000000 +CIPHERTEXT = e7 +PLAINTEXT = ? + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000040000000000 +CIPHERTEXT = 12 +PLAINTEXT = ? + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000020000000000 +CIPHERTEXT = a4 +PLAINTEXT = ? + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000010000000000 +CIPHERTEXT = fb +PLAINTEXT = ? + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000008000000000 +CIPHERTEXT = 75 +PLAINTEXT = ? + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000004000000000 +CIPHERTEXT = 64 +PLAINTEXT = ? + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000002000000000 +CIPHERTEXT = f0 +PLAINTEXT = ? + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000001000000000 +CIPHERTEXT = 9d +PLAINTEXT = ? + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000800000000 +CIPHERTEXT = d1 +PLAINTEXT = ? + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000400000000 +CIPHERTEXT = e1 +PLAINTEXT = ? + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000200000000 +CIPHERTEXT = e4 +PLAINTEXT = ? + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000100000000 +CIPHERTEXT = ae +PLAINTEXT = ? + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000080000000 +CIPHERTEXT = e9 +PLAINTEXT = ? + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000040000000 +CIPHERTEXT = df +PLAINTEXT = ? + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000020000000 +CIPHERTEXT = b1 +PLAINTEXT = ? + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000010000000 +CIPHERTEXT = fa +PLAINTEXT = ? + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000008000000 +CIPHERTEXT = ca +PLAINTEXT = ? + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000004000000 +CIPHERTEXT = 5e +PLAINTEXT = ? + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000002000000 +CIPHERTEXT = 81 +PLAINTEXT = ? + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000001000000 +CIPHERTEXT = 4d +PLAINTEXT = ? + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000800000 +CIPHERTEXT = 25 +PLAINTEXT = ? + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000400000 +CIPHERTEXT = ab +PLAINTEXT = ? + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000200000 +CIPHERTEXT = 79 +PLAINTEXT = ? + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000100000 +CIPHERTEXT = 86 +PLAINTEXT = ? + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000080000 +CIPHERTEXT = 8b +PLAINTEXT = ? + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000040000 +CIPHERTEXT = ea +PLAINTEXT = ? + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000020000 +CIPHERTEXT = ca +PLAINTEXT = ? + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000010000 +CIPHERTEXT = 8d +PLAINTEXT = ? + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000008000 +CIPHERTEXT = 10 +PLAINTEXT = ? + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000004000 +CIPHERTEXT = 5d +PLAINTEXT = ? + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000002000 +CIPHERTEXT = 1d +PLAINTEXT = ? + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000001000 +CIPHERTEXT = ce +PLAINTEXT = ? + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000800 +CIPHERTEXT = 84 +PLAINTEXT = ? + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000400 +CIPHERTEXT = e6 +PLAINTEXT = ? + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000200 +CIPHERTEXT = 48 +PLAINTEXT = ? + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000100 +CIPHERTEXT = dd +PLAINTEXT = ? + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000080 +CIPHERTEXT = 2f +PLAINTEXT = ? + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000040 +CIPHERTEXT = e0 +PLAINTEXT = ? + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000020 +CIPHERTEXT = 09 +PLAINTEXT = ? + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000010 +CIPHERTEXT = 5b +PLAINTEXT = ? + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000008 +CIPHERTEXT = cc +PLAINTEXT = ? + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000004 +CIPHERTEXT = d2 +PLAINTEXT = ? + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000002 +CIPHERTEXT = 06 +PLAINTEXT = ? + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000001 +CIPHERTEXT = 16 +PLAINTEXT = ? diff --git a/fips/testvectors/des/sample/CFB8permop.sam b/fips/testvectors/des/sample/CFB8permop.sam new file mode 100644 index 0000000000..e675177fe0 --- /dev/null +++ b/fips/testvectors/des/sample/CFB8permop.sam @@ -0,0 +1,392 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# PERMUTATION OPERATION - KAT for CFB8 +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 1046913489980131 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 1 +KEY = 1007103489988020 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 2 +KEY = 10071034c8980120 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 3 +KEY = 1046103489988020 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 4 +KEY = 1086911519190101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 5 +KEY = 1086911519580101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 6 +KEY = 5107b01519580101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 7 +KEY = 1007b01519190101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 8 +KEY = 3107915498080101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 9 +KEY = 3107919498080101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 10 +KEY = 10079115b9080140 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 11 +KEY = 3107911598080140 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 12 +KEY = 1007d01589980101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 13 +KEY = 9107911589980101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 14 +KEY = 9107d01589190101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 15 +KEY = 1007d01598980120 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 16 +KEY = 1007940498190101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 17 +KEY = 0107910491190401 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 18 +KEY = 0107910491190101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 19 +KEY = 0107940491190401 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 20 +KEY = 19079210981a0101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 21 +KEY = 1007911998190801 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 22 +KEY = 10079119981a0801 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 23 +KEY = 1007921098190101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 24 +KEY = 100791159819010b +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 25 +KEY = 1004801598190101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 26 +KEY = 1004801598190102 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 27 +KEY = 1004801598190108 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 28 +KEY = 1002911598100104 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 29 +KEY = 1002911598190104 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 30 +KEY = 1002911598100201 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 31 +KEY = 1002911698100101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + + +[DECRYPT] +COUNT = 0 +KEY = 1046913489980131 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 1 +KEY = 1007103489988020 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 2 +KEY = 10071034c8980120 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 3 +KEY = 1046103489988020 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 4 +KEY = 1086911519190101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 5 +KEY = 1086911519580101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 6 +KEY = 5107b01519580101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 7 +KEY = 1007b01519190101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 8 +KEY = 3107915498080101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 9 +KEY = 3107919498080101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 10 +KEY = 10079115b9080140 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 11 +KEY = 3107911598080140 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 12 +KEY = 1007d01589980101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 13 +KEY = 9107911589980101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 14 +KEY = 9107d01589190101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 15 +KEY = 1007d01598980120 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 16 +KEY = 1007940498190101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 17 +KEY = 0107910491190401 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 18 +KEY = 0107910491190101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 19 +KEY = 0107940491190401 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 20 +KEY = 19079210981a0101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 21 +KEY = 1007911998190801 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 22 +KEY = 10079119981a0801 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 23 +KEY = 1007921098190101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 24 +KEY = 100791159819010b +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 25 +KEY = 1004801598190101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 26 +KEY = 1004801598190102 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 27 +KEY = 1004801598190108 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 28 +KEY = 1002911598100104 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 29 +KEY = 1002911598190104 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 30 +KEY = 1002911598100201 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 31 +KEY = 1002911698100101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? diff --git a/fips/testvectors/des/sample/CFB8subtab.sam b/fips/testvectors/des/sample/CFB8subtab.sam new file mode 100644 index 0000000000..caf5bba5bb --- /dev/null +++ b/fips/testvectors/des/sample/CFB8subtab.sam @@ -0,0 +1,236 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# SUBSTITUTION TABLE - KAT for CFB8 +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 7ca110454a1a6e57 +IV = 01a1d6d039776742 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 1 +KEY = 0131d9619dc1376e +IV = 5cd54ca83def57da +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 2 +KEY = 07a1133e4a0b2686 +IV = 0248d43806f67172 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 3 +KEY = 3849674c2602319e +IV = 51454b582ddf440a +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 4 +KEY = 04b915ba43feb5b6 +IV = 42fd443059577fa2 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 5 +KEY = 0113b970fd34f2ce +IV = 059b5e0851cf143a +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 6 +KEY = 0170f175468fb5e6 +IV = 0756d8e0774761d2 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 7 +KEY = 43297fad38e373fe +IV = 762514b829bf486a +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 8 +KEY = 07a7137045da2a16 +IV = 3bdd119049372802 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 9 +KEY = 04689104c2fd3b2f +IV = 26955f6835af609a +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 10 +KEY = 37d06bb516cb7546 +IV = 164d5e404f275232 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 11 +KEY = 1f08260d1ac2465e +IV = 6b056e18759f5cca +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 12 +KEY = 584023641aba6176 +IV = 004bd6ef09176062 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 13 +KEY = 025816164629b007 +IV = 480d39006ee762f2 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 14 +KEY = 49793ebc79b3258f +IV = 437540c8698f3cfa +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 15 +KEY = 4fb05e1515ab73a7 +IV = 072d43a077075292 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 16 +KEY = 49e95d6d4ca229bf +IV = 02fe55778117f12a +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 17 +KEY = 018310dc409b26d6 +IV = 1d9d5c5018f728c2 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 18 +KEY = 1c587f1c13924fef +IV = 305532286d6f295a +PLAINTEXT = 00 +CIPHERTEXT = ? + + +[DECRYPT] +COUNT = 0 +KEY = 7ca110454a1a6e57 +IV = 01a1d6d039776742 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 1 +KEY = 0131d9619dc1376e +IV = 5cd54ca83def57da +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 2 +KEY = 07a1133e4a0b2686 +IV = 0248d43806f67172 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 3 +KEY = 3849674c2602319e +IV = 51454b582ddf440a +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 4 +KEY = 04b915ba43feb5b6 +IV = 42fd443059577fa2 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 5 +KEY = 0113b970fd34f2ce +IV = 059b5e0851cf143a +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 6 +KEY = 0170f175468fb5e6 +IV = 0756d8e0774761d2 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 7 +KEY = 43297fad38e373fe +IV = 762514b829bf486a +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 8 +KEY = 07a7137045da2a16 +IV = 3bdd119049372802 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 9 +KEY = 04689104c2fd3b2f +IV = 26955f6835af609a +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 10 +KEY = 37d06bb516cb7546 +IV = 164d5e404f275232 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 11 +KEY = 1f08260d1ac2465e +IV = 6b056e18759f5cca +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 12 +KEY = 584023641aba6176 +IV = 004bd6ef09176062 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 13 +KEY = 025816164629b007 +IV = 480d39006ee762f2 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 14 +KEY = 49793ebc79b3258f +IV = 437540c8698f3cfa +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 15 +KEY = 4fb05e1515ab73a7 +IV = 072d43a077075292 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 16 +KEY = 49e95d6d4ca229bf +IV = 02fe55778117f12a +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 17 +KEY = 018310dc409b26d6 +IV = 1d9d5c5018f728c2 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 18 +KEY = 1c587f1c13924fef +IV = 305532286d6f295a +CIPHERTEXT = 00 +PLAINTEXT = ? diff --git a/fips/testvectors/des/sample/CFB8varkey.sam b/fips/testvectors/des/sample/CFB8varkey.sam new file mode 100644 index 0000000000..d8fd5f7769 --- /dev/null +++ b/fips/testvectors/des/sample/CFB8varkey.sam @@ -0,0 +1,680 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# VARIABLE KEY - KAT for CFB8 +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 8001010101010101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 1 +KEY = 4001010101010101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 2 +KEY = 2001010101010101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 3 +KEY = 1001010101010101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 4 +KEY = 0801010101010101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 5 +KEY = 0401010101010101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 6 +KEY = 0201010101010101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 7 +KEY = 0180010101010101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 8 +KEY = 0140010101010101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 9 +KEY = 0120010101010101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 10 +KEY = 0110010101010101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 11 +KEY = 0108010101010101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 12 +KEY = 0104010101010101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 13 +KEY = 0102010101010101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 14 +KEY = 0101800101010101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 15 +KEY = 0101400101010101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 16 +KEY = 0101200101010101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 17 +KEY = 0101100101010101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 18 +KEY = 0101080101010101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 19 +KEY = 0101040101010101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 20 +KEY = 0101020101010101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 21 +KEY = 0101018001010101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 22 +KEY = 0101014001010101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 23 +KEY = 0101012001010101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 24 +KEY = 0101011001010101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 25 +KEY = 0101010801010101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 26 +KEY = 0101010401010101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 27 +KEY = 0101010201010101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 28 +KEY = 0101010180010101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 29 +KEY = 0101010140010101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 30 +KEY = 0101010120010101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 31 +KEY = 0101010110010101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 32 +KEY = 0101010108010101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 33 +KEY = 0101010104010101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 34 +KEY = 0101010102010101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 35 +KEY = 0101010101800101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 36 +KEY = 0101010101400101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 37 +KEY = 0101010101200101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 38 +KEY = 0101010101100101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 39 +KEY = 0101010101080101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 40 +KEY = 0101010101040101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 41 +KEY = 0101010101020101 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 42 +KEY = 0101010101018001 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 43 +KEY = 0101010101014001 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 44 +KEY = 0101010101012001 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 45 +KEY = 0101010101011001 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 46 +KEY = 0101010101010801 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 47 +KEY = 0101010101010401 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 48 +KEY = 0101010101010201 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 49 +KEY = 0101010101010180 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 50 +KEY = 0101010101010140 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 51 +KEY = 0101010101010120 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 52 +KEY = 0101010101010110 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 53 +KEY = 0101010101010108 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 54 +KEY = 0101010101010104 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 55 +KEY = 0101010101010102 +IV = 0000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + + +[DECRYPT] +COUNT = 0 +KEY = 8001010101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 1 +KEY = 4001010101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 2 +KEY = 2001010101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 3 +KEY = 1001010101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 4 +KEY = 0801010101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 5 +KEY = 0401010101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 6 +KEY = 0201010101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 7 +KEY = 0180010101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 8 +KEY = 0140010101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 9 +KEY = 0120010101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 10 +KEY = 0110010101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 11 +KEY = 0108010101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 12 +KEY = 0104010101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 13 +KEY = 0102010101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 14 +KEY = 0101800101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 15 +KEY = 0101400101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 16 +KEY = 0101200101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 17 +KEY = 0101100101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 18 +KEY = 0101080101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 19 +KEY = 0101040101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 20 +KEY = 0101020101010101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 21 +KEY = 0101018001010101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 22 +KEY = 0101014001010101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 23 +KEY = 0101012001010101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 24 +KEY = 0101011001010101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 25 +KEY = 0101010801010101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 26 +KEY = 0101010401010101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 27 +KEY = 0101010201010101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 28 +KEY = 0101010180010101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 29 +KEY = 0101010140010101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 30 +KEY = 0101010120010101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 31 +KEY = 0101010110010101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 32 +KEY = 0101010108010101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 33 +KEY = 0101010104010101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 34 +KEY = 0101010102010101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 35 +KEY = 0101010101800101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 36 +KEY = 0101010101400101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 37 +KEY = 0101010101200101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 38 +KEY = 0101010101100101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 39 +KEY = 0101010101080101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 40 +KEY = 0101010101040101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 41 +KEY = 0101010101020101 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 42 +KEY = 0101010101018001 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 43 +KEY = 0101010101014001 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 44 +KEY = 0101010101012001 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 45 +KEY = 0101010101011001 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 46 +KEY = 0101010101010801 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 47 +KEY = 0101010101010401 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 48 +KEY = 0101010101010201 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 49 +KEY = 0101010101010180 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 50 +KEY = 0101010101010140 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 51 +KEY = 0101010101010120 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 52 +KEY = 0101010101010110 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 53 +KEY = 0101010101010108 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 54 +KEY = 0101010101010104 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 55 +KEY = 0101010101010102 +IV = 0000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? diff --git a/fips/testvectors/des/sample/CFB8vartext.sam b/fips/testvectors/des/sample/CFB8vartext.sam new file mode 100644 index 0000000000..6e807e95b4 --- /dev/null +++ b/fips/testvectors/des/sample/CFB8vartext.sam @@ -0,0 +1,776 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# VARIABLE PLAINTEXT/CIPHERTEXT - KAT for CFB8 +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 8000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 1 +KEY = 0101010101010101 +IV = 4000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 2 +KEY = 0101010101010101 +IV = 2000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 3 +KEY = 0101010101010101 +IV = 1000000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 4 +KEY = 0101010101010101 +IV = 0800000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 5 +KEY = 0101010101010101 +IV = 0400000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 6 +KEY = 0101010101010101 +IV = 0200000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 7 +KEY = 0101010101010101 +IV = 0100000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 8 +KEY = 0101010101010101 +IV = 0080000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 9 +KEY = 0101010101010101 +IV = 0040000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 10 +KEY = 0101010101010101 +IV = 0020000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 11 +KEY = 0101010101010101 +IV = 0010000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 12 +KEY = 0101010101010101 +IV = 0008000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 13 +KEY = 0101010101010101 +IV = 0004000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 14 +KEY = 0101010101010101 +IV = 0002000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 15 +KEY = 0101010101010101 +IV = 0001000000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000800000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000400000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000200000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000100000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000080000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000040000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000020000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000010000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000008000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000004000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000002000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000001000000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000800000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000400000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000200000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000100000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000080000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000040000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000020000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000010000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000008000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000004000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000002000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000001000000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000800000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000400000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000200000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000100000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000080000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000040000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000020000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000010000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000008000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000004000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000002000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000001000 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000800 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000400 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000200 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000100 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000080 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000040 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000020 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000010 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000008 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000004 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000002 +PLAINTEXT = 00 +CIPHERTEXT = ? + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000001 +PLAINTEXT = 00 +CIPHERTEXT = ? + + +[DECRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 8000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 1 +KEY = 0101010101010101 +IV = 4000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 2 +KEY = 0101010101010101 +IV = 2000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 3 +KEY = 0101010101010101 +IV = 1000000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 4 +KEY = 0101010101010101 +IV = 0800000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 5 +KEY = 0101010101010101 +IV = 0400000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 6 +KEY = 0101010101010101 +IV = 0200000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 7 +KEY = 0101010101010101 +IV = 0100000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 8 +KEY = 0101010101010101 +IV = 0080000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 9 +KEY = 0101010101010101 +IV = 0040000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 10 +KEY = 0101010101010101 +IV = 0020000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 11 +KEY = 0101010101010101 +IV = 0010000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 12 +KEY = 0101010101010101 +IV = 0008000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 13 +KEY = 0101010101010101 +IV = 0004000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 14 +KEY = 0101010101010101 +IV = 0002000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 15 +KEY = 0101010101010101 +IV = 0001000000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000800000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000400000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000200000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000100000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000080000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000040000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000020000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000010000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000008000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000004000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000002000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000001000000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000800000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000400000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000200000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000100000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000080000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000040000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000020000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000010000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000008000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000004000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000002000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000001000000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000800000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000400000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000200000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000100000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000080000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000040000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000020000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000010000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000008000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000004000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000002000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000001000 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000800 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000400 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000200 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000100 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000080 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000040 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000020 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000010 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000008 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000004 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000002 +CIPHERTEXT = 00 +PLAINTEXT = ? + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000001 +CIPHERTEXT = 00 +PLAINTEXT = ? diff --git a/fips/testvectors/des/sample/ECBMMT.sam b/fips/testvectors/des/sample/ECBMMT.sam new file mode 100644 index 0000000000..08e4207e49 --- /dev/null +++ b/fips/testvectors/des/sample/ECBMMT.sam @@ -0,0 +1,40 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# DES Multi Block Message Test for ECB +# State : Encrypt and Decrypt +# Tue Jun 24 03:12:12 PM + +[ENCRYPT] + +COUNT = 0 +KEY = 91e601d59d64d5a4 +PLAINTEXT = 078f91710eace1c8 +CIPHERTEXT = 030e4cd29e23e245 + +COUNT = 1 +KEY = 4997615820ae85f2 +PLAINTEXT = e06afca4c971e04a1605f4e50440740b +CIPHERTEXT = 91e958cd02b83a7c3f1d00d897d6fdb9 + +COUNT = 2 +KEY = d3fd4ae6a8108afb +PLAINTEXT = b577fcc169bc5195b3c9a9545c55aa9eda1212c9723ef81d +CIPHERTEXT = 2e855dd7652d85c9160eec5502c5950bbbcd176f1a5dcf33 + +[DECRYPT] + +COUNT = 0 +KEY = 9befba6dc84f1a01 +CIPHERTEXT = 7f3cc2a97ba1cc29 +PLAINTEXT = b7be131ea64a161e + +COUNT = 1 +KEY = 014abaea8c01d049 +CIPHERTEXT = 7c80b93386ba4cfaf274622757ba6bbf +PLAINTEXT = 505694144ab787f894eed72e3b9d9b09 + +COUNT = 2 +KEY = 8c5e32c410a14554 +CIPHERTEXT = 0f9d3071af25a14211c5b47380a9b4b24af9f88722ad69cf +PLAINTEXT = feb83e9b222813216deb7b750f8d2a19265f5f5d411b8b8f + diff --git a/fips/testvectors/des/sample/ECBMonte.sam b/fips/testvectors/des/sample/ECBMonte.sam new file mode 100644 index 0000000000..ba0ff34365 --- /dev/null +++ b/fips/testvectors/des/sample/ECBMonte.sam @@ -0,0 +1,50 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# DES Monte Carlo (Modes) Test for ECB +# State : Encrypt and Decrypt +# Tue Jun 24 03:12:12 PM + +[ENCRYPT] + +COUNT = 0 +KEY = 85ec01545e169b7c +PLAINTEXT = a58819aa56a768fa +CIPHERTEXT = b92e1cd952dc22cf + +COUNT = 1 +KEY = 3dc21c8c0dcbb9b3 +PLAINTEXT = b92e1cd952dc22cf +CIPHERTEXT = c2d8fa4afcb8e548 + +COUNT = 2 +KEY = fe1ae6c7f1735dfb +PLAINTEXT = c2d8fa4afcb8e548 +CIPHERTEXT = c8f24f820dce8c62 + +COUNT = 3 +KEY = 37e9a845fdbcd098 +PLAINTEXT = c8f24f820dce8c62 +CIPHERTEXT = 4fb549b9a153054d + +[DECRYPT] + +COUNT = 0 +KEY = 2a4a34049bb9f4e9 +CIPHERTEXT = ccb58233c54a7e4b +PLAINTEXT = 39e957797c960752 + +COUNT = 1 +KEY = 13a2627ce62ff2ba +CIPHERTEXT = 39e957797c960752 +PLAINTEXT = a8bc0caae7b9cc6b + +COUNT = 2 +KEY = ba1f6ed601973ed0 +CIPHERTEXT = a8bc0caae7b9cc6b +PLAINTEXT = a43ec7e5226124d2 + +COUNT = 3 +KEY = 1f20a83223f71a02 +CIPHERTEXT = a43ec7e5226124d2 +PLAINTEXT = a025a13e84a6770d + diff --git a/fips/testvectors/des/sample/ECBinvperm.sam b/fips/testvectors/des/sample/ECBinvperm.sam new file mode 100644 index 0000000000..435e1b652b --- /dev/null +++ b/fips/testvectors/des/sample/ECBinvperm.sam @@ -0,0 +1,648 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# INVERSE PERMUTATION - KAT for ECB +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 0101010101010101 +PLAINTEXT = 95f8a5e5dd31d900 +CIPHERTEXT = ? + +COUNT = 1 +KEY = 0101010101010101 +PLAINTEXT = dd7f121ca5015619 +CIPHERTEXT = ? + +COUNT = 2 +KEY = 0101010101010101 +PLAINTEXT = 2e8653104f3834ea +CIPHERTEXT = ? + +COUNT = 3 +KEY = 0101010101010101 +PLAINTEXT = 4bd388ff6cd81d4f +CIPHERTEXT = ? + +COUNT = 4 +KEY = 0101010101010101 +PLAINTEXT = 20b9e767b2fb1456 +CIPHERTEXT = ? + +COUNT = 5 +KEY = 0101010101010101 +PLAINTEXT = 55579380d77138ef +CIPHERTEXT = ? + +COUNT = 6 +KEY = 0101010101010101 +PLAINTEXT = 6cc5defaaf04512f +CIPHERTEXT = ? + +COUNT = 7 +KEY = 0101010101010101 +PLAINTEXT = 0d9f279ba5d87260 +CIPHERTEXT = ? + +COUNT = 8 +KEY = 0101010101010101 +PLAINTEXT = d9031b0271bd5a0a +CIPHERTEXT = ? + +COUNT = 9 +KEY = 0101010101010101 +PLAINTEXT = 424250b37c3dd951 +CIPHERTEXT = ? + +COUNT = 10 +KEY = 0101010101010101 +PLAINTEXT = b8061b7ecd9a21e5 +CIPHERTEXT = ? + +COUNT = 11 +KEY = 0101010101010101 +PLAINTEXT = f15d0f286b65bd28 +CIPHERTEXT = ? + +COUNT = 12 +KEY = 0101010101010101 +PLAINTEXT = add0cc8d6e5deba1 +CIPHERTEXT = ? + +COUNT = 13 +KEY = 0101010101010101 +PLAINTEXT = e6d5f82752ad63d1 +CIPHERTEXT = ? + +COUNT = 14 +KEY = 0101010101010101 +PLAINTEXT = ecbfe3bd3f591a5e +CIPHERTEXT = ? + +COUNT = 15 +KEY = 0101010101010101 +PLAINTEXT = f356834379d165cd +CIPHERTEXT = ? + +COUNT = 16 +KEY = 0101010101010101 +PLAINTEXT = 2b9f982f20037fa9 +CIPHERTEXT = ? + +COUNT = 17 +KEY = 0101010101010101 +PLAINTEXT = 889de068a16f0be6 +CIPHERTEXT = ? + +COUNT = 18 +KEY = 0101010101010101 +PLAINTEXT = e19e275d846a1298 +CIPHERTEXT = ? + +COUNT = 19 +KEY = 0101010101010101 +PLAINTEXT = 329a8ed523d71aec +CIPHERTEXT = ? + +COUNT = 20 +KEY = 0101010101010101 +PLAINTEXT = e7fce22557d23c97 +CIPHERTEXT = ? + +COUNT = 21 +KEY = 0101010101010101 +PLAINTEXT = 12a9f5817ff2d65d +CIPHERTEXT = ? + +COUNT = 22 +KEY = 0101010101010101 +PLAINTEXT = a484c3ad38dc9c19 +CIPHERTEXT = ? + +COUNT = 23 +KEY = 0101010101010101 +PLAINTEXT = fbe00a8a1ef8ad72 +CIPHERTEXT = ? + +COUNT = 24 +KEY = 0101010101010101 +PLAINTEXT = 750d079407521363 +CIPHERTEXT = ? + +COUNT = 25 +KEY = 0101010101010101 +PLAINTEXT = 64feed9c724c2faf +CIPHERTEXT = ? + +COUNT = 26 +KEY = 0101010101010101 +PLAINTEXT = f02b263b328e2b60 +CIPHERTEXT = ? + +COUNT = 27 +KEY = 0101010101010101 +PLAINTEXT = 9d64555a9a10b852 +CIPHERTEXT = ? + +COUNT = 28 +KEY = 0101010101010101 +PLAINTEXT = d106ff0bed5255d7 +CIPHERTEXT = ? + +COUNT = 29 +KEY = 0101010101010101 +PLAINTEXT = e1652c6b138c64a5 +CIPHERTEXT = ? + +COUNT = 30 +KEY = 0101010101010101 +PLAINTEXT = e428581186ec8f46 +CIPHERTEXT = ? + +COUNT = 31 +KEY = 0101010101010101 +PLAINTEXT = aeb5f5ede22d1a36 +CIPHERTEXT = ? + +COUNT = 32 +KEY = 0101010101010101 +PLAINTEXT = e943d7568aec0c5c +CIPHERTEXT = ? + +COUNT = 33 +KEY = 0101010101010101 +PLAINTEXT = df98c8276f54b04b +CIPHERTEXT = ? + +COUNT = 34 +KEY = 0101010101010101 +PLAINTEXT = b160e4680f6c696f +CIPHERTEXT = ? + +COUNT = 35 +KEY = 0101010101010101 +PLAINTEXT = fa0752b07d9c4ab8 +CIPHERTEXT = ? + +COUNT = 36 +KEY = 0101010101010101 +PLAINTEXT = ca3a2b036dbc8502 +CIPHERTEXT = ? + +COUNT = 37 +KEY = 0101010101010101 +PLAINTEXT = 5e0905517bb59bcf +CIPHERTEXT = ? + +COUNT = 38 +KEY = 0101010101010101 +PLAINTEXT = 814eeb3b91d90726 +CIPHERTEXT = ? + +COUNT = 39 +KEY = 0101010101010101 +PLAINTEXT = 4d49db1532919c9f +CIPHERTEXT = ? + +COUNT = 40 +KEY = 0101010101010101 +PLAINTEXT = 25eb5fc3f8cf0621 +CIPHERTEXT = ? + +COUNT = 41 +KEY = 0101010101010101 +PLAINTEXT = ab6a20c0620d1c6f +CIPHERTEXT = ? + +COUNT = 42 +KEY = 0101010101010101 +PLAINTEXT = 79e90dbc98f92cca +CIPHERTEXT = ? + +COUNT = 43 +KEY = 0101010101010101 +PLAINTEXT = 866ecedd8072bb0e +CIPHERTEXT = ? + +COUNT = 44 +KEY = 0101010101010101 +PLAINTEXT = 8b54536f2f3e64a8 +CIPHERTEXT = ? + +COUNT = 45 +KEY = 0101010101010101 +PLAINTEXT = ea51d3975595b86b +CIPHERTEXT = ? + +COUNT = 46 +KEY = 0101010101010101 +PLAINTEXT = caffc6ac4542de31 +CIPHERTEXT = ? + +COUNT = 47 +KEY = 0101010101010101 +PLAINTEXT = 8dd45a2ddf90796c +CIPHERTEXT = ? + +COUNT = 48 +KEY = 0101010101010101 +PLAINTEXT = 1029d55e880ec2d0 +CIPHERTEXT = ? + +COUNT = 49 +KEY = 0101010101010101 +PLAINTEXT = 5d86cb23639dbea9 +CIPHERTEXT = ? + +COUNT = 50 +KEY = 0101010101010101 +PLAINTEXT = 1d1ca853ae7c0c5f +CIPHERTEXT = ? + +COUNT = 51 +KEY = 0101010101010101 +PLAINTEXT = ce332329248f3228 +CIPHERTEXT = ? + +COUNT = 52 +KEY = 0101010101010101 +PLAINTEXT = 8405d1abe24fb942 +CIPHERTEXT = ? + +COUNT = 53 +KEY = 0101010101010101 +PLAINTEXT = e643d78090ca4207 +CIPHERTEXT = ? + +COUNT = 54 +KEY = 0101010101010101 +PLAINTEXT = 48221b9937748a23 +CIPHERTEXT = ? + +COUNT = 55 +KEY = 0101010101010101 +PLAINTEXT = dd7c0bbd61fafd54 +CIPHERTEXT = ? + +COUNT = 56 +KEY = 0101010101010101 +PLAINTEXT = 2fbc291a570db5c4 +CIPHERTEXT = ? + +COUNT = 57 +KEY = 0101010101010101 +PLAINTEXT = e07c30d7e4e26e12 +CIPHERTEXT = ? + +COUNT = 58 +KEY = 0101010101010101 +PLAINTEXT = 0953e2258e8e90a1 +CIPHERTEXT = ? + +COUNT = 59 +KEY = 0101010101010101 +PLAINTEXT = 5b711bc4ceebf2ee +CIPHERTEXT = ? + +COUNT = 60 +KEY = 0101010101010101 +PLAINTEXT = cc083f1e6d9e85f6 +CIPHERTEXT = ? + +COUNT = 61 +KEY = 0101010101010101 +PLAINTEXT = d2fd8867d50d2dfe +CIPHERTEXT = ? + +COUNT = 62 +KEY = 0101010101010101 +PLAINTEXT = 06e7ea22ce92708f +CIPHERTEXT = ? + +COUNT = 63 +KEY = 0101010101010101 +PLAINTEXT = 166b40b44aba4bd6 +CIPHERTEXT = ? + + +[DECRYPT] +COUNT = 0 +KEY = 0101010101010101 +CIPHERTEXT = 8000000000000000 +PLAINTEXT = ? + +COUNT = 1 +KEY = 0101010101010101 +CIPHERTEXT = 4000000000000000 +PLAINTEXT = ? + +COUNT = 2 +KEY = 0101010101010101 +CIPHERTEXT = 2000000000000000 +PLAINTEXT = ? + +COUNT = 3 +KEY = 0101010101010101 +CIPHERTEXT = 1000000000000000 +PLAINTEXT = ? + +COUNT = 4 +KEY = 0101010101010101 +CIPHERTEXT = 0800000000000000 +PLAINTEXT = ? + +COUNT = 5 +KEY = 0101010101010101 +CIPHERTEXT = 0400000000000000 +PLAINTEXT = ? + +COUNT = 6 +KEY = 0101010101010101 +CIPHERTEXT = 0200000000000000 +PLAINTEXT = ? + +COUNT = 7 +KEY = 0101010101010101 +CIPHERTEXT = 0100000000000000 +PLAINTEXT = ? + +COUNT = 8 +KEY = 0101010101010101 +CIPHERTEXT = 0080000000000000 +PLAINTEXT = ? + +COUNT = 9 +KEY = 0101010101010101 +CIPHERTEXT = 0040000000000000 +PLAINTEXT = ? + +COUNT = 10 +KEY = 0101010101010101 +CIPHERTEXT = 0020000000000000 +PLAINTEXT = ? + +COUNT = 11 +KEY = 0101010101010101 +CIPHERTEXT = 0010000000000000 +PLAINTEXT = ? + +COUNT = 12 +KEY = 0101010101010101 +CIPHERTEXT = 0008000000000000 +PLAINTEXT = ? + +COUNT = 13 +KEY = 0101010101010101 +CIPHERTEXT = 0004000000000000 +PLAINTEXT = ? + +COUNT = 14 +KEY = 0101010101010101 +CIPHERTEXT = 0002000000000000 +PLAINTEXT = ? + +COUNT = 15 +KEY = 0101010101010101 +CIPHERTEXT = 0001000000000000 +PLAINTEXT = ? + +COUNT = 16 +KEY = 0101010101010101 +CIPHERTEXT = 0000800000000000 +PLAINTEXT = ? + +COUNT = 17 +KEY = 0101010101010101 +CIPHERTEXT = 0000400000000000 +PLAINTEXT = ? + +COUNT = 18 +KEY = 0101010101010101 +CIPHERTEXT = 0000200000000000 +PLAINTEXT = ? + +COUNT = 19 +KEY = 0101010101010101 +CIPHERTEXT = 0000100000000000 +PLAINTEXT = ? + +COUNT = 20 +KEY = 0101010101010101 +CIPHERTEXT = 0000080000000000 +PLAINTEXT = ? + +COUNT = 21 +KEY = 0101010101010101 +CIPHERTEXT = 0000040000000000 +PLAINTEXT = ? + +COUNT = 22 +KEY = 0101010101010101 +CIPHERTEXT = 0000020000000000 +PLAINTEXT = ? + +COUNT = 23 +KEY = 0101010101010101 +CIPHERTEXT = 0000010000000000 +PLAINTEXT = ? + +COUNT = 24 +KEY = 0101010101010101 +CIPHERTEXT = 0000008000000000 +PLAINTEXT = ? + +COUNT = 25 +KEY = 0101010101010101 +CIPHERTEXT = 0000004000000000 +PLAINTEXT = ? + +COUNT = 26 +KEY = 0101010101010101 +CIPHERTEXT = 0000002000000000 +PLAINTEXT = ? + +COUNT = 27 +KEY = 0101010101010101 +CIPHERTEXT = 0000001000000000 +PLAINTEXT = ? + +COUNT = 28 +KEY = 0101010101010101 +CIPHERTEXT = 0000000800000000 +PLAINTEXT = ? + +COUNT = 29 +KEY = 0101010101010101 +CIPHERTEXT = 0000000400000000 +PLAINTEXT = ? + +COUNT = 30 +KEY = 0101010101010101 +CIPHERTEXT = 0000000200000000 +PLAINTEXT = ? + +COUNT = 31 +KEY = 0101010101010101 +CIPHERTEXT = 0000000100000000 +PLAINTEXT = ? + +COUNT = 32 +KEY = 0101010101010101 +CIPHERTEXT = 0000000080000000 +PLAINTEXT = ? + +COUNT = 33 +KEY = 0101010101010101 +CIPHERTEXT = 0000000040000000 +PLAINTEXT = ? + +COUNT = 34 +KEY = 0101010101010101 +CIPHERTEXT = 0000000020000000 +PLAINTEXT = ? + +COUNT = 35 +KEY = 0101010101010101 +CIPHERTEXT = 0000000010000000 +PLAINTEXT = ? + +COUNT = 36 +KEY = 0101010101010101 +CIPHERTEXT = 0000000008000000 +PLAINTEXT = ? + +COUNT = 37 +KEY = 0101010101010101 +CIPHERTEXT = 0000000004000000 +PLAINTEXT = ? + +COUNT = 38 +KEY = 0101010101010101 +CIPHERTEXT = 0000000002000000 +PLAINTEXT = ? + +COUNT = 39 +KEY = 0101010101010101 +CIPHERTEXT = 0000000001000000 +PLAINTEXT = ? + +COUNT = 40 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000800000 +PLAINTEXT = ? + +COUNT = 41 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000400000 +PLAINTEXT = ? + +COUNT = 42 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000200000 +PLAINTEXT = ? + +COUNT = 43 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000100000 +PLAINTEXT = ? + +COUNT = 44 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000080000 +PLAINTEXT = ? + +COUNT = 45 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000040000 +PLAINTEXT = ? + +COUNT = 46 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000020000 +PLAINTEXT = ? + +COUNT = 47 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000010000 +PLAINTEXT = ? + +COUNT = 48 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000008000 +PLAINTEXT = ? + +COUNT = 49 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000004000 +PLAINTEXT = ? + +COUNT = 50 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000002000 +PLAINTEXT = ? + +COUNT = 51 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000001000 +PLAINTEXT = ? + +COUNT = 52 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000000800 +PLAINTEXT = ? + +COUNT = 53 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000000400 +PLAINTEXT = ? + +COUNT = 54 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000000200 +PLAINTEXT = ? + +COUNT = 55 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000000100 +PLAINTEXT = ? + +COUNT = 56 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000000080 +PLAINTEXT = ? + +COUNT = 57 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000000040 +PLAINTEXT = ? + +COUNT = 58 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000000020 +PLAINTEXT = ? + +COUNT = 59 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000000010 +PLAINTEXT = ? + +COUNT = 60 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000000008 +PLAINTEXT = ? + +COUNT = 61 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000000004 +PLAINTEXT = ? + +COUNT = 62 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000000002 +PLAINTEXT = ? + +COUNT = 63 +KEY = 0101010101010101 +CIPHERTEXT = 0000000000000001 +PLAINTEXT = ? diff --git a/fips/testvectors/des/sample/ECBpermop.sam b/fips/testvectors/des/sample/ECBpermop.sam new file mode 100644 index 0000000000..f96613aeb1 --- /dev/null +++ b/fips/testvectors/des/sample/ECBpermop.sam @@ -0,0 +1,328 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# PERMUTATION OPERATION - KAT for ECB +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 1046913489980131 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 1 +KEY = 1007103489988020 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 2 +KEY = 10071034c8980120 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 3 +KEY = 1046103489988020 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 4 +KEY = 1086911519190101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 5 +KEY = 1086911519580101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 6 +KEY = 5107b01519580101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 7 +KEY = 1007b01519190101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 8 +KEY = 3107915498080101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 9 +KEY = 3107919498080101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 10 +KEY = 10079115b9080140 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 11 +KEY = 3107911598080140 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 12 +KEY = 1007d01589980101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 13 +KEY = 9107911589980101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 14 +KEY = 9107d01589190101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 15 +KEY = 1007d01598980120 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 16 +KEY = 1007940498190101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 17 +KEY = 0107910491190401 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 18 +KEY = 0107910491190101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 19 +KEY = 0107940491190401 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 20 +KEY = 19079210981a0101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 21 +KEY = 1007911998190801 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 22 +KEY = 10079119981a0801 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 23 +KEY = 1007921098190101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 24 +KEY = 100791159819010b +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 25 +KEY = 1004801598190101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 26 +KEY = 1004801598190102 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 27 +KEY = 1004801598190108 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 28 +KEY = 1002911598100104 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 29 +KEY = 1002911598190104 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 30 +KEY = 1002911598100201 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 31 +KEY = 1002911698100101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + + +[DECRYPT] +COUNT = 0 +KEY = 1046913489980131 +CIPHERTEXT = 88d55e54f54c97b4 +PLAINTEXT = ? + +COUNT = 1 +KEY = 1007103489988020 +CIPHERTEXT = 0c0cc00c83ea48fd +PLAINTEXT = ? + +COUNT = 2 +KEY = 10071034c8980120 +CIPHERTEXT = 83bc8ef3a6570183 +PLAINTEXT = ? + +COUNT = 3 +KEY = 1046103489988020 +CIPHERTEXT = df725dcad94ea2e9 +PLAINTEXT = ? + +COUNT = 4 +KEY = 1086911519190101 +CIPHERTEXT = e652b53b550be8b0 +PLAINTEXT = ? + +COUNT = 5 +KEY = 1086911519580101 +CIPHERTEXT = af527120c485cbb0 +PLAINTEXT = ? + +COUNT = 6 +KEY = 5107b01519580101 +CIPHERTEXT = 0f04ce393db926d5 +PLAINTEXT = ? + +COUNT = 7 +KEY = 1007b01519190101 +CIPHERTEXT = c9f00ffc74079067 +PLAINTEXT = ? + +COUNT = 8 +KEY = 3107915498080101 +CIPHERTEXT = 7cfd82a593252b4e +PLAINTEXT = ? + +COUNT = 9 +KEY = 3107919498080101 +CIPHERTEXT = cb49a2f9e91363e3 +PLAINTEXT = ? + +COUNT = 10 +KEY = 10079115b9080140 +CIPHERTEXT = 00b588be70d23f56 +PLAINTEXT = ? + +COUNT = 11 +KEY = 3107911598080140 +CIPHERTEXT = 406a9a6ab43399ae +PLAINTEXT = ? + +COUNT = 12 +KEY = 1007d01589980101 +CIPHERTEXT = 6cb773611dca9ada +PLAINTEXT = ? + +COUNT = 13 +KEY = 9107911589980101 +CIPHERTEXT = 67fd21c17dbb5d70 +PLAINTEXT = ? + +COUNT = 14 +KEY = 9107d01589190101 +CIPHERTEXT = 9592cb4110430787 +PLAINTEXT = ? + +COUNT = 15 +KEY = 1007d01598980120 +CIPHERTEXT = a6b7ff68a318ddd3 +PLAINTEXT = ? + +COUNT = 16 +KEY = 1007940498190101 +CIPHERTEXT = 4d102196c914ca16 +PLAINTEXT = ? + +COUNT = 17 +KEY = 0107910491190401 +CIPHERTEXT = 2dfa9f4573594965 +PLAINTEXT = ? + +COUNT = 18 +KEY = 0107910491190101 +CIPHERTEXT = b46604816c0e0774 +PLAINTEXT = ? + +COUNT = 19 +KEY = 0107940491190401 +CIPHERTEXT = 6e7e6221a4f34e87 +PLAINTEXT = ? + +COUNT = 20 +KEY = 19079210981a0101 +CIPHERTEXT = aa85e74643233199 +PLAINTEXT = ? + +COUNT = 21 +KEY = 1007911998190801 +CIPHERTEXT = 2e5a19db4d1962d6 +PLAINTEXT = ? + +COUNT = 22 +KEY = 10079119981a0801 +CIPHERTEXT = 23a866a809d30894 +PLAINTEXT = ? + +COUNT = 23 +KEY = 1007921098190101 +CIPHERTEXT = d812d961f017d320 +PLAINTEXT = ? + +COUNT = 24 +KEY = 100791159819010b +CIPHERTEXT = 055605816e58608f +PLAINTEXT = ? + +COUNT = 25 +KEY = 1004801598190101 +CIPHERTEXT = abd88e8b1b7716f1 +PLAINTEXT = ? + +COUNT = 26 +KEY = 1004801598190102 +CIPHERTEXT = 537ac95be69da1e1 +PLAINTEXT = ? + +COUNT = 27 +KEY = 1004801598190108 +CIPHERTEXT = aed0f6ae3c25cdd8 +PLAINTEXT = ? + +COUNT = 28 +KEY = 1002911598100104 +CIPHERTEXT = b3e35a5ee53e7b8d +PLAINTEXT = ? + +COUNT = 29 +KEY = 1002911598190104 +CIPHERTEXT = 61c79c71921a2ef8 +PLAINTEXT = ? + +COUNT = 30 +KEY = 1002911598100201 +CIPHERTEXT = e2f5728f0995013c +PLAINTEXT = ? + +COUNT = 31 +KEY = 1002911698100101 +CIPHERTEXT = 1aeac39a61f0a464 +PLAINTEXT = ? diff --git a/fips/testvectors/des/sample/ECBsubtab.sam b/fips/testvectors/des/sample/ECBsubtab.sam new file mode 100644 index 0000000000..ffab4b0d84 --- /dev/null +++ b/fips/testvectors/des/sample/ECBsubtab.sam @@ -0,0 +1,198 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# SUBSTITUTION TABLE - KAT for ECB +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 7ca110454a1a6e57 +PLAINTEXT = 01a1d6d039776742 +CIPHERTEXT = ? + +COUNT = 1 +KEY = 0131d9619dc1376e +PLAINTEXT = 5cd54ca83def57da +CIPHERTEXT = ? + +COUNT = 2 +KEY = 07a1133e4a0b2686 +PLAINTEXT = 0248d43806f67172 +CIPHERTEXT = ? + +COUNT = 3 +KEY = 3849674c2602319e +PLAINTEXT = 51454b582ddf440a +CIPHERTEXT = ? + +COUNT = 4 +KEY = 04b915ba43feb5b6 +PLAINTEXT = 42fd443059577fa2 +CIPHERTEXT = ? + +COUNT = 5 +KEY = 0113b970fd34f2ce +PLAINTEXT = 059b5e0851cf143a +CIPHERTEXT = ? + +COUNT = 6 +KEY = 0170f175468fb5e6 +PLAINTEXT = 0756d8e0774761d2 +CIPHERTEXT = ? + +COUNT = 7 +KEY = 43297fad38e373fe +PLAINTEXT = 762514b829bf486a +CIPHERTEXT = ? + +COUNT = 8 +KEY = 07a7137045da2a16 +PLAINTEXT = 3bdd119049372802 +CIPHERTEXT = ? + +COUNT = 9 +KEY = 04689104c2fd3b2f +PLAINTEXT = 26955f6835af609a +CIPHERTEXT = ? + +COUNT = 10 +KEY = 37d06bb516cb7546 +PLAINTEXT = 164d5e404f275232 +CIPHERTEXT = ? + +COUNT = 11 +KEY = 1f08260d1ac2465e +PLAINTEXT = 6b056e18759f5cca +CIPHERTEXT = ? + +COUNT = 12 +KEY = 584023641aba6176 +PLAINTEXT = 004bd6ef09176062 +CIPHERTEXT = ? + +COUNT = 13 +KEY = 025816164629b007 +PLAINTEXT = 480d39006ee762f2 +CIPHERTEXT = ? + +COUNT = 14 +KEY = 49793ebc79b3258f +PLAINTEXT = 437540c8698f3cfa +CIPHERTEXT = ? + +COUNT = 15 +KEY = 4fb05e1515ab73a7 +PLAINTEXT = 072d43a077075292 +CIPHERTEXT = ? + +COUNT = 16 +KEY = 49e95d6d4ca229bf +PLAINTEXT = 02fe55778117f12a +CIPHERTEXT = ? + +COUNT = 17 +KEY = 018310dc409b26d6 +PLAINTEXT = 1d9d5c5018f728c2 +CIPHERTEXT = ? + +COUNT = 18 +KEY = 1c587f1c13924fef +PLAINTEXT = 305532286d6f295a +CIPHERTEXT = ? + + +[DECRYPT] +COUNT = 0 +KEY = 7ca110454a1a6e57 +CIPHERTEXT = 690f5b0d9a26939b +PLAINTEXT = ? + +COUNT = 1 +KEY = 0131d9619dc1376e +CIPHERTEXT = 7a389d10354bd271 +PLAINTEXT = ? + +COUNT = 2 +KEY = 07a1133e4a0b2686 +CIPHERTEXT = 868ebb51cab4599a +PLAINTEXT = ? + +COUNT = 3 +KEY = 3849674c2602319e +CIPHERTEXT = 7178876e01f19b2a +PLAINTEXT = ? + +COUNT = 4 +KEY = 04b915ba43feb5b6 +CIPHERTEXT = af37fb421f8c4095 +PLAINTEXT = ? + +COUNT = 5 +KEY = 0113b970fd34f2ce +CIPHERTEXT = 86a560f10ec6d85b +PLAINTEXT = ? + +COUNT = 6 +KEY = 0170f175468fb5e6 +CIPHERTEXT = 0cd3da020021dc09 +PLAINTEXT = ? + +COUNT = 7 +KEY = 43297fad38e373fe +CIPHERTEXT = ea676b2cb7db2b7a +PLAINTEXT = ? + +COUNT = 8 +KEY = 07a7137045da2a16 +CIPHERTEXT = dfd64a815caf1a0f +PLAINTEXT = ? + +COUNT = 9 +KEY = 04689104c2fd3b2f +CIPHERTEXT = 5c513c9c4886c088 +PLAINTEXT = ? + +COUNT = 10 +KEY = 37d06bb516cb7546 +CIPHERTEXT = 0a2aeeae3ff4ab77 +PLAINTEXT = ? + +COUNT = 11 +KEY = 1f08260d1ac2465e +CIPHERTEXT = ef1bf03e5dfa575a +PLAINTEXT = ? + +COUNT = 12 +KEY = 584023641aba6176 +CIPHERTEXT = 88bf0db6d70dee56 +PLAINTEXT = ? + +COUNT = 13 +KEY = 025816164629b007 +CIPHERTEXT = a1f9915541020b56 +PLAINTEXT = ? + +COUNT = 14 +KEY = 49793ebc79b3258f +CIPHERTEXT = 6fbf1cafcffd0556 +PLAINTEXT = ? + +COUNT = 15 +KEY = 4fb05e1515ab73a7 +CIPHERTEXT = 2f22e49bab7ca1ac +PLAINTEXT = ? + +COUNT = 16 +KEY = 49e95d6d4ca229bf +CIPHERTEXT = 5a6b612cc26cce4a +PLAINTEXT = ? + +COUNT = 17 +KEY = 018310dc409b26d6 +CIPHERTEXT = 5f4c038ed12b2e41 +PLAINTEXT = ? + +COUNT = 18 +KEY = 1c587f1c13924fef +CIPHERTEXT = 63fac0d034d9f793 +PLAINTEXT = ? diff --git a/fips/testvectors/des/sample/ECBvarkey.sam b/fips/testvectors/des/sample/ECBvarkey.sam new file mode 100644 index 0000000000..2abc1c5c3e --- /dev/null +++ b/fips/testvectors/des/sample/ECBvarkey.sam @@ -0,0 +1,568 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# VARIABLE KEY - KAT for ECB +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 8001010101010101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 1 +KEY = 4001010101010101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 2 +KEY = 2001010101010101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 3 +KEY = 1001010101010101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 4 +KEY = 0801010101010101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 5 +KEY = 0401010101010101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 6 +KEY = 0201010101010101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 7 +KEY = 0180010101010101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 8 +KEY = 0140010101010101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 9 +KEY = 0120010101010101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 10 +KEY = 0110010101010101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 11 +KEY = 0108010101010101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 12 +KEY = 0104010101010101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 13 +KEY = 0102010101010101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 14 +KEY = 0101800101010101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 15 +KEY = 0101400101010101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 16 +KEY = 0101200101010101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 17 +KEY = 0101100101010101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 18 +KEY = 0101080101010101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 19 +KEY = 0101040101010101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 20 +KEY = 0101020101010101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 21 +KEY = 0101018001010101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 22 +KEY = 0101014001010101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 23 +KEY = 0101012001010101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 24 +KEY = 0101011001010101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 25 +KEY = 0101010801010101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 26 +KEY = 0101010401010101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 27 +KEY = 0101010201010101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 28 +KEY = 0101010180010101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 29 +KEY = 0101010140010101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 30 +KEY = 0101010120010101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 31 +KEY = 0101010110010101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 32 +KEY = 0101010108010101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 33 +KEY = 0101010104010101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 34 +KEY = 0101010102010101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 35 +KEY = 0101010101800101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 36 +KEY = 0101010101400101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 37 +KEY = 0101010101200101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 38 +KEY = 0101010101100101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 39 +KEY = 0101010101080101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 40 +KEY = 0101010101040101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 41 +KEY = 0101010101020101 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 42 +KEY = 0101010101018001 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 43 +KEY = 0101010101014001 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 44 +KEY = 0101010101012001 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 45 +KEY = 0101010101011001 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 46 +KEY = 0101010101010801 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 47 +KEY = 0101010101010401 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 48 +KEY = 0101010101010201 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 49 +KEY = 0101010101010180 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 50 +KEY = 0101010101010140 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 51 +KEY = 0101010101010120 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 52 +KEY = 0101010101010110 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 53 +KEY = 0101010101010108 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 54 +KEY = 0101010101010104 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 55 +KEY = 0101010101010102 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + + +[DECRYPT] +COUNT = 0 +KEY = 8001010101010101 +CIPHERTEXT = 95a8d72813daa94d +PLAINTEXT = ? + +COUNT = 1 +KEY = 4001010101010101 +CIPHERTEXT = 0eec1487dd8c26d5 +PLAINTEXT = ? + +COUNT = 2 +KEY = 2001010101010101 +CIPHERTEXT = 7ad16ffb79c45926 +PLAINTEXT = ? + +COUNT = 3 +KEY = 1001010101010101 +CIPHERTEXT = d3746294ca6a6cf3 +PLAINTEXT = ? + +COUNT = 4 +KEY = 0801010101010101 +CIPHERTEXT = 809f5f873c1fd761 +PLAINTEXT = ? + +COUNT = 5 +KEY = 0401010101010101 +CIPHERTEXT = c02faffec989d1fc +PLAINTEXT = ? + +COUNT = 6 +KEY = 0201010101010101 +CIPHERTEXT = 4615aa1d33e72f10 +PLAINTEXT = ? + +COUNT = 7 +KEY = 0180010101010101 +CIPHERTEXT = 2055123350c00858 +PLAINTEXT = ? + +COUNT = 8 +KEY = 0140010101010101 +CIPHERTEXT = df3b99d6577397c8 +PLAINTEXT = ? + +COUNT = 9 +KEY = 0120010101010101 +CIPHERTEXT = 31fe17369b5288c9 +PLAINTEXT = ? + +COUNT = 10 +KEY = 0110010101010101 +CIPHERTEXT = dfdd3cc64dae1642 +PLAINTEXT = ? + +COUNT = 11 +KEY = 0108010101010101 +CIPHERTEXT = 178c83ce2b399d94 +PLAINTEXT = ? + +COUNT = 12 +KEY = 0104010101010101 +CIPHERTEXT = 50f636324a9b7f80 +PLAINTEXT = ? + +COUNT = 13 +KEY = 0102010101010101 +CIPHERTEXT = a8468ee3bc18f06d +PLAINTEXT = ? + +COUNT = 14 +KEY = 0101800101010101 +CIPHERTEXT = a2dc9e92fd3cde92 +PLAINTEXT = ? + +COUNT = 15 +KEY = 0101400101010101 +CIPHERTEXT = cac09f797d031287 +PLAINTEXT = ? + +COUNT = 16 +KEY = 0101200101010101 +CIPHERTEXT = 90ba680b22aeb525 +PLAINTEXT = ? + +COUNT = 17 +KEY = 0101100101010101 +CIPHERTEXT = ce7a24f350e280b6 +PLAINTEXT = ? + +COUNT = 18 +KEY = 0101080101010101 +CIPHERTEXT = 882bff0aa01a0b87 +PLAINTEXT = ? + +COUNT = 19 +KEY = 0101040101010101 +CIPHERTEXT = 25610288924511c2 +PLAINTEXT = ? + +COUNT = 20 +KEY = 0101020101010101 +CIPHERTEXT = c71516c29c75d170 +PLAINTEXT = ? + +COUNT = 21 +KEY = 0101018001010101 +CIPHERTEXT = 5199c29a52c9f059 +PLAINTEXT = ? + +COUNT = 22 +KEY = 0101014001010101 +CIPHERTEXT = c22f0a294a71f29f +PLAINTEXT = ? + +COUNT = 23 +KEY = 0101012001010101 +CIPHERTEXT = ee371483714c02ea +PLAINTEXT = ? + +COUNT = 24 +KEY = 0101011001010101 +CIPHERTEXT = a81fbd448f9e522f +PLAINTEXT = ? + +COUNT = 25 +KEY = 0101010801010101 +CIPHERTEXT = 4f644c92e192dfed +PLAINTEXT = ? + +COUNT = 26 +KEY = 0101010401010101 +CIPHERTEXT = 1afa9a66a6df92ae +PLAINTEXT = ? + +COUNT = 27 +KEY = 0101010201010101 +CIPHERTEXT = b3c1cc715cb879d8 +PLAINTEXT = ? + +COUNT = 28 +KEY = 0101010180010101 +CIPHERTEXT = 19d032e64ab0bd8b +PLAINTEXT = ? + +COUNT = 29 +KEY = 0101010140010101 +CIPHERTEXT = 3cfaa7a7dc8720dc +PLAINTEXT = ? + +COUNT = 30 +KEY = 0101010120010101 +CIPHERTEXT = b7265f7f447ac6f3 +PLAINTEXT = ? + +COUNT = 31 +KEY = 0101010110010101 +CIPHERTEXT = 9db73b3c0d163f54 +PLAINTEXT = ? + +COUNT = 32 +KEY = 0101010108010101 +CIPHERTEXT = 8181b65babf4a975 +PLAINTEXT = ? + +COUNT = 33 +KEY = 0101010104010101 +CIPHERTEXT = 93c9b64042eaa240 +PLAINTEXT = ? + +COUNT = 34 +KEY = 0101010102010101 +CIPHERTEXT = 5570530829705592 +PLAINTEXT = ? + +COUNT = 35 +KEY = 0101010101800101 +CIPHERTEXT = 8638809e878787a0 +PLAINTEXT = ? + +COUNT = 36 +KEY = 0101010101400101 +CIPHERTEXT = 41b9a79af79ac208 +PLAINTEXT = ? + +COUNT = 37 +KEY = 0101010101200101 +CIPHERTEXT = 7a9be42f2009a892 +PLAINTEXT = ? + +COUNT = 38 +KEY = 0101010101100101 +CIPHERTEXT = 29038d56ba6d2745 +PLAINTEXT = ? + +COUNT = 39 +KEY = 0101010101080101 +CIPHERTEXT = 5495c6abf1e5df51 +PLAINTEXT = ? + +COUNT = 40 +KEY = 0101010101040101 +CIPHERTEXT = ae13dbd561488933 +PLAINTEXT = ? + +COUNT = 41 +KEY = 0101010101020101 +CIPHERTEXT = 024d1ffa8904e389 +PLAINTEXT = ? + +COUNT = 42 +KEY = 0101010101018001 +CIPHERTEXT = d1399712f99bf02e +PLAINTEXT = ? + +COUNT = 43 +KEY = 0101010101014001 +CIPHERTEXT = 14c1d7c1cffec79e +PLAINTEXT = ? + +COUNT = 44 +KEY = 0101010101012001 +CIPHERTEXT = 1de5279dae3bed6f +PLAINTEXT = ? + +COUNT = 45 +KEY = 0101010101011001 +CIPHERTEXT = e941a33f85501303 +PLAINTEXT = ? + +COUNT = 46 +KEY = 0101010101010801 +CIPHERTEXT = da99dbbc9a03f379 +PLAINTEXT = ? + +COUNT = 47 +KEY = 0101010101010401 +CIPHERTEXT = b7fc92f91d8e92e9 +PLAINTEXT = ? + +COUNT = 48 +KEY = 0101010101010201 +CIPHERTEXT = ae8e5caa3ca04e85 +PLAINTEXT = ? + +COUNT = 49 +KEY = 0101010101010180 +CIPHERTEXT = 9cc62df43b6eed74 +PLAINTEXT = ? + +COUNT = 50 +KEY = 0101010101010140 +CIPHERTEXT = d863dbb5c59a91a0 +PLAINTEXT = ? + +COUNT = 51 +KEY = 0101010101010120 +CIPHERTEXT = a1ab2190545b91d7 +PLAINTEXT = ? + +COUNT = 52 +KEY = 0101010101010110 +CIPHERTEXT = 0875041e64c570f7 +PLAINTEXT = ? + +COUNT = 53 +KEY = 0101010101010108 +CIPHERTEXT = 5a594528bebef1cc +PLAINTEXT = ? + +COUNT = 54 +KEY = 0101010101010104 +CIPHERTEXT = fcdb3291de21f0c0 +PLAINTEXT = ? + +COUNT = 55 +KEY = 0101010101010102 +CIPHERTEXT = 869efd7f9f265a09 +PLAINTEXT = ? diff --git a/fips/testvectors/des/sample/ECBvartext.sam b/fips/testvectors/des/sample/ECBvartext.sam new file mode 100644 index 0000000000..c8f8ab2028 --- /dev/null +++ b/fips/testvectors/des/sample/ECBvartext.sam @@ -0,0 +1,648 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# VARIABLE PLAINTEXT/CIPHERTEXT - KAT for ECB +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:51 PM + +[ENCRYPT] +COUNT = 0 +KEY = 0101010101010101 +PLAINTEXT = 8000000000000000 +CIPHERTEXT = ? + +COUNT = 1 +KEY = 0101010101010101 +PLAINTEXT = 4000000000000000 +CIPHERTEXT = ? + +COUNT = 2 +KEY = 0101010101010101 +PLAINTEXT = 2000000000000000 +CIPHERTEXT = ? + +COUNT = 3 +KEY = 0101010101010101 +PLAINTEXT = 1000000000000000 +CIPHERTEXT = ? + +COUNT = 4 +KEY = 0101010101010101 +PLAINTEXT = 0800000000000000 +CIPHERTEXT = ? + +COUNT = 5 +KEY = 0101010101010101 +PLAINTEXT = 0400000000000000 +CIPHERTEXT = ? + +COUNT = 6 +KEY = 0101010101010101 +PLAINTEXT = 0200000000000000 +CIPHERTEXT = ? + +COUNT = 7 +KEY = 0101010101010101 +PLAINTEXT = 0100000000000000 +CIPHERTEXT = ? + +COUNT = 8 +KEY = 0101010101010101 +PLAINTEXT = 0080000000000000 +CIPHERTEXT = ? + +COUNT = 9 +KEY = 0101010101010101 +PLAINTEXT = 0040000000000000 +CIPHERTEXT = ? + +COUNT = 10 +KEY = 0101010101010101 +PLAINTEXT = 0020000000000000 +CIPHERTEXT = ? + +COUNT = 11 +KEY = 0101010101010101 +PLAINTEXT = 0010000000000000 +CIPHERTEXT = ? + +COUNT = 12 +KEY = 0101010101010101 +PLAINTEXT = 0008000000000000 +CIPHERTEXT = ? + +COUNT = 13 +KEY = 0101010101010101 +PLAINTEXT = 0004000000000000 +CIPHERTEXT = ? + +COUNT = 14 +KEY = 0101010101010101 +PLAINTEXT = 0002000000000000 +CIPHERTEXT = ? + +COUNT = 15 +KEY = 0101010101010101 +PLAINTEXT = 0001000000000000 +CIPHERTEXT = ? + +COUNT = 16 +KEY = 0101010101010101 +PLAINTEXT = 0000800000000000 +CIPHERTEXT = ? + +COUNT = 17 +KEY = 0101010101010101 +PLAINTEXT = 0000400000000000 +CIPHERTEXT = ? + +COUNT = 18 +KEY = 0101010101010101 +PLAINTEXT = 0000200000000000 +CIPHERTEXT = ? + +COUNT = 19 +KEY = 0101010101010101 +PLAINTEXT = 0000100000000000 +CIPHERTEXT = ? + +COUNT = 20 +KEY = 0101010101010101 +PLAINTEXT = 0000080000000000 +CIPHERTEXT = ? + +COUNT = 21 +KEY = 0101010101010101 +PLAINTEXT = 0000040000000000 +CIPHERTEXT = ? + +COUNT = 22 +KEY = 0101010101010101 +PLAINTEXT = 0000020000000000 +CIPHERTEXT = ? + +COUNT = 23 +KEY = 0101010101010101 +PLAINTEXT = 0000010000000000 +CIPHERTEXT = ? + +COUNT = 24 +KEY = 0101010101010101 +PLAINTEXT = 0000008000000000 +CIPHERTEXT = ? + +COUNT = 25 +KEY = 0101010101010101 +PLAINTEXT = 0000004000000000 +CIPHERTEXT = ? + +COUNT = 26 +KEY = 0101010101010101 +PLAINTEXT = 0000002000000000 +CIPHERTEXT = ? + +COUNT = 27 +KEY = 0101010101010101 +PLAINTEXT = 0000001000000000 +CIPHERTEXT = ? + +COUNT = 28 +KEY = 0101010101010101 +PLAINTEXT = 0000000800000000 +CIPHERTEXT = ? + +COUNT = 29 +KEY = 0101010101010101 +PLAINTEXT = 0000000400000000 +CIPHERTEXT = ? + +COUNT = 30 +KEY = 0101010101010101 +PLAINTEXT = 0000000200000000 +CIPHERTEXT = ? + +COUNT = 31 +KEY = 0101010101010101 +PLAINTEXT = 0000000100000000 +CIPHERTEXT = ? + +COUNT = 32 +KEY = 0101010101010101 +PLAINTEXT = 0000000080000000 +CIPHERTEXT = ? + +COUNT = 33 +KEY = 0101010101010101 +PLAINTEXT = 0000000040000000 +CIPHERTEXT = ? + +COUNT = 34 +KEY = 0101010101010101 +PLAINTEXT = 0000000020000000 +CIPHERTEXT = ? + +COUNT = 35 +KEY = 0101010101010101 +PLAINTEXT = 0000000010000000 +CIPHERTEXT = ? + +COUNT = 36 +KEY = 0101010101010101 +PLAINTEXT = 0000000008000000 +CIPHERTEXT = ? + +COUNT = 37 +KEY = 0101010101010101 +PLAINTEXT = 0000000004000000 +CIPHERTEXT = ? + +COUNT = 38 +KEY = 0101010101010101 +PLAINTEXT = 0000000002000000 +CIPHERTEXT = ? + +COUNT = 39 +KEY = 0101010101010101 +PLAINTEXT = 0000000001000000 +CIPHERTEXT = ? + +COUNT = 40 +KEY = 0101010101010101 +PLAINTEXT = 0000000000800000 +CIPHERTEXT = ? + +COUNT = 41 +KEY = 0101010101010101 +PLAINTEXT = 0000000000400000 +CIPHERTEXT = ? + +COUNT = 42 +KEY = 0101010101010101 +PLAINTEXT = 0000000000200000 +CIPHERTEXT = ? + +COUNT = 43 +KEY = 0101010101010101 +PLAINTEXT = 0000000000100000 +CIPHERTEXT = ? + +COUNT = 44 +KEY = 0101010101010101 +PLAINTEXT = 0000000000080000 +CIPHERTEXT = ? + +COUNT = 45 +KEY = 0101010101010101 +PLAINTEXT = 0000000000040000 +CIPHERTEXT = ? + +COUNT = 46 +KEY = 0101010101010101 +PLAINTEXT = 0000000000020000 +CIPHERTEXT = ? + +COUNT = 47 +KEY = 0101010101010101 +PLAINTEXT = 0000000000010000 +CIPHERTEXT = ? + +COUNT = 48 +KEY = 0101010101010101 +PLAINTEXT = 0000000000008000 +CIPHERTEXT = ? + +COUNT = 49 +KEY = 0101010101010101 +PLAINTEXT = 0000000000004000 +CIPHERTEXT = ? + +COUNT = 50 +KEY = 0101010101010101 +PLAINTEXT = 0000000000002000 +CIPHERTEXT = ? + +COUNT = 51 +KEY = 0101010101010101 +PLAINTEXT = 0000000000001000 +CIPHERTEXT = ? + +COUNT = 52 +KEY = 0101010101010101 +PLAINTEXT = 0000000000000800 +CIPHERTEXT = ? + +COUNT = 53 +KEY = 0101010101010101 +PLAINTEXT = 0000000000000400 +CIPHERTEXT = ? + +COUNT = 54 +KEY = 0101010101010101 +PLAINTEXT = 0000000000000200 +CIPHERTEXT = ? + +COUNT = 55 +KEY = 0101010101010101 +PLAINTEXT = 0000000000000100 +CIPHERTEXT = ? + +COUNT = 56 +KEY = 0101010101010101 +PLAINTEXT = 0000000000000080 +CIPHERTEXT = ? + +COUNT = 57 +KEY = 0101010101010101 +PLAINTEXT = 0000000000000040 +CIPHERTEXT = ? + +COUNT = 58 +KEY = 0101010101010101 +PLAINTEXT = 0000000000000020 +CIPHERTEXT = ? + +COUNT = 59 +KEY = 0101010101010101 +PLAINTEXT = 0000000000000010 +CIPHERTEXT = ? + +COUNT = 60 +KEY = 0101010101010101 +PLAINTEXT = 0000000000000008 +CIPHERTEXT = ? + +COUNT = 61 +KEY = 0101010101010101 +PLAINTEXT = 0000000000000004 +CIPHERTEXT = ? + +COUNT = 62 +KEY = 0101010101010101 +PLAINTEXT = 0000000000000002 +CIPHERTEXT = ? + +COUNT = 63 +KEY = 0101010101010101 +PLAINTEXT = 0000000000000001 +CIPHERTEXT = ? + + +[DECRYPT] +COUNT = 0 +KEY = 0101010101010101 +CIPHERTEXT = 95f8a5e5dd31d900 +PLAINTEXT = ? + +COUNT = 1 +KEY = 0101010101010101 +CIPHERTEXT = dd7f121ca5015619 +PLAINTEXT = ? + +COUNT = 2 +KEY = 0101010101010101 +CIPHERTEXT = 2e8653104f3834ea +PLAINTEXT = ? + +COUNT = 3 +KEY = 0101010101010101 +CIPHERTEXT = 4bd388ff6cd81d4f +PLAINTEXT = ? + +COUNT = 4 +KEY = 0101010101010101 +CIPHERTEXT = 20b9e767b2fb1456 +PLAINTEXT = ? + +COUNT = 5 +KEY = 0101010101010101 +CIPHERTEXT = 55579380d77138ef +PLAINTEXT = ? + +COUNT = 6 +KEY = 0101010101010101 +CIPHERTEXT = 6cc5defaaf04512f +PLAINTEXT = ? + +COUNT = 7 +KEY = 0101010101010101 +CIPHERTEXT = 0d9f279ba5d87260 +PLAINTEXT = ? + +COUNT = 8 +KEY = 0101010101010101 +CIPHERTEXT = d9031b0271bd5a0a +PLAINTEXT = ? + +COUNT = 9 +KEY = 0101010101010101 +CIPHERTEXT = 424250b37c3dd951 +PLAINTEXT = ? + +COUNT = 10 +KEY = 0101010101010101 +CIPHERTEXT = b8061b7ecd9a21e5 +PLAINTEXT = ? + +COUNT = 11 +KEY = 0101010101010101 +CIPHERTEXT = f15d0f286b65bd28 +PLAINTEXT = ? + +COUNT = 12 +KEY = 0101010101010101 +CIPHERTEXT = add0cc8d6e5deba1 +PLAINTEXT = ? + +COUNT = 13 +KEY = 0101010101010101 +CIPHERTEXT = e6d5f82752ad63d1 +PLAINTEXT = ? + +COUNT = 14 +KEY = 0101010101010101 +CIPHERTEXT = ecbfe3bd3f591a5e +PLAINTEXT = ? + +COUNT = 15 +KEY = 0101010101010101 +CIPHERTEXT = f356834379d165cd +PLAINTEXT = ? + +COUNT = 16 +KEY = 0101010101010101 +CIPHERTEXT = 2b9f982f20037fa9 +PLAINTEXT = ? + +COUNT = 17 +KEY = 0101010101010101 +CIPHERTEXT = 889de068a16f0be6 +PLAINTEXT = ? + +COUNT = 18 +KEY = 0101010101010101 +CIPHERTEXT = e19e275d846a1298 +PLAINTEXT = ? + +COUNT = 19 +KEY = 0101010101010101 +CIPHERTEXT = 329a8ed523d71aec +PLAINTEXT = ? + +COUNT = 20 +KEY = 0101010101010101 +CIPHERTEXT = e7fce22557d23c97 +PLAINTEXT = ? + +COUNT = 21 +KEY = 0101010101010101 +CIPHERTEXT = 12a9f5817ff2d65d +PLAINTEXT = ? + +COUNT = 22 +KEY = 0101010101010101 +CIPHERTEXT = a484c3ad38dc9c19 +PLAINTEXT = ? + +COUNT = 23 +KEY = 0101010101010101 +CIPHERTEXT = fbe00a8a1ef8ad72 +PLAINTEXT = ? + +COUNT = 24 +KEY = 0101010101010101 +CIPHERTEXT = 750d079407521363 +PLAINTEXT = ? + +COUNT = 25 +KEY = 0101010101010101 +CIPHERTEXT = 64feed9c724c2faf +PLAINTEXT = ? + +COUNT = 26 +KEY = 0101010101010101 +CIPHERTEXT = f02b263b328e2b60 +PLAINTEXT = ? + +COUNT = 27 +KEY = 0101010101010101 +CIPHERTEXT = 9d64555a9a10b852 +PLAINTEXT = ? + +COUNT = 28 +KEY = 0101010101010101 +CIPHERTEXT = d106ff0bed5255d7 +PLAINTEXT = ? + +COUNT = 29 +KEY = 0101010101010101 +CIPHERTEXT = e1652c6b138c64a5 +PLAINTEXT = ? + +COUNT = 30 +KEY = 0101010101010101 +CIPHERTEXT = e428581186ec8f46 +PLAINTEXT = ? + +COUNT = 31 +KEY = 0101010101010101 +CIPHERTEXT = aeb5f5ede22d1a36 +PLAINTEXT = ? + +COUNT = 32 +KEY = 0101010101010101 +CIPHERTEXT = e943d7568aec0c5c +PLAINTEXT = ? + +COUNT = 33 +KEY = 0101010101010101 +CIPHERTEXT = df98c8276f54b04b +PLAINTEXT = ? + +COUNT = 34 +KEY = 0101010101010101 +CIPHERTEXT = b160e4680f6c696f +PLAINTEXT = ? + +COUNT = 35 +KEY = 0101010101010101 +CIPHERTEXT = fa0752b07d9c4ab8 +PLAINTEXT = ? + +COUNT = 36 +KEY = 0101010101010101 +CIPHERTEXT = ca3a2b036dbc8502 +PLAINTEXT = ? + +COUNT = 37 +KEY = 0101010101010101 +CIPHERTEXT = 5e0905517bb59bcf +PLAINTEXT = ? + +COUNT = 38 +KEY = 0101010101010101 +CIPHERTEXT = 814eeb3b91d90726 +PLAINTEXT = ? + +COUNT = 39 +KEY = 0101010101010101 +CIPHERTEXT = 4d49db1532919c9f +PLAINTEXT = ? + +COUNT = 40 +KEY = 0101010101010101 +CIPHERTEXT = 25eb5fc3f8cf0621 +PLAINTEXT = ? + +COUNT = 41 +KEY = 0101010101010101 +CIPHERTEXT = ab6a20c0620d1c6f +PLAINTEXT = ? + +COUNT = 42 +KEY = 0101010101010101 +CIPHERTEXT = 79e90dbc98f92cca +PLAINTEXT = ? + +COUNT = 43 +KEY = 0101010101010101 +CIPHERTEXT = 866ecedd8072bb0e +PLAINTEXT = ? + +COUNT = 44 +KEY = 0101010101010101 +CIPHERTEXT = 8b54536f2f3e64a8 +PLAINTEXT = ? + +COUNT = 45 +KEY = 0101010101010101 +CIPHERTEXT = ea51d3975595b86b +PLAINTEXT = ? + +COUNT = 46 +KEY = 0101010101010101 +CIPHERTEXT = caffc6ac4542de31 +PLAINTEXT = ? + +COUNT = 47 +KEY = 0101010101010101 +CIPHERTEXT = 8dd45a2ddf90796c +PLAINTEXT = ? + +COUNT = 48 +KEY = 0101010101010101 +CIPHERTEXT = 1029d55e880ec2d0 +PLAINTEXT = ? + +COUNT = 49 +KEY = 0101010101010101 +CIPHERTEXT = 5d86cb23639dbea9 +PLAINTEXT = ? + +COUNT = 50 +KEY = 0101010101010101 +CIPHERTEXT = 1d1ca853ae7c0c5f +PLAINTEXT = ? + +COUNT = 51 +KEY = 0101010101010101 +CIPHERTEXT = ce332329248f3228 +PLAINTEXT = ? + +COUNT = 52 +KEY = 0101010101010101 +CIPHERTEXT = 8405d1abe24fb942 +PLAINTEXT = ? + +COUNT = 53 +KEY = 0101010101010101 +CIPHERTEXT = e643d78090ca4207 +PLAINTEXT = ? + +COUNT = 54 +KEY = 0101010101010101 +CIPHERTEXT = 48221b9937748a23 +PLAINTEXT = ? + +COUNT = 55 +KEY = 0101010101010101 +CIPHERTEXT = dd7c0bbd61fafd54 +PLAINTEXT = ? + +COUNT = 56 +KEY = 0101010101010101 +CIPHERTEXT = 2fbc291a570db5c4 +PLAINTEXT = ? + +COUNT = 57 +KEY = 0101010101010101 +CIPHERTEXT = e07c30d7e4e26e12 +PLAINTEXT = ? + +COUNT = 58 +KEY = 0101010101010101 +CIPHERTEXT = 0953e2258e8e90a1 +PLAINTEXT = ? + +COUNT = 59 +KEY = 0101010101010101 +CIPHERTEXT = 5b711bc4ceebf2ee +PLAINTEXT = ? + +COUNT = 60 +KEY = 0101010101010101 +CIPHERTEXT = cc083f1e6d9e85f6 +PLAINTEXT = ? + +COUNT = 61 +KEY = 0101010101010101 +CIPHERTEXT = d2fd8867d50d2dfe +PLAINTEXT = ? + +COUNT = 62 +KEY = 0101010101010101 +CIPHERTEXT = 06e7ea22ce92708f +PLAINTEXT = ? + +COUNT = 63 +KEY = 0101010101010101 +CIPHERTEXT = 166b40b44aba4bd6 +PLAINTEXT = ? diff --git a/fips/testvectors/des/sample/OFBMMT.sam b/fips/testvectors/des/sample/OFBMMT.sam new file mode 100644 index 0000000000..ab2f6c89cf --- /dev/null +++ b/fips/testvectors/des/sample/OFBMMT.sam @@ -0,0 +1,46 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# DES Multi Block Message Test for OFB +# State : Encrypt and Decrypt +# Tue Jun 24 03:14:06 PM + +[ENCRYPT] + +COUNT = 0 +KEY = 6198d0bcad68895d +IV1 = 4114cb436ee58ab1 +PLAINTEXT = ac40e545e9a3b240 +CIPHERTEXT = 5dd8de7915fd6ffd + +COUNT = 1 +KEY = cde97acdb58ad54a +IV1 = 00cb37f85a32dfac +PLAINTEXT = 76a31e9898b9a3f01bd9927baebe4481 +CIPHERTEXT = b06d54cdaa4a2d36b2726befd6732eab + +COUNT = 2 +KEY = 04e0022cec1cb525 +IV1 = 268890da0ac177b4 +PLAINTEXT = 88aa03eacd0f7ad27442ab26fc57a4d279a0c3c8dddc1ae0 +CIPHERTEXT = efc71cd6a9ddb710abb8178ef09ac59d5bf38f9776f2ac36 + +[DECRYPT] + +COUNT = 0 +KEY = d38a43264c98efea +IV1 = 66a9aea46526037f +CIPHERTEXT = 044296a2d8d9dee2 +PLAINTEXT = e6d05f68e54cab54 + +COUNT = 1 +KEY = cdfdd5867680011a +IV1 = 2c1405661b22871b +CIPHERTEXT = 6106eb2a560689b8b70762dc7b6d57c7 +PLAINTEXT = d3f7f7c70785d3955f5afb77616f5eb9 + +COUNT = 2 +KEY = 58d389f14515ea8c +IV1 = ec5f0fd52e94bf1c +CIPHERTEXT = bf0226a0784d2543e82f28809b15b750f6e2fcc31a3ec9f2 +PLAINTEXT = a39a79036b7e8047cc34663716987d329b4a1bc397074ff6 + diff --git a/fips/testvectors/des/sample/OFBMonte.sam b/fips/testvectors/des/sample/OFBMonte.sam new file mode 100644 index 0000000000..213bc8552d --- /dev/null +++ b/fips/testvectors/des/sample/OFBMonte.sam @@ -0,0 +1,58 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# DES Monte Carlo (Modes) Test for OFB +# State : Encrypt and Decrypt +# Tue Jun 24 03:14:06 PM + +[ENCRYPT] + +COUNT = 0 +KEY = 04fee5ea234f3b51 +IV = a8766778cda73cff +PLAINTEXT = 176e051c37f6f7e9 +CIPHERTEXT = a61f28d44467a261 + +COUNT = 1 +KEY = a2e0cd3e67299831 +IV = 2bc206d1277d04c1 +PLAINTEXT = f5c8047302d22e88 +CIPHERTEXT = a47d3e533d16e261 + +COUNT = 2 +KEY = 079df26d5b3e7a51 +IV = fc6accb1cf42608a +PLAINTEXT = d5e28aafd24d2955 +CIPHERTEXT = 101db75f42f22032 + +COUNT = 3 +KEY = 1680453219cd5b62 +IV = 6e28fc7d640bc842 +PLAINTEXT = 9dc20d70d455c82a +CIPHERTEXT = 79746cda84976b1d + +[DECRYPT] + +COUNT = 0 +KEY = 2551b0cdef9726d9 +IV = fdce6ffeea89f87b +CIPHERTEXT = 726b7e7e4a2f8e7b +PLAINTEXT = 4ea749b0ce29bfe9 + +COUNT = 1 +KEY = 6bf7f87c20bf9831 +IV = 5ca35cfe9d321fee +CIPHERTEXT = 0bcdf75a668c21dc +PLAINTEXT = 8280e8d0f7cc6e33 + +COUNT = 2 +KEY = e97610add673f702 +IV = 32020a2c042c3dad +CIPHERTEXT = b05b45e5e17e6646 +PLAINTEXT = 6d65f9155c0a6ff9 + +COUNT = 3 +KEY = 8513e9b98a7998fb +IV = bf3d16fe6f489c62 +CIPHERTEXT = bc995bcd402748b2 +PLAINTEXT = 2cba6c200e7ec1fa + diff --git a/fips/testvectors/des/sample/OFBinvperm.sam b/fips/testvectors/des/sample/OFBinvperm.sam new file mode 100644 index 0000000000..8bf87e8ad6 --- /dev/null +++ b/fips/testvectors/des/sample/OFBinvperm.sam @@ -0,0 +1,776 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# INVERSE PERMUTATION - KAT for OFB +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:52 PM + +[ENCRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 8000000000000000 +PLAINTEXT = 95f8a5e5dd31d900 +CIPHERTEXT = ? + +COUNT = 1 +KEY = 0101010101010101 +IV = 4000000000000000 +PLAINTEXT = dd7f121ca5015619 +CIPHERTEXT = ? + +COUNT = 2 +KEY = 0101010101010101 +IV = 2000000000000000 +PLAINTEXT = 2e8653104f3834ea +CIPHERTEXT = ? + +COUNT = 3 +KEY = 0101010101010101 +IV = 1000000000000000 +PLAINTEXT = 4bd388ff6cd81d4f +CIPHERTEXT = ? + +COUNT = 4 +KEY = 0101010101010101 +IV = 0800000000000000 +PLAINTEXT = 20b9e767b2fb1456 +CIPHERTEXT = ? + +COUNT = 5 +KEY = 0101010101010101 +IV = 0400000000000000 +PLAINTEXT = 55579380d77138ef +CIPHERTEXT = ? + +COUNT = 6 +KEY = 0101010101010101 +IV = 0200000000000000 +PLAINTEXT = 6cc5defaaf04512f +CIPHERTEXT = ? + +COUNT = 7 +KEY = 0101010101010101 +IV = 0100000000000000 +PLAINTEXT = 0d9f279ba5d87260 +CIPHERTEXT = ? + +COUNT = 8 +KEY = 0101010101010101 +IV = 0080000000000000 +PLAINTEXT = d9031b0271bd5a0a +CIPHERTEXT = ? + +COUNT = 9 +KEY = 0101010101010101 +IV = 0040000000000000 +PLAINTEXT = 424250b37c3dd951 +CIPHERTEXT = ? + +COUNT = 10 +KEY = 0101010101010101 +IV = 0020000000000000 +PLAINTEXT = b8061b7ecd9a21e5 +CIPHERTEXT = ? + +COUNT = 11 +KEY = 0101010101010101 +IV = 0010000000000000 +PLAINTEXT = f15d0f286b65bd28 +CIPHERTEXT = ? + +COUNT = 12 +KEY = 0101010101010101 +IV = 0008000000000000 +PLAINTEXT = add0cc8d6e5deba1 +CIPHERTEXT = ? + +COUNT = 13 +KEY = 0101010101010101 +IV = 0004000000000000 +PLAINTEXT = e6d5f82752ad63d1 +CIPHERTEXT = ? + +COUNT = 14 +KEY = 0101010101010101 +IV = 0002000000000000 +PLAINTEXT = ecbfe3bd3f591a5e +CIPHERTEXT = ? + +COUNT = 15 +KEY = 0101010101010101 +IV = 0001000000000000 +PLAINTEXT = f356834379d165cd +CIPHERTEXT = ? + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000800000000000 +PLAINTEXT = 2b9f982f20037fa9 +CIPHERTEXT = ? + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000400000000000 +PLAINTEXT = 889de068a16f0be6 +CIPHERTEXT = ? + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000200000000000 +PLAINTEXT = e19e275d846a1298 +CIPHERTEXT = ? + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000100000000000 +PLAINTEXT = 329a8ed523d71aec +CIPHERTEXT = ? + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000080000000000 +PLAINTEXT = e7fce22557d23c97 +CIPHERTEXT = ? + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000040000000000 +PLAINTEXT = 12a9f5817ff2d65d +CIPHERTEXT = ? + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000020000000000 +PLAINTEXT = a484c3ad38dc9c19 +CIPHERTEXT = ? + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000010000000000 +PLAINTEXT = fbe00a8a1ef8ad72 +CIPHERTEXT = ? + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000008000000000 +PLAINTEXT = 750d079407521363 +CIPHERTEXT = ? + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000004000000000 +PLAINTEXT = 64feed9c724c2faf +CIPHERTEXT = ? + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000002000000000 +PLAINTEXT = f02b263b328e2b60 +CIPHERTEXT = ? + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000001000000000 +PLAINTEXT = 9d64555a9a10b852 +CIPHERTEXT = ? + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000800000000 +PLAINTEXT = d106ff0bed5255d7 +CIPHERTEXT = ? + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000400000000 +PLAINTEXT = e1652c6b138c64a5 +CIPHERTEXT = ? + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000200000000 +PLAINTEXT = e428581186ec8f46 +CIPHERTEXT = ? + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000100000000 +PLAINTEXT = aeb5f5ede22d1a36 +CIPHERTEXT = ? + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000080000000 +PLAINTEXT = e943d7568aec0c5c +CIPHERTEXT = ? + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000040000000 +PLAINTEXT = df98c8276f54b04b +CIPHERTEXT = ? + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000020000000 +PLAINTEXT = b160e4680f6c696f +CIPHERTEXT = ? + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000010000000 +PLAINTEXT = fa0752b07d9c4ab8 +CIPHERTEXT = ? + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000008000000 +PLAINTEXT = ca3a2b036dbc8502 +CIPHERTEXT = ? + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000004000000 +PLAINTEXT = 5e0905517bb59bcf +CIPHERTEXT = ? + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000002000000 +PLAINTEXT = 814eeb3b91d90726 +CIPHERTEXT = ? + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000001000000 +PLAINTEXT = 4d49db1532919c9f +CIPHERTEXT = ? + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000800000 +PLAINTEXT = 25eb5fc3f8cf0621 +CIPHERTEXT = ? + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000400000 +PLAINTEXT = ab6a20c0620d1c6f +CIPHERTEXT = ? + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000200000 +PLAINTEXT = 79e90dbc98f92cca +CIPHERTEXT = ? + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000100000 +PLAINTEXT = 866ecedd8072bb0e +CIPHERTEXT = ? + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000080000 +PLAINTEXT = 8b54536f2f3e64a8 +CIPHERTEXT = ? + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000040000 +PLAINTEXT = ea51d3975595b86b +CIPHERTEXT = ? + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000020000 +PLAINTEXT = caffc6ac4542de31 +CIPHERTEXT = ? + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000010000 +PLAINTEXT = 8dd45a2ddf90796c +CIPHERTEXT = ? + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000008000 +PLAINTEXT = 1029d55e880ec2d0 +CIPHERTEXT = ? + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000004000 +PLAINTEXT = 5d86cb23639dbea9 +CIPHERTEXT = ? + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000002000 +PLAINTEXT = 1d1ca853ae7c0c5f +CIPHERTEXT = ? + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000001000 +PLAINTEXT = ce332329248f3228 +CIPHERTEXT = ? + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000800 +PLAINTEXT = 8405d1abe24fb942 +CIPHERTEXT = ? + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000400 +PLAINTEXT = e643d78090ca4207 +CIPHERTEXT = ? + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000200 +PLAINTEXT = 48221b9937748a23 +CIPHERTEXT = ? + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000100 +PLAINTEXT = dd7c0bbd61fafd54 +CIPHERTEXT = ? + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000080 +PLAINTEXT = 2fbc291a570db5c4 +CIPHERTEXT = ? + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000040 +PLAINTEXT = e07c30d7e4e26e12 +CIPHERTEXT = ? + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000020 +PLAINTEXT = 0953e2258e8e90a1 +CIPHERTEXT = ? + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000010 +PLAINTEXT = 5b711bc4ceebf2ee +CIPHERTEXT = ? + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000008 +PLAINTEXT = cc083f1e6d9e85f6 +CIPHERTEXT = ? + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000004 +PLAINTEXT = d2fd8867d50d2dfe +CIPHERTEXT = ? + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000002 +PLAINTEXT = 06e7ea22ce92708f +CIPHERTEXT = ? + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000001 +PLAINTEXT = 166b40b44aba4bd6 +CIPHERTEXT = ? + + +[DECRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 8000000000000000 +CIPHERTEXT = 95f8a5e5dd31d900 +PLAINTEXT = ? + +COUNT = 1 +KEY = 0101010101010101 +IV = 4000000000000000 +CIPHERTEXT = dd7f121ca5015619 +PLAINTEXT = ? + +COUNT = 2 +KEY = 0101010101010101 +IV = 2000000000000000 +CIPHERTEXT = 2e8653104f3834ea +PLAINTEXT = ? + +COUNT = 3 +KEY = 0101010101010101 +IV = 1000000000000000 +CIPHERTEXT = 4bd388ff6cd81d4f +PLAINTEXT = ? + +COUNT = 4 +KEY = 0101010101010101 +IV = 0800000000000000 +CIPHERTEXT = 20b9e767b2fb1456 +PLAINTEXT = ? + +COUNT = 5 +KEY = 0101010101010101 +IV = 0400000000000000 +CIPHERTEXT = 55579380d77138ef +PLAINTEXT = ? + +COUNT = 6 +KEY = 0101010101010101 +IV = 0200000000000000 +CIPHERTEXT = 6cc5defaaf04512f +PLAINTEXT = ? + +COUNT = 7 +KEY = 0101010101010101 +IV = 0100000000000000 +CIPHERTEXT = 0d9f279ba5d87260 +PLAINTEXT = ? + +COUNT = 8 +KEY = 0101010101010101 +IV = 0080000000000000 +CIPHERTEXT = d9031b0271bd5a0a +PLAINTEXT = ? + +COUNT = 9 +KEY = 0101010101010101 +IV = 0040000000000000 +CIPHERTEXT = 424250b37c3dd951 +PLAINTEXT = ? + +COUNT = 10 +KEY = 0101010101010101 +IV = 0020000000000000 +CIPHERTEXT = b8061b7ecd9a21e5 +PLAINTEXT = ? + +COUNT = 11 +KEY = 0101010101010101 +IV = 0010000000000000 +CIPHERTEXT = f15d0f286b65bd28 +PLAINTEXT = ? + +COUNT = 12 +KEY = 0101010101010101 +IV = 0008000000000000 +CIPHERTEXT = add0cc8d6e5deba1 +PLAINTEXT = ? + +COUNT = 13 +KEY = 0101010101010101 +IV = 0004000000000000 +CIPHERTEXT = e6d5f82752ad63d1 +PLAINTEXT = ? + +COUNT = 14 +KEY = 0101010101010101 +IV = 0002000000000000 +CIPHERTEXT = ecbfe3bd3f591a5e +PLAINTEXT = ? + +COUNT = 15 +KEY = 0101010101010101 +IV = 0001000000000000 +CIPHERTEXT = f356834379d165cd +PLAINTEXT = ? + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000800000000000 +CIPHERTEXT = 2b9f982f20037fa9 +PLAINTEXT = ? + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000400000000000 +CIPHERTEXT = 889de068a16f0be6 +PLAINTEXT = ? + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000200000000000 +CIPHERTEXT = e19e275d846a1298 +PLAINTEXT = ? + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000100000000000 +CIPHERTEXT = 329a8ed523d71aec +PLAINTEXT = ? + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000080000000000 +CIPHERTEXT = e7fce22557d23c97 +PLAINTEXT = ? + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000040000000000 +CIPHERTEXT = 12a9f5817ff2d65d +PLAINTEXT = ? + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000020000000000 +CIPHERTEXT = a484c3ad38dc9c19 +PLAINTEXT = ? + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000010000000000 +CIPHERTEXT = fbe00a8a1ef8ad72 +PLAINTEXT = ? + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000008000000000 +CIPHERTEXT = 750d079407521363 +PLAINTEXT = ? + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000004000000000 +CIPHERTEXT = 64feed9c724c2faf +PLAINTEXT = ? + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000002000000000 +CIPHERTEXT = f02b263b328e2b60 +PLAINTEXT = ? + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000001000000000 +CIPHERTEXT = 9d64555a9a10b852 +PLAINTEXT = ? + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000800000000 +CIPHERTEXT = d106ff0bed5255d7 +PLAINTEXT = ? + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000400000000 +CIPHERTEXT = e1652c6b138c64a5 +PLAINTEXT = ? + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000200000000 +CIPHERTEXT = e428581186ec8f46 +PLAINTEXT = ? + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000100000000 +CIPHERTEXT = aeb5f5ede22d1a36 +PLAINTEXT = ? + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000080000000 +CIPHERTEXT = e943d7568aec0c5c +PLAINTEXT = ? + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000040000000 +CIPHERTEXT = df98c8276f54b04b +PLAINTEXT = ? + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000020000000 +CIPHERTEXT = b160e4680f6c696f +PLAINTEXT = ? + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000010000000 +CIPHERTEXT = fa0752b07d9c4ab8 +PLAINTEXT = ? + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000008000000 +CIPHERTEXT = ca3a2b036dbc8502 +PLAINTEXT = ? + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000004000000 +CIPHERTEXT = 5e0905517bb59bcf +PLAINTEXT = ? + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000002000000 +CIPHERTEXT = 814eeb3b91d90726 +PLAINTEXT = ? + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000001000000 +CIPHERTEXT = 4d49db1532919c9f +PLAINTEXT = ? + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000800000 +CIPHERTEXT = 25eb5fc3f8cf0621 +PLAINTEXT = ? + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000400000 +CIPHERTEXT = ab6a20c0620d1c6f +PLAINTEXT = ? + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000200000 +CIPHERTEXT = 79e90dbc98f92cca +PLAINTEXT = ? + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000100000 +CIPHERTEXT = 866ecedd8072bb0e +PLAINTEXT = ? + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000080000 +CIPHERTEXT = 8b54536f2f3e64a8 +PLAINTEXT = ? + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000040000 +CIPHERTEXT = ea51d3975595b86b +PLAINTEXT = ? + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000020000 +CIPHERTEXT = caffc6ac4542de31 +PLAINTEXT = ? + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000010000 +CIPHERTEXT = 8dd45a2ddf90796c +PLAINTEXT = ? + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000008000 +CIPHERTEXT = 1029d55e880ec2d0 +PLAINTEXT = ? + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000004000 +CIPHERTEXT = 5d86cb23639dbea9 +PLAINTEXT = ? + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000002000 +CIPHERTEXT = 1d1ca853ae7c0c5f +PLAINTEXT = ? + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000001000 +CIPHERTEXT = ce332329248f3228 +PLAINTEXT = ? + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000800 +CIPHERTEXT = 8405d1abe24fb942 +PLAINTEXT = ? + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000400 +CIPHERTEXT = e643d78090ca4207 +PLAINTEXT = ? + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000200 +CIPHERTEXT = 48221b9937748a23 +PLAINTEXT = ? + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000100 +CIPHERTEXT = dd7c0bbd61fafd54 +PLAINTEXT = ? + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000080 +CIPHERTEXT = 2fbc291a570db5c4 +PLAINTEXT = ? + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000040 +CIPHERTEXT = e07c30d7e4e26e12 +PLAINTEXT = ? + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000020 +CIPHERTEXT = 0953e2258e8e90a1 +PLAINTEXT = ? + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000010 +CIPHERTEXT = 5b711bc4ceebf2ee +PLAINTEXT = ? + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000008 +CIPHERTEXT = cc083f1e6d9e85f6 +PLAINTEXT = ? + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000004 +CIPHERTEXT = d2fd8867d50d2dfe +PLAINTEXT = ? + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000002 +CIPHERTEXT = 06e7ea22ce92708f +PLAINTEXT = ? + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000001 +CIPHERTEXT = 166b40b44aba4bd6 +PLAINTEXT = ? diff --git a/fips/testvectors/des/sample/OFBpermop.sam b/fips/testvectors/des/sample/OFBpermop.sam new file mode 100644 index 0000000000..b20bd4fe11 --- /dev/null +++ b/fips/testvectors/des/sample/OFBpermop.sam @@ -0,0 +1,392 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# PERMUTATION OPERATION - KAT for OFB +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:52 PM + +[ENCRYPT] +COUNT = 0 +KEY = 1046913489980131 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 1 +KEY = 1007103489988020 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 2 +KEY = 10071034c8980120 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 3 +KEY = 1046103489988020 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 4 +KEY = 1086911519190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 5 +KEY = 1086911519580101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 6 +KEY = 5107b01519580101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 7 +KEY = 1007b01519190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 8 +KEY = 3107915498080101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 9 +KEY = 3107919498080101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 10 +KEY = 10079115b9080140 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 11 +KEY = 3107911598080140 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 12 +KEY = 1007d01589980101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 13 +KEY = 9107911589980101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 14 +KEY = 9107d01589190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 15 +KEY = 1007d01598980120 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 16 +KEY = 1007940498190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 17 +KEY = 0107910491190401 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 18 +KEY = 0107910491190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 19 +KEY = 0107940491190401 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 20 +KEY = 19079210981a0101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 21 +KEY = 1007911998190801 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 22 +KEY = 10079119981a0801 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 23 +KEY = 1007921098190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 24 +KEY = 100791159819010b +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 25 +KEY = 1004801598190101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 26 +KEY = 1004801598190102 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 27 +KEY = 1004801598190108 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 28 +KEY = 1002911598100104 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 29 +KEY = 1002911598190104 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 30 +KEY = 1002911598100201 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 31 +KEY = 1002911698100101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + + +[DECRYPT] +COUNT = 0 +KEY = 1046913489980131 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 1 +KEY = 1007103489988020 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 2 +KEY = 10071034c8980120 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 3 +KEY = 1046103489988020 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 4 +KEY = 1086911519190101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 5 +KEY = 1086911519580101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 6 +KEY = 5107b01519580101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 7 +KEY = 1007b01519190101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 8 +KEY = 3107915498080101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 9 +KEY = 3107919498080101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 10 +KEY = 10079115b9080140 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 11 +KEY = 3107911598080140 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 12 +KEY = 1007d01589980101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 13 +KEY = 9107911589980101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 14 +KEY = 9107d01589190101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 15 +KEY = 1007d01598980120 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 16 +KEY = 1007940498190101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 17 +KEY = 0107910491190401 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 18 +KEY = 0107910491190101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 19 +KEY = 0107940491190401 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 20 +KEY = 19079210981a0101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 21 +KEY = 1007911998190801 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 22 +KEY = 10079119981a0801 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 23 +KEY = 1007921098190101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 24 +KEY = 100791159819010b +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 25 +KEY = 1004801598190101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 26 +KEY = 1004801598190102 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 27 +KEY = 1004801598190108 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 28 +KEY = 1002911598100104 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 29 +KEY = 1002911598190104 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 30 +KEY = 1002911598100201 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 31 +KEY = 1002911698100101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? diff --git a/fips/testvectors/des/sample/OFBsubtab.sam b/fips/testvectors/des/sample/OFBsubtab.sam new file mode 100644 index 0000000000..8cc31a4cff --- /dev/null +++ b/fips/testvectors/des/sample/OFBsubtab.sam @@ -0,0 +1,236 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# SUBSTITUTION TABLE - KAT for OFB +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:52 PM + +[ENCRYPT] +COUNT = 0 +KEY = 7ca110454a1a6e57 +IV = 01a1d6d039776742 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 1 +KEY = 0131d9619dc1376e +IV = 5cd54ca83def57da +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 2 +KEY = 07a1133e4a0b2686 +IV = 0248d43806f67172 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 3 +KEY = 3849674c2602319e +IV = 51454b582ddf440a +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 4 +KEY = 04b915ba43feb5b6 +IV = 42fd443059577fa2 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 5 +KEY = 0113b970fd34f2ce +IV = 059b5e0851cf143a +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 6 +KEY = 0170f175468fb5e6 +IV = 0756d8e0774761d2 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 7 +KEY = 43297fad38e373fe +IV = 762514b829bf486a +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 8 +KEY = 07a7137045da2a16 +IV = 3bdd119049372802 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 9 +KEY = 04689104c2fd3b2f +IV = 26955f6835af609a +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 10 +KEY = 37d06bb516cb7546 +IV = 164d5e404f275232 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 11 +KEY = 1f08260d1ac2465e +IV = 6b056e18759f5cca +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 12 +KEY = 584023641aba6176 +IV = 004bd6ef09176062 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 13 +KEY = 025816164629b007 +IV = 480d39006ee762f2 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 14 +KEY = 49793ebc79b3258f +IV = 437540c8698f3cfa +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 15 +KEY = 4fb05e1515ab73a7 +IV = 072d43a077075292 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 16 +KEY = 49e95d6d4ca229bf +IV = 02fe55778117f12a +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 17 +KEY = 018310dc409b26d6 +IV = 1d9d5c5018f728c2 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 18 +KEY = 1c587f1c13924fef +IV = 305532286d6f295a +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + + +[DECRYPT] +COUNT = 0 +KEY = 7ca110454a1a6e57 +IV = 01a1d6d039776742 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 1 +KEY = 0131d9619dc1376e +IV = 5cd54ca83def57da +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 2 +KEY = 07a1133e4a0b2686 +IV = 0248d43806f67172 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 3 +KEY = 3849674c2602319e +IV = 51454b582ddf440a +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 4 +KEY = 04b915ba43feb5b6 +IV = 42fd443059577fa2 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 5 +KEY = 0113b970fd34f2ce +IV = 059b5e0851cf143a +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 6 +KEY = 0170f175468fb5e6 +IV = 0756d8e0774761d2 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 7 +KEY = 43297fad38e373fe +IV = 762514b829bf486a +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 8 +KEY = 07a7137045da2a16 +IV = 3bdd119049372802 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 9 +KEY = 04689104c2fd3b2f +IV = 26955f6835af609a +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 10 +KEY = 37d06bb516cb7546 +IV = 164d5e404f275232 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 11 +KEY = 1f08260d1ac2465e +IV = 6b056e18759f5cca +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 12 +KEY = 584023641aba6176 +IV = 004bd6ef09176062 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 13 +KEY = 025816164629b007 +IV = 480d39006ee762f2 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 14 +KEY = 49793ebc79b3258f +IV = 437540c8698f3cfa +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 15 +KEY = 4fb05e1515ab73a7 +IV = 072d43a077075292 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 16 +KEY = 49e95d6d4ca229bf +IV = 02fe55778117f12a +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 17 +KEY = 018310dc409b26d6 +IV = 1d9d5c5018f728c2 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 18 +KEY = 1c587f1c13924fef +IV = 305532286d6f295a +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? diff --git a/fips/testvectors/des/sample/OFBvarkey.sam b/fips/testvectors/des/sample/OFBvarkey.sam new file mode 100644 index 0000000000..12e3464d94 --- /dev/null +++ b/fips/testvectors/des/sample/OFBvarkey.sam @@ -0,0 +1,680 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# VARIABLE KEY - KAT for OFB +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:52 PM + +[ENCRYPT] +COUNT = 0 +KEY = 8001010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 1 +KEY = 4001010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 2 +KEY = 2001010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 3 +KEY = 1001010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 4 +KEY = 0801010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 5 +KEY = 0401010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 6 +KEY = 0201010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 7 +KEY = 0180010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 8 +KEY = 0140010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 9 +KEY = 0120010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 10 +KEY = 0110010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 11 +KEY = 0108010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 12 +KEY = 0104010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 13 +KEY = 0102010101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 14 +KEY = 0101800101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 15 +KEY = 0101400101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 16 +KEY = 0101200101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 17 +KEY = 0101100101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 18 +KEY = 0101080101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 19 +KEY = 0101040101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 20 +KEY = 0101020101010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 21 +KEY = 0101018001010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 22 +KEY = 0101014001010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 23 +KEY = 0101012001010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 24 +KEY = 0101011001010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 25 +KEY = 0101010801010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 26 +KEY = 0101010401010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 27 +KEY = 0101010201010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 28 +KEY = 0101010180010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 29 +KEY = 0101010140010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 30 +KEY = 0101010120010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 31 +KEY = 0101010110010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 32 +KEY = 0101010108010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 33 +KEY = 0101010104010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 34 +KEY = 0101010102010101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 35 +KEY = 0101010101800101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 36 +KEY = 0101010101400101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 37 +KEY = 0101010101200101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 38 +KEY = 0101010101100101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 39 +KEY = 0101010101080101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 40 +KEY = 0101010101040101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 41 +KEY = 0101010101020101 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 42 +KEY = 0101010101018001 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 43 +KEY = 0101010101014001 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 44 +KEY = 0101010101012001 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 45 +KEY = 0101010101011001 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 46 +KEY = 0101010101010801 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 47 +KEY = 0101010101010401 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 48 +KEY = 0101010101010201 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 49 +KEY = 0101010101010180 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 50 +KEY = 0101010101010140 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 51 +KEY = 0101010101010120 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 52 +KEY = 0101010101010110 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 53 +KEY = 0101010101010108 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 54 +KEY = 0101010101010104 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 55 +KEY = 0101010101010102 +IV = 0000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + + +[DECRYPT] +COUNT = 0 +KEY = 8001010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 1 +KEY = 4001010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 2 +KEY = 2001010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 3 +KEY = 1001010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 4 +KEY = 0801010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 5 +KEY = 0401010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 6 +KEY = 0201010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 7 +KEY = 0180010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 8 +KEY = 0140010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 9 +KEY = 0120010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 10 +KEY = 0110010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 11 +KEY = 0108010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 12 +KEY = 0104010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 13 +KEY = 0102010101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 14 +KEY = 0101800101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 15 +KEY = 0101400101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 16 +KEY = 0101200101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 17 +KEY = 0101100101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 18 +KEY = 0101080101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 19 +KEY = 0101040101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 20 +KEY = 0101020101010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 21 +KEY = 0101018001010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 22 +KEY = 0101014001010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 23 +KEY = 0101012001010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 24 +KEY = 0101011001010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 25 +KEY = 0101010801010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 26 +KEY = 0101010401010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 27 +KEY = 0101010201010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 28 +KEY = 0101010180010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 29 +KEY = 0101010140010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 30 +KEY = 0101010120010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 31 +KEY = 0101010110010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 32 +KEY = 0101010108010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 33 +KEY = 0101010104010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 34 +KEY = 0101010102010101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 35 +KEY = 0101010101800101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 36 +KEY = 0101010101400101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 37 +KEY = 0101010101200101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 38 +KEY = 0101010101100101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 39 +KEY = 0101010101080101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 40 +KEY = 0101010101040101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 41 +KEY = 0101010101020101 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 42 +KEY = 0101010101018001 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 43 +KEY = 0101010101014001 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 44 +KEY = 0101010101012001 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 45 +KEY = 0101010101011001 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 46 +KEY = 0101010101010801 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 47 +KEY = 0101010101010401 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 48 +KEY = 0101010101010201 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 49 +KEY = 0101010101010180 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 50 +KEY = 0101010101010140 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 51 +KEY = 0101010101010120 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 52 +KEY = 0101010101010110 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 53 +KEY = 0101010101010108 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 54 +KEY = 0101010101010104 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 55 +KEY = 0101010101010102 +IV = 0000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? diff --git a/fips/testvectors/des/sample/OFBvartext.sam b/fips/testvectors/des/sample/OFBvartext.sam new file mode 100644 index 0000000000..8ea95f9a15 --- /dev/null +++ b/fips/testvectors/des/sample/OFBvartext.sam @@ -0,0 +1,776 @@ +# CAVS 2.0 +# Config Info for : "OpenSSL_DES" +# VARIABLE PLAINTEXT/CIPHERTEXT - KAT for OFB +# State : Encrypt and Decrypt +# Tue Jun 24 03:11:52 PM + +[ENCRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 8000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 1 +KEY = 0101010101010101 +IV = 4000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 2 +KEY = 0101010101010101 +IV = 2000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 3 +KEY = 0101010101010101 +IV = 1000000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 4 +KEY = 0101010101010101 +IV = 0800000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 5 +KEY = 0101010101010101 +IV = 0400000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 6 +KEY = 0101010101010101 +IV = 0200000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 7 +KEY = 0101010101010101 +IV = 0100000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 8 +KEY = 0101010101010101 +IV = 0080000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 9 +KEY = 0101010101010101 +IV = 0040000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 10 +KEY = 0101010101010101 +IV = 0020000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 11 +KEY = 0101010101010101 +IV = 0010000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 12 +KEY = 0101010101010101 +IV = 0008000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 13 +KEY = 0101010101010101 +IV = 0004000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 14 +KEY = 0101010101010101 +IV = 0002000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 15 +KEY = 0101010101010101 +IV = 0001000000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000800000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000400000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000200000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000100000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000080000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000040000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000020000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000010000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000008000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000004000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000002000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000001000000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000800000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000400000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000200000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000100000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000080000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000040000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000020000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000010000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000008000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000004000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000002000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000001000000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000800000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000400000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000200000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000100000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000080000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000040000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000020000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000010000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000008000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000004000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000002000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000001000 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000800 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000400 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000200 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000100 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000080 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000040 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000020 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000010 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000008 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000004 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000002 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000001 +PLAINTEXT = 0000000000000000 +CIPHERTEXT = ? + + +[DECRYPT] +COUNT = 0 +KEY = 0101010101010101 +IV = 8000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 1 +KEY = 0101010101010101 +IV = 4000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 2 +KEY = 0101010101010101 +IV = 2000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 3 +KEY = 0101010101010101 +IV = 1000000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 4 +KEY = 0101010101010101 +IV = 0800000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 5 +KEY = 0101010101010101 +IV = 0400000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 6 +KEY = 0101010101010101 +IV = 0200000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 7 +KEY = 0101010101010101 +IV = 0100000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 8 +KEY = 0101010101010101 +IV = 0080000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 9 +KEY = 0101010101010101 +IV = 0040000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 10 +KEY = 0101010101010101 +IV = 0020000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 11 +KEY = 0101010101010101 +IV = 0010000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 12 +KEY = 0101010101010101 +IV = 0008000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 13 +KEY = 0101010101010101 +IV = 0004000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 14 +KEY = 0101010101010101 +IV = 0002000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 15 +KEY = 0101010101010101 +IV = 0001000000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 16 +KEY = 0101010101010101 +IV = 0000800000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 17 +KEY = 0101010101010101 +IV = 0000400000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 18 +KEY = 0101010101010101 +IV = 0000200000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 19 +KEY = 0101010101010101 +IV = 0000100000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 20 +KEY = 0101010101010101 +IV = 0000080000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 21 +KEY = 0101010101010101 +IV = 0000040000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 22 +KEY = 0101010101010101 +IV = 0000020000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 23 +KEY = 0101010101010101 +IV = 0000010000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 24 +KEY = 0101010101010101 +IV = 0000008000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 25 +KEY = 0101010101010101 +IV = 0000004000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 26 +KEY = 0101010101010101 +IV = 0000002000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 27 +KEY = 0101010101010101 +IV = 0000001000000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 28 +KEY = 0101010101010101 +IV = 0000000800000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 29 +KEY = 0101010101010101 +IV = 0000000400000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 30 +KEY = 0101010101010101 +IV = 0000000200000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 31 +KEY = 0101010101010101 +IV = 0000000100000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 32 +KEY = 0101010101010101 +IV = 0000000080000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 33 +KEY = 0101010101010101 +IV = 0000000040000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 34 +KEY = 0101010101010101 +IV = 0000000020000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 35 +KEY = 0101010101010101 +IV = 0000000010000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 36 +KEY = 0101010101010101 +IV = 0000000008000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 37 +KEY = 0101010101010101 +IV = 0000000004000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 38 +KEY = 0101010101010101 +IV = 0000000002000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 39 +KEY = 0101010101010101 +IV = 0000000001000000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 40 +KEY = 0101010101010101 +IV = 0000000000800000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 41 +KEY = 0101010101010101 +IV = 0000000000400000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 42 +KEY = 0101010101010101 +IV = 0000000000200000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 43 +KEY = 0101010101010101 +IV = 0000000000100000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 44 +KEY = 0101010101010101 +IV = 0000000000080000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 45 +KEY = 0101010101010101 +IV = 0000000000040000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 46 +KEY = 0101010101010101 +IV = 0000000000020000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 47 +KEY = 0101010101010101 +IV = 0000000000010000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 48 +KEY = 0101010101010101 +IV = 0000000000008000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 49 +KEY = 0101010101010101 +IV = 0000000000004000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 50 +KEY = 0101010101010101 +IV = 0000000000002000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 51 +KEY = 0101010101010101 +IV = 0000000000001000 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 52 +KEY = 0101010101010101 +IV = 0000000000000800 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 53 +KEY = 0101010101010101 +IV = 0000000000000400 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 54 +KEY = 0101010101010101 +IV = 0000000000000200 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 55 +KEY = 0101010101010101 +IV = 0000000000000100 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 56 +KEY = 0101010101010101 +IV = 0000000000000080 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 57 +KEY = 0101010101010101 +IV = 0000000000000040 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 58 +KEY = 0101010101010101 +IV = 0000000000000020 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 59 +KEY = 0101010101010101 +IV = 0000000000000010 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 60 +KEY = 0101010101010101 +IV = 0000000000000008 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 61 +KEY = 0101010101010101 +IV = 0000000000000004 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 62 +KEY = 0101010101010101 +IV = 0000000000000002 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? + +COUNT = 63 +KEY = 0101010101010101 +IV = 0000000000000001 +CIPHERTEXT = 0000000000000000 +PLAINTEXT = ? -- 2.25.1